Skip to content

Commit 9f29450

Browse files
committed
Merge branch 'main' into remove-prefix-suffix
2 parents 59ce4e5 + 962bf7f commit 9f29450

File tree

316 files changed

+4686
-2673
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

316 files changed

+4686
-2673
lines changed

.clang-format

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ AlignConsecutiveMacros:
2828
AcrossComments: false
2929
AlignCompound: false
3030
PadOperators: false
31+
AlignConsecutiveShortCaseStatements:
32+
Enabled: false
33+
AcrossEmptyLines: false
34+
AcrossComments: false
35+
AlignCaseColons: false
3136
AlignEscapedNewlines: Left
3237
AlignOperands: Align
3338
AlignTrailingComments:
@@ -141,6 +146,7 @@ IntegerLiteralSeparator:
141146
JavaScriptQuotes: Leave
142147
JavaScriptWrapImports: true
143148
KeepEmptyLinesAtTheStartOfBlocks: false
149+
KeepEmptyLinesAtEOF: false
144150
LambdaBodyIndentation: Signature
145151
LineEnding: DeriveLF
146152
MacroBlockBegin: ''
@@ -201,6 +207,7 @@ RawStringFormats:
201207
ReferenceAlignment: Pointer
202208
ReflowComments: true
203209
RemoveBracesLLVM: false
210+
RemoveParentheses: Leave
204211
RemoveSemicolon: false
205212
RequiresClausePosition: OwnLine
206213
RequiresExpressionIndentation: OuterScope
@@ -218,6 +225,7 @@ SpaceBeforeCaseColon: false
218225
SpaceBeforeCpp11BracedList: false
219226
SpaceBeforeCtorInitializerColon: true
220227
SpaceBeforeInheritanceColon: true
228+
SpaceBeforeJsonColon: false
221229
SpaceBeforeParens: ControlStatements
222230
SpaceBeforeParensOptions:
223231
AfterControlStatements: true
@@ -232,23 +240,28 @@ SpaceBeforeParensOptions:
232240
SpaceBeforeRangeBasedForLoopColon: true
233241
SpaceBeforeSquareBrackets: false
234242
SpaceInEmptyBlock: false
235-
SpaceInEmptyParentheses: false
236243
SpacesBeforeTrailingComments: 2
237244
SpacesInAngles: Never
238-
SpacesInConditionalStatement: false
239245
SpacesInContainerLiterals: true
240-
SpacesInCStyleCastParentheses: false
241246
SpacesInLineCommentPrefix:
242247
Minimum: 1
243248
Maximum: -1
244-
SpacesInParentheses: false
249+
SpacesInParens: Never
250+
SpacesInParensOptions:
251+
InCStyleCasts: false
252+
InConditionalStatements: false
253+
InEmptyParentheses: false
254+
Other: false
245255
SpacesInSquareBrackets: false
246256
Standard: c++20
257+
StatementAttributeLikeMacros:
258+
- Q_EMIT
247259
StatementMacros:
248260
- Q_UNUSED
249261
- QT_REQUIRE_VERSION
250262
TabWidth: 8
251263
UseTab: Never
264+
VerilogBreakBetweenInstancePorts: true
252265
WhitespaceSensitiveMacros:
253266
- BOOST_PP_STRINGIZE
254267
- CF_SWIFT_NAME

.github/workflows/cmake.yml

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ jobs:
1616
name: Linux
1717
container: wpilib/roborio-cross-ubuntu:2024-22.04
1818
flags: "-DCMAKE_BUILD_TYPE=Release -DWITH_EXAMPLES=ON"
19-
- os: macOS-12
19+
- os: macOS-14
2020
name: macOS
2121
container: ""
22-
env: "PATH=\"/usr/local/opt/protobuf@3/bin:$PATH\""
23-
flags: "-DCMAKE_BUILD_TYPE=Release -DWITH_JAVA=OFF -DWITH_EXAMPLES=ON -DCMAKE_LIBRARY_PATH=/usr/local/opt/protobuf@3/lib -DProtobuf_INCLUDE_DIR=/usr/local/opt/protobuf@3/include -DProtobuf_PROTOC_EXECUTABLE=/usr/local/opt/protobuf@3/bin/protoc"
22+
env: "PATH=\"/opt/homebrew/opt/protobuf@3/bin:$PATH\""
23+
flags: "-DCMAKE_BUILD_TYPE=Release -DWITH_JAVA=OFF -DWITH_EXAMPLES=ON -DCMAKE_LIBRARY_PATH=/opt/homebrew/opt/protobuf@3/lib -DProtobuf_INCLUDE_DIR=/opt/homebrew/opt/protobuf@3/include -DProtobuf_PROTOC_EXECUTABLE=/opt/homebrew/opt/protobuf@3/bin/protoc"
2424

2525
name: "Build - ${{ matrix.name }}"
2626
runs-on: ${{ matrix.os }}
@@ -34,15 +34,15 @@ jobs:
3434
if: runner.os == 'Linux'
3535
run: wget https://github.com/HebiRobotics/QuickBuffers/releases/download/1.3.3/protoc-gen-quickbuf_1.3.3_amd64.deb && sudo apt install ./protoc-gen-quickbuf_1.3.3_amd64.deb
3636

37-
- name: Install opencv (macOS)
37+
- name: Install dependencies (macOS)
3838
run: brew install opencv protobuf@3 ninja
3939
if: runner.os == 'macOS'
4040

41-
- name: Set up Python 3.8 (macOS)
41+
- name: Set up Python 3.10 (macOS)
4242
if: runner.os == 'macOS'
4343
uses: actions/setup-python@v5
4444
with:
45-
python-version: 3.8
45+
python-version: '3.10'
4646

4747
- name: Run sccache-cache
4848
uses: mozilla-actions/[email protected]
@@ -88,28 +88,13 @@ jobs:
8888
uses: lukka/[email protected]
8989
with:
9090
vcpkgDirectory: ${{ runner.workspace }}/vcpkg
91-
vcpkgGitCommitId: 78b61582c9e093fda56a01ebb654be15a0033897 # HEAD on 2023-08-6
91+
vcpkgGitCommitId: 37c3e63a1306562f7f59c4c3c8892ddd50fdf992 # HEAD on 2024-02-24
9292

9393
- name: configure
94-
run: cmake -S . -B build -G "Ninja" -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DCMAKE_BUILD_TYPE=Release -DWITH_JAVA=OFF -DWITH_EXAMPLES=ON -DUSE_SYSTEM_FMTLIB=ON -DUSE_SYSTEM_LIBUV=ON -DUSE_SYSTEM_EIGEN=ON -DCMAKE_TOOLCHAIN_FILE=${{ runner.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_INSTALL_OPTIONS=--clean-after-build -DVCPKG_TARGET_TRIPLET=x64-windows-release -DVCPKG_HOST_TRIPLET=x64-windows-release
94+
run: cmake -S . -B build -G "Ninja" -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DCMAKE_BUILD_TYPE=Release -DWITH_JAVA=OFF -DWITH_EXAMPLES=ON -DUSE_SYSTEM_FMTLIB=ON -DUSE_SYSTEM_LIBUV=ON -DUSE_SYSTEM_EIGEN=OFF -DCMAKE_TOOLCHAIN_FILE=${{ runner.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_INSTALL_OPTIONS=--clean-after-build -DVCPKG_TARGET_TRIPLET=x64-windows-release -DVCPKG_HOST_TRIPLET=x64-windows-release
9595
env:
9696
SCCACHE_GHA_ENABLED: "true"
9797

98-
# Build wpiutil at full speed, wpimath depends on wpiutil
99-
- name: build wpiutil
100-
working-directory: build
101-
run: cmake --build . --parallel $(nproc) --target wpiutil/all
102-
env:
103-
SCCACHE_GHA_ENABLED: "true"
104-
105-
# Build wpimath slow to prevent OOM
106-
- name: build wpimath
107-
working-directory: build
108-
run: cmake --build . --parallel 1 --target wpimath/all
109-
env:
110-
SCCACHE_GHA_ENABLED: "true"
111-
112-
# Build everything else fast
11398
- name: build
11499
working-directory: build
115100
run: cmake --build . --parallel $(nproc)

.github/workflows/comment-command.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,17 @@ jobs:
3333
env:
3434
GITHUB_TOKEN: "${{ secrets.COMMENT_COMMAND_PAT_TOKEN }}"
3535
NUMBER: ${{ github.event.issue.number }}
36-
- name: Set up Python 3.8
36+
- name: Set up Python 3.10
3737
uses: actions/setup-python@v5
3838
with:
39-
python-version: 3.8
39+
python-version: '3.10'
4040
- name: Setup Java
4141
uses: actions/setup-java@v4
4242
with:
4343
distribution: 'zulu'
4444
java-version: 17
4545
- name: Install wpiformat
46-
run: pip3 install wpiformat
46+
run: pip3 install wpiformat==2024.33
4747
- name: Run wpiformat
4848
run: wpiformat
4949
- name: Run spotlessApply

.github/workflows/gradle.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,9 @@ jobs:
9494
task: "copyAllOutputs"
9595
outputs: "build/allOutputs"
9696
build-dir: "c:\\work"
97-
- os: macOS-12
97+
- os: macOS-14
9898
artifact-name: macOS
99-
architecture: x64
99+
architecture: aarch64
100100
task: "build"
101101
outputs: "build/allOutputs"
102102
build-dir: "."

.github/workflows/lint-format.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ jobs:
2222
run: |
2323
git checkout -b pr
2424
git branch -f main origin/main
25-
- name: Set up Python 3.8
25+
- name: Set up Python 3.10
2626
uses: actions/setup-python@v5
2727
with:
28-
python-version: 3.8
28+
python-version: '3.10'
2929
- name: Install wpiformat
30-
run: pip3 install wpiformat==2023.36
30+
run: pip3 install wpiformat==2024.33
3131
- name: Run
3232
run: wpiformat
3333
- name: Check output
@@ -51,7 +51,7 @@ jobs:
5151
tidy:
5252
name: "clang-tidy"
5353
runs-on: ubuntu-22.04
54-
container: wpilib/roborio-cross-ubuntu:2023-22.04
54+
container: wpilib/roborio-cross-ubuntu:2024-22.04
5555
steps:
5656
- uses: actions/checkout@v4
5757
with:
@@ -61,10 +61,10 @@ jobs:
6161
git config --global --add safe.directory /__w/allwpilib/allwpilib
6262
git checkout -b pr
6363
git branch -f main origin/main
64-
- name: Set up Python 3.8
64+
- name: Set up Python 3.10
6565
uses: actions/setup-python@v5
6666
with:
67-
python-version: 3.8
67+
python-version: '3.10'
6868
- name: Install wpiformat
6969
run: pip3 install wpiformat
7070
- name: Create compile_commands.json

.github/workflows/sanitizers.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,13 @@ jobs:
2626
ctest-flags: ""
2727
name: "${{ matrix.name }}"
2828
runs-on: ubuntu-22.04
29-
container: wpilib/roborio-cross-ubuntu:2024-22.04
29+
container:
30+
image: wpilib/roborio-cross-ubuntu:2024-22.04
31+
options: --privileged
3032
steps:
33+
- name: mmap rnd_bits workaround
34+
run: sudo sysctl -w vm.mmap_rnd_bits=28
35+
3136
- name: Install Dependencies
3237
run: sudo apt-get update && sudo apt-get install -y libopencv-dev libopencv4.5-java python-is-python3 clang-14 libprotobuf-dev protobuf-compiler ninja-build
3338

CONTRIBUTING.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ xₖ₊₁ = Axₖ + Buₖ
8080

8181
Changes should be submitted as a Pull Request against the main branch of WPILib. For most changes, commits will be squashed upon merge. For particularly large changes, multiple commits are ok, but assume one commit unless asked otherwise. We may ask you to break a PR into multiple standalone PRs or commits for rebase within one PR to separate unrelated changes. No change will be merged unless it is up to date with the current main branch. We do this to make sure that the git history isn't too cluttered.
8282

83+
During the build season, breaking changes or other changes intended for the next season can be created as a pull request against the development branch of WPILib. After the season is over, the changes in the development branch will be merged into main.
84+
8385
### Merge Process
8486

8587
When you first submit changes, GitHub Actions will attempt to run `./gradlew check` on your change. If this fails, you will need to fix any issues that it sees. Once Actions passes, we will begin the review process in more earnest. One or more WPILib team members will review your change. This will be a back-and-forth process with the WPILib team and the greater community. Once we are satisfied that your change is ready, we will allow our hosted instance to test it. This will run the full gamut of checks, including integration tests on actual hardware. Once all tests have passed and the team is satisfied, we will merge your change into the WPILib repository.

MAINTAINERS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Desktop tools publish to the development repo on every push to main. To publish
1818

1919
## Publishing VS Code
2020
Before publishing, make sure to update the gradlerio version in `vscode-wpilib/resources/gradle/version.txt` Also make sure the gradle wrapper version matches the wrapper required by gradlerio.
21-
Upon pushing a tag, a release will be built, and the files will be uploaded to the releases on GitHub. For publishing to the marketplace, you need a Microsoft account and to be added as a maintainer.
21+
Upon pushing a tag, a release will be built, and the files will be uploaded to the releases on GitHub.
2222

2323
## Publishing GradleRIO
2424
Before publishing, make sure to update the version in build.gradle. Publishing must happen locally, using the command `./gradlew publishPlugin`. This does require your API key for publishing to be set.

0 commit comments

Comments
 (0)