Skip to content

Commit

Permalink
add the stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
audreypj committed Nov 21, 2023
1 parent d03a511 commit 2f14bfc
Show file tree
Hide file tree
Showing 35 changed files with 2,402 additions and 0 deletions.
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
*.gradle text eol=lf
*.java text eol=lf
*.md text eol=lf
*.xml text eol=lf
*.json text eol=lf
*.yml text eol=lf
31 changes: 31 additions & 0 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Builds 🔨

on: [push, pull_request]

jobs:
pre_build:
runs-on: ubuntu-latest
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@v5

build:
needs: pre_build
if: needs.pre_build.outputs.should_skip != 'true'

name: gradle
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17
cache: gradle
- name: Build with Gradle
run: ./gradlew build --no-daemon
170 changes: 170 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
# This gitignore has been specially created by the WPILib team.
# If you remove items from this file, intellisense might break.

### C++ ###
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

### Java ###
# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

### Linux ###
*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/wpilib.code-snippets

### Windows ###
# Windows thumbnail cache files
Thumbs.db
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp

# Windows shortcuts
*.lnk

### Gradle ###
.gradle
/build/

# Ignore Gradle GUI config
gradle-app.setting

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar

# Cache of project
.gradletasknamecache

# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898
# gradle/wrapper/gradle-wrapper.properties

# # VS Code Specific Java Settings
# DO NOT REMOVE .classpath and .project
.classpath
.project
.settings/
bin/

# Simulation GUI and other tools window save file
*-window.json

*.snap.debug

# recording of matches
*.mkv

*.mirror.path
7 changes: 7 additions & 0 deletions .pathplanner/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"robotWidth": 0.85,
"robotLength": 0.851,
"holonomicMode": true,
"generateJSON": false,
"generateCSV": false
}
10 changes: 10 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"recommendations": [
"richardwillis.vscode-spotless-gradle",
"wpilibsuite.vscode-wpilib",
"streetsidesoftware.code-spell-checker",
"vscjava.vscode-gradle",
"redhat.java",
"sonarsource.sonarlint-vscode"
]
}
73 changes: 73 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{
"java.format.enabled": false,
"files.trimTrailingWhitespace": false,

"spotlessGradle.format.enable": true,
"spotlessGradle.diagnostics.enable": true,
"editor.defaultFormatter": "richardwillis.vscode-spotless-gradle",
"editor.codeActionsOnSave": {
"source.fixAll.spotlessGradle": true
},

"java.configuration.updateBuildConfiguration": "automatic",
"java.server.launchMode": "Standard",
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"bin/": true,
"**/.classpath": true,
"**/.project": true,
"**/.settings": true,
"**/.factorypath": true,
"**/*~": true
},
"java.test.config": [
{
"name": "WPIlibUnitTests",
"workingDirectory": "${workspaceFolder}/build/jni/release",
"vmargs": ["-Djava.library.path=${workspaceFolder}/build/jni/release"],
"env": {
"LD_LIBRARY_PATH": "${workspaceFolder}/build/jni/release",
"DYLD_LIBRARY_PATH": "${workspaceFolder}/build/jni/release"
}
}
],
"java.test.defaultConfig": "WPIlibUnitTests",
"cSpell.words": [
"AHRS",
"apriltag",
"cancoder",
"Chebyshev",
"CONTROLPOINT",
"Deadband",
"deadbanded",
"drivebase",
"fkirc",
"gradlew",
"Hardstop",
"Holonomic",
"LEDS",
"Mockito",
"navx",
"Odometry",
"oshi",
"pathfinding",
"pathing",
"PATHPLANNER",
"PHOTONVISION",
"POWERCYCLE",
"repath",
"REPATHS",
"setpoint",
"Setpoints",
"teleop",
"teleoperated",
"temurin",
"TRACKWIDTH"
],
"deno.enable": true,
"deno.unstable": true
}
37 changes: 37 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"version": "2.0.0",
"tasks": [
{
"type": "gradle",
"id": "gradlebuild",
"script": "build",
"description": "Assembles and tests this project.",
"group": "test",
"project": "FRC-2023",
"buildFile": "${workspaceFolder}/build.gradle",
"rootProject": "FRC-2023",
"projectFolder": "${workspaceFolder}",
"workspaceFolder": "${workspaceFolder}",
"args": "",
"javaDebug": false,
"problemMatcher": ["$gradle"],
"label": "gradle: build"
},
{
"type": "gradle",
"id": "gradledeploy",
"script": "deploy",
"description": "Deploy all artifacts on all targets",
"group": "build",
"project": "FRC-2023",
"buildFile": "${workspaceFolder}/build.gradle",
"rootProject": "FRC-2023",
"projectFolder": "${workspaceFolder}",
"workspaceFolder": "${workspaceFolder}",
"args": "",
"javaDebug": false,
"problemMatcher": ["$gradle"],
"label": "gradle: deploy"
}
]
}
50 changes: 50 additions & 0 deletions .vscode/wpilib.code-snippets
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
{
// Place your FRC-2023 workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
// Placeholders with the same ids are connected.
// Example:
// "Print to console": {
// "scope": "javascript,typescript",
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
"Constants Block": {
"scope": "java",
"prefix": "block",
"body": ["public static final class $1 {$0}"]
},
"Constant": {
"scope": "java",
"prefix": "const",
"body": ["public static final ${1:int} ${2/(.*)/${1:/upcase}/} = ${3:0};$0"]
},
"This Member": {
"scope": "java",
"prefix": "thisprop",
"body": ["this.$1 = $1;$0"]
},
"TalonFX percent power": {
"scope": "java",
"prefix": "fxper",
"body": ["$1.set(TalonFXControlMode.PercentOutput, $2);$0"]
},
"New subsystem member for robotcontainer": {
"scope": "java",
"prefix": "newsub",
"body": ["private final $1 $2 = new $1();$0"]
},
"verify the setting of a talonfx power in a given control mode": {
"scope": "java",
"prefix": "vfxset",
"body": [
"verify($1, ${2:times(1)}.description(String.format(\"$3\",$4))).set(TalonFXControlMode.${5:PercentOutput}, $6);$0"
]
}
}
Loading

0 comments on commit 2f14bfc

Please sign in to comment.