[wpimath] Make Rotation2d member initialization order match declaration order #3800
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tools | |
on: [pull_request, push] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
env: | |
YEAR: 2025 | |
jobs: | |
build-artifacts: | |
name: "Build - WPILib" | |
runs-on: ubuntu-22.04 | |
env: | |
DISPLAY: ':10' | |
steps: | |
- name: Free Disk Space | |
uses: jlumbroso/free-disk-space@main | |
with: | |
tool-cache: false | |
android: true | |
dotnet: true | |
haskell: true | |
large-packages: false | |
docker-images: false | |
swap-storage: false | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: gradle/actions/wrapper-validation@v4 | |
- name: Build WPILib with Gradle | |
uses: addnab/docker-run-action@v3 | |
with: | |
image: wpilib/roborio-cross-ubuntu:2025-22.04 | |
options: -v ${{ github.workspace }}:/work -w /work -e GITHUB_REF -e CI -e DISPLAY | |
run: df . && rm -f semicolon_delimited_script && ./gradlew :wpilibc:publish :wpilibj:publish :wpilibNewCommands:publish :hal:publish :cameraserver:publish :ntcore:publish :cscore:publish :wpimath:publish :wpinet:publish :wpiutil:publish :apriltag:publish :wpiunits:publish :simulation:halsim_gui:publish :simulation:halsim_ds_socket:publish :simulation:halsim_ws_server:publish :simulation:halsim_ws_client:publish :simulation:halsim_xrp:publish :fieldImages:publish :romiVendordep:publish :xrpVendordep:publish :epilogue-processor:publish :epilogue-runtime:publish :thirdparty:googletest:publish -x test -x Javadoc -x doxygen --build-cache && cp -r /root/releases/maven/development /work | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: MavenArtifacts | |
path: | | |
development | |
retention-days: 1 | |
Robotbuilder: | |
name: "Build - RobotBuilder" | |
needs: [build-artifacts] | |
runs-on: ubuntu-22.04 | |
env: | |
DISPLAY: ':10' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
repository: wpilibsuite/robotbuilder | |
fetch-depth: 0 | |
- uses: actions/download-artifact@v4 | |
with: | |
name: MavenArtifacts | |
- name: Patch RobotBuilder to use local development | |
run: cd src/main/resources/export && echo "wpi.maven.useLocal = false" >> java/build.gradle && echo "wpi.maven.useFrcMavenLocalDevelopment = true" >> java/build.gradle && echo "wpi.versions.wpilibVersion = '$YEAR.424242.+'" >> java/build.gradle && echo "wpi.versions.wpimathVersion = '$YEAR.424242.+'" >> java/build.gradle && echo "wpi.maven.useLocal = false" >> cpp/build.gradle && echo "wpi.maven.useFrcMavenLocalDevelopment = true" >> cpp/build.gradle && echo "wpi.versions.wpilibVersion = '$YEAR.424242.+'" >> cpp/build.gradle && echo "wpi.versions.wpimathVersion = '$YEAR.424242.+'" >> cpp/build.gradle | |
- name: Install and run xvfb | |
run: sudo apt-get update && sudo apt-get install -y xvfb && Xvfb $DISPLAY & | |
- name: Move artifacts | |
run: mkdir -p ~/releases/maven/development && cp -r edu ~/releases/maven/development | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
- name: Build RobotBuilder with Gradle | |
run: ./gradlew build test --tests 'robotbuilder.exporters.*' -x htmlSanityCheck -PbuildServer -PreleaseMode ; cat build/test-results/test/TEST-robotbuilder.exporters.*.xml ; | |
- name: Summarize RobotBuilder Test Results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
if: always() | |
with: | |
files: | | |
build/test-results/test/TEST*.xml | |
check_run: false | |
comment_mode: off | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: RobotBuilderTestResults | |
path: | | |
build/reports/ | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: RobotBuilder Build | |
path: | | |
build/libs/ | |
retention-days: 7 | |
Shuffleboard: | |
name: "Build - Shuffleboard" | |
needs: [build-artifacts] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
repository: wpilibsuite/shuffleboard | |
fetch-depth: 0 | |
- name: Patch Shuffleboard to use local development | |
run: sed -i "s/wpilibTools.deps.wpilibVersion.*/wpilibTools.deps.wpilibVersion = \'$YEAR\.424242\.+\'/" app/app.gradle && sed -i "s/wpilibTools.deps.wpilibVersion.*/wpilibTools.deps.wpilibVersion = \'$YEAR\.424242\.+\'/" plugins/cameraserver/cameraserver.gradle && sed -i "s/wpilibTools.deps.wpilibVersion.*/wpilibTools.deps.wpilibVersion = \'$YEAR\.424242\.+\'/" plugins/networktables/networktables.gradle | |
- uses: actions/download-artifact@v4 | |
with: | |
name: MavenArtifacts | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
- name: Move artifacts | |
run: mkdir -p ~/releases/maven/development && cp -r edu ~/releases/maven/development | |
- name: Install dependencies | |
run: sudo apt-get install -y libgtk2.0-0 | |
- name: Build with Gradle | |
run: ./gradlew build -x Javadoc | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: Shuffleboard Build | |
path: | | |
build/allOutputs/ | |
retention-days: 7 | |
PathWeaver: | |
name: "Build - PathWeaver" | |
needs: [build-artifacts] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
repository: wpilibsuite/PathWeaver | |
fetch-depth: 0 | |
- name: Patch PathWeaver to use local development | |
run: sed -i "s/wpilibTools.deps.wpilibVersion.*/wpilibTools.deps.wpilibVersion = \'$YEAR\.424242\.+\'/" dependencies.gradle | |
- uses: actions/download-artifact@v4 | |
with: | |
name: MavenArtifacts | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
- name: Move artifacts | |
run: mkdir -p ~/releases/maven/development && cp -r edu ~/releases/maven/development | |
- name: Build with Gradle | |
run: ./gradlew build | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: PathWeaver Build | |
path: | | |
build/allOutputs/ | |
retention-days: 7 | |
Robotpy: | |
name: "Build - Robotpy" | |
needs: [build-artifacts] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
repository: robotpy/mostrobotpy | |
fetch-depth: 0 | |
- uses: actions/download-artifact@v4 | |
with: | |
name: MavenArtifacts | |
- name: Move artifacts | |
run: mkdir -p ~/releases/maven/development && cp -r edu ~/releases/maven/development | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.13 | |
# | |
# Setup build caching | |
# | |
- name: Set ccache size | |
shell: bash | |
id: ccache | |
run: echo "MAX_SIZE=500M" >> $GITHUB_OUTPUT | |
- name: Setup ccache | |
# uses: hendrikmuhs/[email protected] | |
uses: robotpy/ccache-action@fork | |
with: | |
key: ubuntu-22.04-3.13 | |
variant: ccache | |
max-size: ${{ steps.ccache.outputs.max_size }} | |
- name: Install deps | |
shell: bash | |
run: | | |
python -m pip --disable-pip-version-check install -r rdev_requirements.txt | |
- name: Install numpy (needed for stubgen but broken in raspbian CI) | |
shell: bash | |
run: | | |
python -m pip --disable-pip-version-check install numpy | |
- name: Patch RobotPy rdev to use local development | |
run: git config user.name github-actions && git config user.email [email protected] && set -- ~/releases/maven/development/edu/wpi/first/wpiutil/wpiutil-cpp/*/ ; wpilibversion=$(basename $1) && echo $wpilibversion && sed --regexp-extended -i 's@(wpilib_bin_url =).*@\1 \"file:\/\/'"$HOME"'\/releases\/maven\/development"@' rdev.toml && sed --regexp-extended -i 's/(wpilib_bin_version =).*/\1 \"'"$wpilibversion"'\"/' rdev.toml && ./rdev.sh update-pyproject --commit | |
- name: Build + test wheels | |
shell: bash | |
run: | | |
./rdev.sh ci run | |
env: | |
RPYBUILD_STRIP_LIBPYTHON: "1" | |
RPYBUILD_CC_LAUNCHER: ccache |