From ac78b8582244d9d0748beaf28b0d279889ae0d2f Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 11:41:16 -0500 Subject: [PATCH 01/18] java 21 --- .github/workflows/main.yml | 5 ++--- build.gradle | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index eb4baaf..5ddfbb7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -41,10 +41,9 @@ jobs: run: git fetch --tags --force - run: git describe --tags - - name: Install Java 17 - uses: actions/setup-java@v5 + - uses: actions/setup-java@v5 with: - java-version: 17 + java-version: 21 distribution: temurin - name: Install deps (Linux) diff --git a/build.gradle b/build.gradle index 4827b2c..abc8755 100644 --- a/build.gradle +++ b/build.gradle @@ -24,8 +24,8 @@ ext { } java { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 } dependencies { From 04a5669197c5f4168ad969eb666879c71560b578 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 11:45:29 -0500 Subject: [PATCH 02/18] org stuff --- build.gradle | 4 ++-- src/main/java/org/photonvision/mrcal/MrCalJNI.java | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index abc8755..9594e6f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ plugins { id "java" - id 'org.photonvision.tools.WpilibTools' version '2.3.1-photon' - id "edu.wpi.first.wpilib.repositories.WPILibRepositoriesPlugin" version "2020.2" + id 'org.photonvision.tools.WpilibTools' version '3.0.0-photon' + id "org.wpilib.WPILibRepositoriesPlugin" version "2027.0.0" id "com.diffplug.spotless" version "8.1.0" } diff --git a/src/main/java/org/photonvision/mrcal/MrCalJNI.java b/src/main/java/org/photonvision/mrcal/MrCalJNI.java index 16dcf40..4d63b00 100644 --- a/src/main/java/org/photonvision/mrcal/MrCalJNI.java +++ b/src/main/java/org/photonvision/mrcal/MrCalJNI.java @@ -17,10 +17,10 @@ package org.photonvision.mrcal; -import edu.wpi.first.math.VecBuilder; -import edu.wpi.first.math.geometry.Pose3d; -import edu.wpi.first.math.geometry.Rotation3d; -import edu.wpi.first.math.geometry.Translation3d; +import org.wpilib.math.VecBuilder; +import org.wpilib.math.geometry.Pose3d; +import org.wpilib.math.geometry.Rotation3d; +import org.wpilib.math.geometry.Translation3d; import java.util.ArrayList; import java.util.Arrays; import java.util.List; From ef689b8beb2f0efa7df81a967c5b8fd03532b354 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 11:59:48 -0500 Subject: [PATCH 03/18] try that --- build.gradle | 1 - 1 file changed, 1 deletion(-) diff --git a/build.gradle b/build.gradle index 9594e6f..5d70224 100644 --- a/build.gradle +++ b/build.gradle @@ -37,7 +37,6 @@ dependencies { implementation wpilibTools.deps.wpilibJava("wpimath") implementation wpilibTools.deps.wpilibJava("wpiunits") - implementation wpilibTools.deps.wpilibJava("wpiutil") implementation "com.fasterxml.jackson.core:jackson-annotations:2.15.2" } From 4823371e97a38ce559a6241c30a65360ec186b11 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:10:50 -0500 Subject: [PATCH 04/18] wheee 2027 repos --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index 5d70224..c83e99c 100644 --- a/build.gradle +++ b/build.gradle @@ -11,6 +11,7 @@ allprojects { mavenLocal() maven { url = "https://maven.photonvision.org/repository/internal/" } } + wpilibRepositories.use2027Repos() wpilibRepositories.addAllReleaseRepositories(it) wpilibRepositories.addAllDevelopmentRepositories(it) } From 149f0df7c9678f6d42a06faf05b95e25cc8f1244 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:14:15 -0500 Subject: [PATCH 05/18] bump gradle versoin --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index d4081da..bad7c24 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME From df5bf7a203eef8c5f4983c206883e5600c4ccabf Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:16:12 -0500 Subject: [PATCH 06/18] grrr, new package --- src/main/java/org/photonvision/mrcal/MrCalJNI.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/photonvision/mrcal/MrCalJNI.java b/src/main/java/org/photonvision/mrcal/MrCalJNI.java index 4d63b00..f04eb75 100644 --- a/src/main/java/org/photonvision/mrcal/MrCalJNI.java +++ b/src/main/java/org/photonvision/mrcal/MrCalJNI.java @@ -17,7 +17,7 @@ package org.photonvision.mrcal; -import org.wpilib.math.VecBuilder; +import org.wpilib.math.linalg.VecBuilder; import org.wpilib.math.geometry.Pose3d; import org.wpilib.math.geometry.Rotation3d; import org.wpilib.math.geometry.Translation3d; From ce1cad50b0b9219e335acb46f6a4fb16d62564df Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:27:59 -0500 Subject: [PATCH 07/18] turns out we needed that --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index c83e99c..0a176c8 100644 --- a/build.gradle +++ b/build.gradle @@ -38,6 +38,7 @@ dependencies { implementation wpilibTools.deps.wpilibJava("wpimath") implementation wpilibTools.deps.wpilibJava("wpiunits") + implementation wpilibTools.deps.wpilibJava("wpiutil") implementation "com.fasterxml.jackson.core:jackson-annotations:2.15.2" } From 911a916d66b45bdf4d487948317e29a43243b56e Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:31:23 -0500 Subject: [PATCH 08/18] lint --- src/main/java/org/photonvision/mrcal/MrCalJNI.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/photonvision/mrcal/MrCalJNI.java b/src/main/java/org/photonvision/mrcal/MrCalJNI.java index f04eb75..f5bd7c8 100644 --- a/src/main/java/org/photonvision/mrcal/MrCalJNI.java +++ b/src/main/java/org/photonvision/mrcal/MrCalJNI.java @@ -17,15 +17,15 @@ package org.photonvision.mrcal; -import org.wpilib.math.linalg.VecBuilder; -import org.wpilib.math.geometry.Pose3d; -import org.wpilib.math.geometry.Rotation3d; -import org.wpilib.math.geometry.Translation3d; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.opencv.core.MatOfFloat; import org.opencv.core.MatOfPoint2f; +import org.wpilib.math.geometry.Pose3d; +import org.wpilib.math.geometry.Rotation3d; +import org.wpilib.math.geometry.Translation3d; +import org.wpilib.math.linalg.VecBuilder; public class MrCalJNI { public static enum CameraLensModel { From b3d37a699f82eed288b0e96b96d63c89c6b6a2e0 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:34:43 -0500 Subject: [PATCH 09/18] update upload-artifact version --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5ddfbb7..c3bac02 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -75,7 +75,7 @@ jobs: ARTIFACTORY_API_KEY: ${{ secrets.ARTIFACTORY_API_KEY }} if: github.event_name == 'push' - - uses: actions/upload-artifact@v5 + - uses: actions/upload-artifact@v7 with: name: libmrcal-jar-${{ matrix.arch-name }} path: ${{ github.workspace }}/build/libs/*.jar From 850eb9286d4085ae8456d5cd804e3d7b38288d25 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:52:35 -0500 Subject: [PATCH 10/18] publish on tags --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c3bac02..b496341 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -73,7 +73,7 @@ jobs: name: Publish env: ARTIFACTORY_API_KEY: ${{ secrets.ARTIFACTORY_API_KEY }} - if: github.event_name == 'push' + if: github.event_name == 'push' || startsWith(github.ref, 'refs/tags/v') - uses: actions/upload-artifact@v7 with: From d2a1db84181e101d3fb515b8fa9542fce2768b9c Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 12:54:37 -0500 Subject: [PATCH 11/18] note reason for including wpiutil --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index 0a176c8..b4d31e5 100644 --- a/build.gradle +++ b/build.gradle @@ -38,6 +38,7 @@ dependencies { implementation wpilibTools.deps.wpilibJava("wpimath") implementation wpilibTools.deps.wpilibJava("wpiunits") + // This is included for protobuf support implementation wpilibTools.deps.wpilibJava("wpiutil") implementation "com.fasterxml.jackson.core:jackson-annotations:2.15.2" } From 18cd77f5531900e15fc5afde3aef8cf1c4154dd1 Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 13:13:54 -0500 Subject: [PATCH 12/18] fix versioning --- versioningHelper.gradle | 62 +++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 34 deletions(-) diff --git a/versioningHelper.gradle b/versioningHelper.gradle index e9dd6e3..208cc43 100644 --- a/versioningHelper.gradle +++ b/versioningHelper.gradle @@ -2,41 +2,35 @@ import java.nio.file.Path import java.time.LocalDateTime import java.time.format.DateTimeFormatter -gradle.allprojects { - ext.getCurrentVersion = { - -> - def stdout = new ByteArrayOutputStream() - String tagIsh - try { - exec { - commandLine 'git', 'describe', '--tags', "--match=v*" - standardOutput = stdout - } - tagIsh = stdout.toString().trim().toLowerCase() - } catch (Exception e) { - tagIsh = "dev-Unknown" - } - - // Dev tags: v2021.1.6-3-gf922466d - // We're specifically looking to capture the middle -3- - boolean isDev = tagIsh.matches(".*-[0-9]*-g[0-9a-f]*") - if (isDev && !tagIsh.startsWith("dev-")) tagIsh = "dev-" + tagIsh - println("Picked up version: " + tagIsh) - return tagIsh +ext.getCurrentVersion = { + String tagIsh = "dev-unknown" + try { + tagIsh = providers.exec { + commandLine 'git', 'describe', '--tags', '--match=v*' + }.standardOutput.asText.get().trim().toLowerCase() + } catch (Exception ignored) { + tagIsh = "dev-unknown" } - if (!ext.has("versionString")) { - ext.versionString = getCurrentVersion() - } + // Dev tags: v2021.1.6-3-gf922466d + // We're specifically looking to capture the middle -3- + boolean isDev = tagIsh.matches(".*-[0-9]*-g[0-9a-f]*") + if (isDev && !tagIsh.startsWith("dev-")) tagIsh = "dev-" + tagIsh + println("Picked up version: " + tagIsh) + return tagIsh +} - ext.writePhotonVersionFile = {File versionFileIn, Path path, String version -> - println("Writing " + version + " to " + path.toAbsolutePath().toString()) - String date = DateTimeFormatter.ofPattern("yyyy-M-d hh:mm:ss").format(LocalDateTime.now()) - File versionFileOut = new File(path.toAbsolutePath().toString()) - versionFileOut.delete() - def read = versionFileIn.text.replace('${version}', version).replace('${date}', date) - if (!versionFileOut.parentFile.exists()) versionFileOut.parentFile.mkdirs() - if (!versionFileOut.exists()) versionFileOut.createNewFile() - versionFileOut.write(read) - } +if (!ext.has("versionString")) { + ext.versionString = getCurrentVersion() +} + +ext.writePhotonVersionFile = {File versionFileIn, Path path, String version -> + println("Writing " + version + " to " + path.toAbsolutePath().toString()) + String date = DateTimeFormatter.ofPattern("yyyy-M-d hh:mm:ss").format(LocalDateTime.now()) + File versionFileOut = new File(path.toAbsolutePath().toString()) + versionFileOut.delete() + def read = versionFileIn.text.replace('${version}', version).replace('${date}', date) + if (!versionFileOut.parentFile.exists()) versionFileOut.parentFile.mkdirs() + if (!versionFileOut.exists()) versionFileOut.createNewFile() + versionFileOut.write(read) } From 0f8ec85f4882214833f5012cb20979ae9480af3e Mon Sep 17 00:00:00 2001 From: Sam Freund Date: Tue, 7 Apr 2026 18:39:15 -0500 Subject: [PATCH 13/18] pin wpilib version (#23) --- CMakeLists.txt | 2 +- build.gradle | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 55e35a6..ff64baa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,7 +22,7 @@ include(FetchContent) # https://github.com/PhotonVision/photonvision/blob/main/build.gradle set(OPENCV_YEAR "frc2025") set(OPENCV_VERSION "4.10.0-3") -set(WPIMATH_VERSION "2026.2.1") +set(WPIMATH_VERSION "2027.0.0-alpha-4") # type can be "", "debug", "static", or "staticdebug" set(OPENCV_TYPE "") diff --git a/build.gradle b/build.gradle index b4d31e5..eb97024 100644 --- a/build.gradle +++ b/build.gradle @@ -29,6 +29,8 @@ java { targetCompatibility = JavaVersion.VERSION_21 } +wpilibTools.deps.wpilibVersion = "2027.0.0-alpha-4" + dependencies { implementation wpilibTools.deps.wpilibOpenCvJava("frc2025", "4.10.0-3") From 5d0ad66aa6322f1131822e6c5fa644c6f2c3604d Mon Sep 17 00:00:00 2001 From: samfreund Date: Mon, 6 Apr 2026 13:13:54 -0500 Subject: [PATCH 14/18] fix versioning --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ff64baa..de5e282 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,7 +58,7 @@ message(STATUS "Using FRC OpenCV libraries: ${OPENCV_LIB_PATH}") FetchContent_Declare( wpimath_header URL - https://frcmaven.wpi.edu/artifactory/release/edu/wpi/first/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/wpilib-mvn-release-2027-local/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip ) FetchContent_MakeAvailable(wpimath_header) set(WPIMATH_INCLUDE_PATH ${wpimath_header_SOURCE_DIR}) From e4558544a4807756d4e66c04bcd55e8d55de1dee Mon Sep 17 00:00:00 2001 From: samfreund Date: Tue, 7 Apr 2026 19:05:05 -0500 Subject: [PATCH 15/18] move to release-2027 artifactory dir --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index de5e282..30073bc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,7 +58,7 @@ message(STATUS "Using FRC OpenCV libraries: ${OPENCV_LIB_PATH}") FetchContent_Declare( wpimath_header URL - https://frcmaven.wpi.edu/artifactory/wpilib-mvn-release-2027-local/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/release-2027/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip ) FetchContent_MakeAvailable(wpimath_header) set(WPIMATH_INCLUDE_PATH ${wpimath_header_SOURCE_DIR}) From 2643dfcb4f817dc401303954ba72ac83288f2a92 Mon Sep 17 00:00:00 2001 From: Matt M Date: Tue, 5 May 2026 12:48:55 -0700 Subject: [PATCH 16/18] Bump opencv (or not :( ) --- CMakeLists.txt | 8 ++++---- build.gradle | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 30073bc..5510584 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,7 +21,7 @@ include(FetchContent) # Keep this in sync with build.gradle and with # https://github.com/PhotonVision/photonvision/blob/main/build.gradle set(OPENCV_YEAR "frc2025") -set(OPENCV_VERSION "4.10.0-3") +set(OPENCV_VERSION "2027-4.13.0-3") set(WPIMATH_VERSION "2027.0.0-alpha-4") # type can be "", "debug", "static", or "staticdebug" @@ -32,7 +32,7 @@ message(STATUS "Using FRC OpenCV for architecture: ${OPENCV_ARCH}") FetchContent_Declare( opencv_lib URL - https://frcmaven.wpi.edu/artifactory/release/edu/wpi/first/thirdparty/${OPENCV_YEAR}/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-${OPENCV_ARCH}${OPENCV_TYPE}.zip + https://frcmaven.wpi.edu/artifactory/development/edu/wpi/first/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-${OPENCV_ARCH}${OPENCV_TYPE}.zip ) FetchContent_MakeAvailable(opencv_lib) @@ -40,7 +40,7 @@ FetchContent_MakeAvailable(opencv_lib) FetchContent_Declare( opencv_header URL - https://frcmaven.wpi.edu/artifactory/release/edu/wpi/first/thirdparty/${OPENCV_YEAR}/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/development/edu/wpi/first/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-headers.zip ) FetchContent_MakeAvailable(opencv_header) @@ -58,7 +58,7 @@ message(STATUS "Using FRC OpenCV libraries: ${OPENCV_LIB_PATH}") FetchContent_Declare( wpimath_header URL - https://frcmaven.wpi.edu/artifactory/release-2027/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/development-2027/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip ) FetchContent_MakeAvailable(wpimath_header) set(WPIMATH_INCLUDE_PATH ${wpimath_header_SOURCE_DIR}) diff --git a/build.gradle b/build.gradle index eb97024..ef30a7b 100644 --- a/build.gradle +++ b/build.gradle @@ -29,10 +29,10 @@ java { targetCompatibility = JavaVersion.VERSION_21 } -wpilibTools.deps.wpilibVersion = "2027.0.0-alpha-4" +wpilibTools.deps.wpilibVersion = "2027.0.0-alpha-5" dependencies { - implementation wpilibTools.deps.wpilibOpenCvJava("frc2025", "4.10.0-3") + implementation wpilibTools.deps.wpilibOpenCvJava("frc2027", "4.10.0-3") // Junit testImplementation 'org.junit.jupiter:junit-jupiter:5.7.1' From 4c17952c825e10ccb9cac410b3db8f8421bbc4c0 Mon Sep 17 00:00:00 2001 From: samfreund Date: Tue, 5 May 2026 15:47:33 -0500 Subject: [PATCH 17/18] bump workflow --- .github/workflows/main.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b496341..b8d4506 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,9 +17,9 @@ jobs: fail-fast: false matrix: include: - - os: ubuntu-22.04 + - os: ubuntu-24.04 arch-name: linuxx86-64 - - os: ubuntu-22.04-arm + - os: ubuntu-24.04-arm arch-name: linuxarm64 - os: windows-latest arch-name: windowsx86-64 @@ -43,7 +43,7 @@ jobs: - uses: actions/setup-java@v5 with: - java-version: 21 + java-version: 25 distribution: temurin - name: Install deps (Linux) @@ -82,7 +82,7 @@ jobs: release: needs: build-host - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: # Download literally every single artifact. This also downloads client and docs, # but the filtering below won't pick these up (I hope) From d431ddb0c03028e02e79636a0174846f9e73942c Mon Sep 17 00:00:00 2001 From: samfreund Date: Tue, 5 May 2026 15:58:01 -0500 Subject: [PATCH 18/18] fix artifactory paths --- CMakeLists.txt | 9 ++++----- build.gradle | 8 ++++---- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5510584..08ef020 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,9 +20,8 @@ include(FetchContent) # OpenCV configuration # Keep this in sync with build.gradle and with # https://github.com/PhotonVision/photonvision/blob/main/build.gradle -set(OPENCV_YEAR "frc2025") set(OPENCV_VERSION "2027-4.13.0-3") -set(WPIMATH_VERSION "2027.0.0-alpha-4") +set(WPIMATH_VERSION "2027.0.0-alpha-5") # type can be "", "debug", "static", or "staticdebug" set(OPENCV_TYPE "") @@ -32,7 +31,7 @@ message(STATUS "Using FRC OpenCV for architecture: ${OPENCV_ARCH}") FetchContent_Declare( opencv_lib URL - https://frcmaven.wpi.edu/artifactory/development/edu/wpi/first/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-${OPENCV_ARCH}${OPENCV_TYPE}.zip + https://frcmaven.wpi.edu/artifactory/release/org/wpilib/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-${OPENCV_ARCH}${OPENCV_TYPE}.zip ) FetchContent_MakeAvailable(opencv_lib) @@ -40,7 +39,7 @@ FetchContent_MakeAvailable(opencv_lib) FetchContent_Declare( opencv_header URL - https://frcmaven.wpi.edu/artifactory/development/edu/wpi/first/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/release/org/wpilib/thirdparty/opencv/opencv-cpp/${OPENCV_VERSION}/opencv-cpp-${OPENCV_VERSION}-headers.zip ) FetchContent_MakeAvailable(opencv_header) @@ -58,7 +57,7 @@ message(STATUS "Using FRC OpenCV libraries: ${OPENCV_LIB_PATH}") FetchContent_Declare( wpimath_header URL - https://frcmaven.wpi.edu/artifactory/development-2027/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip + https://frcmaven.wpi.edu/artifactory/release-2027/org/wpilib/wpimath/wpimath-cpp/${WPIMATH_VERSION}/wpimath-cpp-${WPIMATH_VERSION}-headers.zip ) FetchContent_MakeAvailable(wpimath_header) set(WPIMATH_INCLUDE_PATH ${wpimath_header_SOURCE_DIR}) diff --git a/build.gradle b/build.gradle index ef30a7b..29e5e17 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "java" - id 'org.photonvision.tools.WpilibTools' version '3.0.0-photon' + id 'org.photonvision.tools.WpilibTools' version '3.1.0-photon' id "org.wpilib.WPILibRepositoriesPlugin" version "2027.0.0" id "com.diffplug.spotless" version "8.1.0" } @@ -25,14 +25,14 @@ ext { } java { - sourceCompatibility = JavaVersion.VERSION_21 - targetCompatibility = JavaVersion.VERSION_21 + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 } wpilibTools.deps.wpilibVersion = "2027.0.0-alpha-5" dependencies { - implementation wpilibTools.deps.wpilibOpenCvJava("frc2027", "4.10.0-3") + implementation wpilibTools.deps.wpilibOpenCvJava("2027-4.13.0-3") // Junit testImplementation 'org.junit.jupiter:junit-jupiter:5.7.1'