From ced6f7bbde691a90da6e7deeff7b8a9a2ae8a4c4 Mon Sep 17 00:00:00 2001 From: Lucien Morey Date: Sat, 24 May 2025 23:10:35 +1000 Subject: [PATCH 1/5] add trapezoidal profile tests --- .../trajectory/test_trapezoidal_profile.py | 182 ++++++++++++++++++ 1 file changed, 182 insertions(+) create mode 100644 subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py diff --git a/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py new file mode 100644 index 000000000..7cc42fd3b --- /dev/null +++ b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py @@ -0,0 +1,182 @@ +# Copyright (c) FIRST and other WPILib contributors. +# Open Source Software; you can modify and/or share it under the terms of +# the WPILib BSD license file in the root directory of this project. + + +import math + +from wpimath.trajectory import TrapezoidProfile + +kDt = 0.01 # 10 ms + + +def expect_near_units(val1, val2, eps): + assert abs(val1 - val2) <= eps + + +def expect_lt_or_near_units(val1, val2, eps): + if val1 <= val2: + assert val1 <= val2 + else: + expect_near_units(val1, val2, eps) + + +def test_reaches_goal(): + constraints = TrapezoidProfile.Constraints(1.75, 0.75) + goal = TrapezoidProfile.State(3.0, 0.0) + state = TrapezoidProfile.State() + + profile = TrapezoidProfile(constraints) + for _ in range(450): + state = profile.calculate(kDt, state, goal) + assert state == goal + + +def test_pos_continuous_under_vel_change(): + constraints = TrapezoidProfile.Constraints(1.75, 0.75) + goal = TrapezoidProfile.State(12.0, 0.0) + profile = TrapezoidProfile(constraints) + state = profile.calculate(kDt, TrapezoidProfile.State(), goal) + + last_pos = state.position + for i in range(1600): + if i == 400: + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + profile = TrapezoidProfile(constraints) + + state = profile.calculate(kDt, state, goal) + estimated_vel = (state.position - last_pos) / kDt + + if i >= 400: + expect_lt_or_near_units(estimated_vel, constraints.maxVelocity, 1e-4) + assert state.velocity <= constraints.maxVelocity + + last_pos = state.position + + assert state == goal + + +def test_backwards(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(-2.0, 0.0) + state = TrapezoidProfile.State() + profile = TrapezoidProfile(constraints) + + for _ in range(400): + state = profile.calculate(kDt, state, goal) + assert state == goal + + +def test_switch_goal_in_middle(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(-2.0, 0.0) + state = TrapezoidProfile.State() + profile = TrapezoidProfile(constraints) + + for _ in range(200): + state = profile.calculate(kDt, state, goal) + assert state != goal + + goal = TrapezoidProfile.State(0.0, 0.0) + profile = TrapezoidProfile(constraints) + for _ in range(550): + state = profile.calculate(kDt, state, goal) + assert state == goal + + +def test_top_speed(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(4.0, 0.0) + state = TrapezoidProfile.State() + profile = TrapezoidProfile(constraints) + + for _ in range(200): + state = profile.calculate(kDt, state, goal) + expect_near_units(constraints.maxVelocity, state.velocity, 1e-4) + + profile = TrapezoidProfile(constraints) + for _ in range(2000): + state = profile.calculate(kDt, state, goal) + assert state == goal + + +def test_timing_to_current(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(2.0, 0.0) + state = TrapezoidProfile.State() + profile = TrapezoidProfile(constraints) + + for _ in range(400): + state = profile.calculate(kDt, state, goal) + expect_near_units(profile.timeLeftUntil(state.position), 0.0, 0.02) + + +def test_timing_to_goal(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(2.0, 0.0) + profile = TrapezoidProfile(constraints) + + state = profile.calculate(kDt, goal, TrapezoidProfile.State()) + predicted_time_left = profile.timeLeftUntil(goal.position) + + reached_goal = False + for i in range(400): + state = profile.calculate(kDt, state, goal) + if not reached_goal and state == goal: + assert math.isclose(predicted_time_left, i * kDt, abs_tol=0.25) + reached_goal = True + + +def test_timing_before_goal(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(2.0, 0.0) + profile = TrapezoidProfile(constraints) + + state = profile.calculate(kDt, goal, TrapezoidProfile.State()) + predicted_time_left = profile.timeLeftUntil(1.0) + + reached_goal = False + for i in range(400): + state = profile.calculate(kDt, state, goal) + if not reached_goal and abs(state.velocity - 1.0) < 1e-4: + assert math.isclose(predicted_time_left, i * kDt, abs_tol=0.02) + reached_goal = True + + +def test_timing_to_negative_goal(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(-2.0, 0.0) + profile = TrapezoidProfile(constraints) + + state = profile.calculate(kDt, goal, TrapezoidProfile.State()) + predicted_time_left = profile.timeLeftUntil(goal.position) + + reached_goal = False + for i in range(400): + state = profile.calculate(kDt, state, goal) + if not reached_goal and state == goal: + assert math.isclose(predicted_time_left, i * kDt, abs_tol=0.25) + reached_goal = True + + +def test_timing_before_negative_goal(): + constraints = TrapezoidProfile.Constraints(0.75, 0.75) + goal = TrapezoidProfile.State(-2.0, 0.0) + profile = TrapezoidProfile(constraints) + + state = profile.calculate(kDt, goal, TrapezoidProfile.State()) + predicted_time_left = profile.timeLeftUntil(-1.0) + + reached_goal = False + for i in range(400): + state = profile.calculate(kDt, state, goal) + if not reached_goal and abs(state.velocity + 1.0) < 1e-4: + assert math.isclose(predicted_time_left, i * kDt, abs_tol=0.02) + reached_goal = True + + +def test_initialization_of_current_state(): + constraints = TrapezoidProfile.Constraints(1.0, 1.0) + profile = TrapezoidProfile(constraints) + expect_near_units(profile.timeLeftUntil(0.0), 0.0, 1e-10) + expect_near_units(profile.totalTime(), 0.0, 1e-10) From b48ddef879f7ed288e114532a40dcbe249cf37e9 Mon Sep 17 00:00:00 2001 From: Lucien Morey Date: Mon, 26 May 2025 18:30:56 +1000 Subject: [PATCH 2/5] switch checks to math.isclose --- .../trajectory/test_trapezoidal_profile.py | 24 +++++++------------ 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py index 7cc42fd3b..7d4c34aca 100644 --- a/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py +++ b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py @@ -10,17 +10,6 @@ kDt = 0.01 # 10 ms -def expect_near_units(val1, val2, eps): - assert abs(val1 - val2) <= eps - - -def expect_lt_or_near_units(val1, val2, eps): - if val1 <= val2: - assert val1 <= val2 - else: - expect_near_units(val1, val2, eps) - - def test_reaches_goal(): constraints = TrapezoidProfile.Constraints(1.75, 0.75) goal = TrapezoidProfile.State(3.0, 0.0) @@ -48,7 +37,10 @@ def test_pos_continuous_under_vel_change(): estimated_vel = (state.position - last_pos) / kDt if i >= 400: - expect_lt_or_near_units(estimated_vel, constraints.maxVelocity, 1e-4) + if estimated_vel <= constraints.maxVelocity: + assert estimated_vel <= constraints.maxVelocity + else: + math.isclose(estimated_vel, constraints.maxVelocity, abs_tol=1e-4) assert state.velocity <= constraints.maxVelocity last_pos = state.position @@ -92,7 +84,7 @@ def test_top_speed(): for _ in range(200): state = profile.calculate(kDt, state, goal) - expect_near_units(constraints.maxVelocity, state.velocity, 1e-4) + assert math.isclose(constraints.maxVelocity, state.velocity, abs_tol=1e-4) profile = TrapezoidProfile(constraints) for _ in range(2000): @@ -108,7 +100,7 @@ def test_timing_to_current(): for _ in range(400): state = profile.calculate(kDt, state, goal) - expect_near_units(profile.timeLeftUntil(state.position), 0.0, 0.02) + assert math.isclose(profile.timeLeftUntil(state.position), 0.0, abs_tol=0.02) def test_timing_to_goal(): @@ -178,5 +170,5 @@ def test_timing_before_negative_goal(): def test_initialization_of_current_state(): constraints = TrapezoidProfile.Constraints(1.0, 1.0) profile = TrapezoidProfile(constraints) - expect_near_units(profile.timeLeftUntil(0.0), 0.0, 1e-10) - expect_near_units(profile.totalTime(), 0.0, 1e-10) + assert math.isclose(profile.timeLeftUntil(0.0), 0.0, abs_tol=1e-10) + assert math.isclose(profile.totalTime(), 0.0, abs_tol=1e-10) From 2b5dba089458669b1c8568d8e9fdf34ac84b2b22 Mon Sep 17 00:00:00 2001 From: Dustin Spicuzza Date: Tue, 3 Jun 2025 02:27:37 -0400 Subject: [PATCH 3/5] Fix Constraints repr --- .../robotpy-wpimath/semiwrap/controls/TrapezoidProfile.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/subprojects/robotpy-wpimath/semiwrap/controls/TrapezoidProfile.yml b/subprojects/robotpy-wpimath/semiwrap/controls/TrapezoidProfile.yml index 3d70fcebe..adaef7e8a 100644 --- a/subprojects/robotpy-wpimath/semiwrap/controls/TrapezoidProfile.yml +++ b/subprojects/robotpy-wpimath/semiwrap/controls/TrapezoidProfile.yml @@ -77,7 +77,8 @@ classes: maxAcceleration_: name: maxAcceleration default: '0' - template_inline_code: | + inline_code: | + ; { std::string clsNameCopy = clsName; From a21af24c886dd51cbbdcc5fb40c079466a3e4d0c Mon Sep 17 00:00:00 2001 From: Dustin Spicuzza Date: Wed, 4 Jun 2025 01:04:13 -0400 Subject: [PATCH 4/5] Updated dependencies - build-system.requires: pyntcore==2025.3.2.4 - build-system.requires: robotpy-hal==2025.3.2.4 - build-system.requires: robotpy-native-apriltag==2025.3.2.1 - build-system.requires: robotpy-native-ntcore==2025.3.2.1 - build-system.requires: robotpy-native-romi==2025.3.2.1 - build-system.requires: robotpy-native-wpihal==2025.3.2.1 - build-system.requires: robotpy-native-wpilib==2025.3.2.1 - build-system.requires: robotpy-native-wpimath==2025.3.2.1 - build-system.requires: robotpy-native-wpinet==2025.3.2.1 - build-system.requires: robotpy-native-wpiutil==2025.3.2.1 - build-system.requires: robotpy-native-xrp==2025.3.2.1 - build-system.requires: robotpy-wpimath==2025.3.2.4 - build-system.requires: robotpy-wpinet==2025.3.2.4 - build-system.requires: robotpy-wpiutil==2025.3.2.4 - build-system.requires: wpilib==2025.3.2.4 - lib updated to 2025.3.2-54-g7a3df61 - project.dependencies: pyntcore==2025.3.2.4 - project.dependencies: robotpy-hal==2025.3.2.4 - project.dependencies: robotpy-native-apriltag==2025.3.2.1 - project.dependencies: robotpy-native-ntcore==2025.3.2.1 - project.dependencies: robotpy-native-romi==2025.3.2.1 - project.dependencies: robotpy-native-wpihal==2025.3.2.1 - project.dependencies: robotpy-native-wpilib==2025.3.2.1 - project.dependencies: robotpy-native-wpimath==2025.3.2.1 - project.dependencies: robotpy-native-wpinet==2025.3.2.1 - project.dependencies: robotpy-native-wpiutil==2025.3.2.1 - project.dependencies: robotpy-native-xrp==2025.3.2.1 - project.dependencies: robotpy-wpimath==2025.3.2.4 - project.dependencies: robotpy-wpinet==2025.3.2.4 - project.dependencies: robotpy-wpiutil==2025.3.2.4 - project.dependencies: wpilib==2025.3.2.4 - pyntcore updated to 2025.3.2.4 - repo updated to https://frcmaven.wpi.edu/artifactory/development - robotpy-apriltag updated to 2025.3.2.4 - robotpy-cscore updated to 2025.3.2.4 - robotpy-hal updated to 2025.3.2.4 - robotpy-halsim-gui updated to 2025.3.2.4 - robotpy-native-apriltag updated to 2025.3.2.1 - robotpy-native-ntcore updated to 2025.3.2.1 - robotpy-native-romi updated to 2025.3.2.1 - robotpy-native-wpihal updated to 2025.3.2.1 - robotpy-native-wpilib updated to 2025.3.2.1 - robotpy-native-wpimath updated to 2025.3.2.1 - robotpy-native-wpinet updated to 2025.3.2.1 - robotpy-native-wpiutil updated to 2025.3.2.1 - robotpy-native-xrp updated to 2025.3.2.1 - robotpy-romi updated to 2025.3.2.4 - robotpy-wpimath updated to 2025.3.2.4 - robotpy-wpinet updated to 2025.3.2.4 - robotpy-wpiutil updated to 2025.3.2.4 - robotpy-xrp updated to 2025.3.2.4 - wpilib updated to 2025.3.2.4 --- rdev.toml | 10 +++---- subprojects/pyntcore/pyproject.toml | 14 +++++----- subprojects/robotpy-apriltag/pyproject.toml | 14 +++++----- subprojects/robotpy-cscore/pyproject.toml | 22 ++++++++-------- subprojects/robotpy-hal/pyproject.toml | 10 +++---- .../robotpy-halsim-ds-socket/pyproject.toml | 8 +++--- subprojects/robotpy-halsim-gui/pyproject.toml | 22 ++++++++-------- subprojects/robotpy-halsim-ws/pyproject.toml | 12 ++++----- .../robotpy-native-apriltag/pyproject.toml | 14 +++++----- .../robotpy-native-ntcore/pyproject.toml | 14 +++++----- .../robotpy-native-romi/pyproject.toml | 10 +++---- .../robotpy-native-wpihal/pyproject.toml | 10 +++---- .../robotpy-native-wpilib/pyproject.toml | 26 +++++++++---------- .../robotpy-native-wpimath/pyproject.toml | 10 +++---- .../robotpy-native-wpinet/pyproject.toml | 10 +++---- .../robotpy-native-wpiutil/pyproject.toml | 6 ++--- subprojects/robotpy-native-xrp/pyproject.toml | 10 +++---- subprojects/robotpy-romi/pyproject.toml | 10 +++---- subprojects/robotpy-wpilib/pyproject.toml | 22 ++++++++-------- subprojects/robotpy-wpimath/pyproject.toml | 10 +++---- subprojects/robotpy-wpinet/pyproject.toml | 10 +++---- subprojects/robotpy-wpiutil/pyproject.toml | 6 ++--- subprojects/robotpy-xrp/pyproject.toml | 14 +++++----- 23 files changed, 147 insertions(+), 147 deletions(-) diff --git a/rdev.toml b/rdev.toml index fb797f7eb..d4eb22405 100644 --- a/rdev.toml +++ b/rdev.toml @@ -11,20 +11,20 @@ [py_versions] # Usually the same as wpilib_bin_version -native = "2025.3.2" +native = "2025.3.2.1" # Will eventually sync with native halsim_native = "2025.3.2.2" # Usually similar to native, but subminor version is bumped for bugfixes # - ./rdev.sh ci check_tag will fail if this doesn't match current tag -wrapper = "2025.3.2.3" +wrapper = "2025.3.2.4" [params] -wpilib_bin_url = "https://frcmaven.wpi.edu/artifactory/release" -wpilib_bin_version = "2025.3.2" -#wpilib_bin_url = "https://frcmaven.wpi.edu/artifactory/development" +# wpilib_bin_url = "https://frcmaven.wpi.edu/artifactory/release" +wpilib_bin_version = "2025.3.2-54-g7a3df61" +wpilib_bin_url = "https://frcmaven.wpi.edu/artifactory/development" # Don't update these maven artifacts exclude_artifacts = [ diff --git a/subprojects/pyntcore/pyproject.toml b/subprojects/pyntcore/pyproject.toml index a58593324..d08f7cbeb 100644 --- a/subprojects/pyntcore/pyproject.toml +++ b/subprojects/pyntcore/pyproject.toml @@ -5,24 +5,24 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-ntcore==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpinet==2025.3.2.3", + "robotpy-native-ntcore==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpinet==2025.3.2.4", ] [project] name = "pyntcore" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrappers for the FRC ntcore library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-ntcore==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpinet==2025.3.2.3", + "robotpy-native-ntcore==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpinet==2025.3.2.4", ] [project.urls] diff --git a/subprojects/robotpy-apriltag/pyproject.toml b/subprojects/robotpy-apriltag/pyproject.toml index dcfcb0413..4ac196f76 100644 --- a/subprojects/robotpy-apriltag/pyproject.toml +++ b/subprojects/robotpy-apriltag/pyproject.toml @@ -5,23 +5,23 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-apriltag==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", + "robotpy-native-apriltag==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", ] [project] name = "robotpy-apriltag" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "RobotPy bindings for WPILib's AprilTag library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-apriltag==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", + "robotpy-native-apriltag==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", ] [project.urls] diff --git a/subprojects/robotpy-cscore/pyproject.toml b/subprojects/robotpy-cscore/pyproject.toml index c2843be59..fb8021e6d 100644 --- a/subprojects/robotpy-cscore/pyproject.toml +++ b/subprojects/robotpy-cscore/pyproject.toml @@ -5,24 +5,24 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpinet==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpinet==2025.3.2.4", + "pyntcore==2025.3.2.4", # "numpy", # required for pybind11-stubgen to not complain, broken in raspbian CI ] [project] name = "robotpy-cscore" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "RobotPy bindings for cscore image processing library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpinet==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpinet==2025.3.2.4", + "pyntcore==2025.3.2.4", ] [project.urls] @@ -43,8 +43,8 @@ version_file = "cscore/version.py" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "cscore-cpp" group_id = "edu.wpi.first.cscore" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" staticlibs = ["cscore"] extract_to = "lib" @@ -52,8 +52,8 @@ extract_to = "lib" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "cameraserver-cpp" group_id = "edu.wpi.first.cameraserver" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" staticlibs = ["cameraserver"] extract_to = "lib" diff --git a/subprojects/robotpy-hal/pyproject.toml b/subprojects/robotpy-hal/pyproject.toml index 77f2186e6..87a2085d1 100644 --- a/subprojects/robotpy-hal/pyproject.toml +++ b/subprojects/robotpy-hal/pyproject.toml @@ -4,21 +4,21 @@ requires = [ "semiwrap~=0.1.2", "hatch-meson~=0.1.0b2", "hatchling", - "robotpy-native-wpihal==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", + "robotpy-native-wpihal==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", ] [project] name = "robotpy-hal" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for FRC HAL" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpihal==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", + "robotpy-native-wpihal==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", ] [project.urls] diff --git a/subprojects/robotpy-halsim-ds-socket/pyproject.toml b/subprojects/robotpy-halsim-ds-socket/pyproject.toml index 32ccd891f..1dedf3db0 100644 --- a/subprojects/robotpy-halsim-ds-socket/pyproject.toml +++ b/subprojects/robotpy-halsim-ds-socket/pyproject.toml @@ -14,8 +14,8 @@ authors = [ ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpihal==2025.3.2", - "robotpy-native-wpinet==2025.3.2", + "robotpy-native-wpihal==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", ] [project.entry-points.robotpysimext] @@ -28,8 +28,8 @@ version_file = "halsim_ds_socket/version.py" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "halsim_ds_socket" group_id = "edu.wpi.first.halsim" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" use_headers = false extract_to = "halsim_ds_socket" diff --git a/subprojects/robotpy-halsim-gui/pyproject.toml b/subprojects/robotpy-halsim-gui/pyproject.toml index e219770ea..c98b84158 100644 --- a/subprojects/robotpy-halsim-gui/pyproject.toml +++ b/subprojects/robotpy-halsim-gui/pyproject.toml @@ -5,25 +5,25 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", - "robotpy-hal==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", + "robotpy-hal==2025.3.2.4", + "pyntcore==2025.3.2.4", ] [project] name = "robotpy-halsim-gui" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "WPILib simulation GUI" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", - "robotpy-hal==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", + "robotpy-hal==2025.3.2.4", + "pyntcore==2025.3.2.4", ] [project.urls] @@ -36,8 +36,8 @@ version_file = "halsim_gui/version.py" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "halsim_gui" group_id = "edu.wpi.first.halsim" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" use_headers = true libs = ["halsim_gui"] diff --git a/subprojects/robotpy-halsim-ws/pyproject.toml b/subprojects/robotpy-halsim-ws/pyproject.toml index 1dd5a23df..fca1263a4 100644 --- a/subprojects/robotpy-halsim-ws/pyproject.toml +++ b/subprojects/robotpy-halsim-ws/pyproject.toml @@ -14,8 +14,8 @@ authors = [ ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpihal==2025.3.2", - "robotpy-native-wpinet==2025.3.2", + "robotpy-native-wpihal==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", ] [project.entry-points.robotpysimext] @@ -33,8 +33,8 @@ version_file = "halsim_ws/version.py" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "halsim_ws_server" group_id = "edu.wpi.first.halsim" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" use_headers = false extract_to = "halsim_ws/server" @@ -43,8 +43,8 @@ libs = ["halsim_ws_server"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "halsim_ws_client" group_id = "edu.wpi.first.halsim" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" use_headers = false extract_to = "halsim_ws/client" diff --git a/subprojects/robotpy-native-apriltag/pyproject.toml b/subprojects/robotpy-native-apriltag/pyproject.toml index 6d0f88fc8..598638069 100644 --- a/subprojects/robotpy-native-apriltag/pyproject.toml +++ b/subprojects/robotpy-native-apriltag/pyproject.toml @@ -4,19 +4,19 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpimath==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpimath==2025.3.2.1", ] [project] name = "robotpy-native-apriltag" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib AprilTag Library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpimath==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpimath==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -25,8 +25,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "apriltag-cpp" group_id = "edu.wpi.first.apriltag" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/apriltag" libs = ["apriltag"] diff --git a/subprojects/robotpy-native-ntcore/pyproject.toml b/subprojects/robotpy-native-ntcore/pyproject.toml index 83f83e7b5..43d6b54a5 100644 --- a/subprojects/robotpy-native-ntcore/pyproject.toml +++ b/subprojects/robotpy-native-ntcore/pyproject.toml @@ -4,19 +4,19 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpinet==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", ] [project] name = "robotpy-native-ntcore" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib NetworkTables Library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpinet==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -25,8 +25,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "ntcore-cpp" group_id = "edu.wpi.first.ntcore" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/ntcore" libs = ["ntcore"] diff --git a/subprojects/robotpy-native-romi/pyproject.toml b/subprojects/robotpy-native-romi/pyproject.toml index 476883671..1c54201f8 100644 --- a/subprojects/robotpy-native-romi/pyproject.toml +++ b/subprojects/robotpy-native-romi/pyproject.toml @@ -4,17 +4,17 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpilib==2025.3.2", + "robotpy-native-wpilib==2025.3.2.1", ] [project] name = "robotpy-native-romi" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib Romi support library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpilib==2025.3.2", + "robotpy-native-wpilib==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -23,8 +23,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "romiVendordep-cpp" group_id = "edu.wpi.first.romiVendordep" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/romi" libs = ["romiVendordep"] diff --git a/subprojects/robotpy-native-wpihal/pyproject.toml b/subprojects/robotpy-native-wpihal/pyproject.toml index 0ee6480eb..1367f5f4e 100644 --- a/subprojects/robotpy-native-wpihal/pyproject.toml +++ b/subprojects/robotpy-native-wpihal/pyproject.toml @@ -4,17 +4,17 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [project] name = "robotpy-native-wpihal" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib HAL implementation" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -23,8 +23,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "hal-cpp" group_id = "edu.wpi.first.hal" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/wpihal" libs = ["wpiHal"] diff --git a/subprojects/robotpy-native-wpilib/pyproject.toml b/subprojects/robotpy-native-wpilib/pyproject.toml index 9a418fa63..6c1bdf63e 100644 --- a/subprojects/robotpy-native-wpilib/pyproject.toml +++ b/subprojects/robotpy-native-wpilib/pyproject.toml @@ -4,25 +4,25 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpinet==2025.3.2", - "robotpy-native-ntcore==2025.3.2", - "robotpy-native-wpimath==2025.3.2", - "robotpy-native-wpihal==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", + "robotpy-native-ntcore==2025.3.2.1", + "robotpy-native-wpimath==2025.3.2.1", + "robotpy-native-wpihal==2025.3.2.1", ] [project] name = "robotpy-native-wpilib" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib Robotics Library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", - "robotpy-native-wpinet==2025.3.2", - "robotpy-native-ntcore==2025.3.2", - "robotpy-native-wpimath==2025.3.2", - "robotpy-native-wpihal==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", + "robotpy-native-wpinet==2025.3.2.1", + "robotpy-native-ntcore==2025.3.2.1", + "robotpy-native-wpimath==2025.3.2.1", + "robotpy-native-wpihal==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -31,8 +31,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "wpilibc-cpp" group_id = "edu.wpi.first.wpilibc" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/wpilib" libs = ["wpilibc"] diff --git a/subprojects/robotpy-native-wpimath/pyproject.toml b/subprojects/robotpy-native-wpimath/pyproject.toml index 72b8bcd3c..ab5861e4c 100644 --- a/subprojects/robotpy-native-wpimath/pyproject.toml +++ b/subprojects/robotpy-native-wpimath/pyproject.toml @@ -4,17 +4,17 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [project] name = "robotpy-native-wpimath" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib Math Library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -23,8 +23,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "wpimath-cpp" group_id = "edu.wpi.first.wpimath" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/wpimath" libs = ["wpimath"] diff --git a/subprojects/robotpy-native-wpinet/pyproject.toml b/subprojects/robotpy-native-wpinet/pyproject.toml index ac928d9d1..79303109f 100644 --- a/subprojects/robotpy-native-wpinet/pyproject.toml +++ b/subprojects/robotpy-native-wpinet/pyproject.toml @@ -4,17 +4,17 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [project] name = "robotpy-native-wpinet" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib Networking Library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -23,8 +23,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "wpinet-cpp" group_id = "edu.wpi.first.wpinet" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/wpinet" libs = ["wpinet"] diff --git a/subprojects/robotpy-native-wpiutil/pyproject.toml b/subprojects/robotpy-native-wpiutil/pyproject.toml index e0a6e6045..75a2ad1d4 100644 --- a/subprojects/robotpy-native-wpiutil/pyproject.toml +++ b/subprojects/robotpy-native-wpiutil/pyproject.toml @@ -8,7 +8,7 @@ requires = [ [project] name = "robotpy-native-wpiutil" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib Utility Library" license = "BSD-3-Clause" @@ -22,8 +22,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "wpiutil-cpp" group_id = "edu.wpi.first.wpiutil" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/wpiutil" libs = ["wpiutil"] diff --git a/subprojects/robotpy-native-xrp/pyproject.toml b/subprojects/robotpy-native-xrp/pyproject.toml index 7499b4d60..554d76107 100644 --- a/subprojects/robotpy-native-xrp/pyproject.toml +++ b/subprojects/robotpy-native-xrp/pyproject.toml @@ -4,17 +4,17 @@ requires = [ "hatchling", "hatch-nativelib~=0.2.0", "hatch-robotpy~=0.2", - "robotpy-native-wpilib==2025.3.2", + "robotpy-native-wpilib==2025.3.2.1", ] [project] name = "robotpy-native-xrp" -version = "2025.3.2" +version = "2025.3.2.1" description = "WPILib XRP vendor library" license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpilib==2025.3.2", + "robotpy-native-wpilib==2025.3.2.1", ] [tool.hatch.build.targets.wheel] @@ -23,8 +23,8 @@ packages = ["src/native"] [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "xrpVendordep-cpp" group_id = "edu.wpi.first.xrpVendordep" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" extract_to = "src/native/xrp" libs = ["xrpVendordep"] diff --git a/subprojects/robotpy-romi/pyproject.toml b/subprojects/robotpy-romi/pyproject.toml index 4566a43bc..c81b976fd 100644 --- a/subprojects/robotpy-romi/pyproject.toml +++ b/subprojects/robotpy-romi/pyproject.toml @@ -5,22 +5,22 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-romi==2025.3.2", - "wpilib==2025.3.2.3", + "robotpy-native-romi==2025.3.2.1", + "wpilib==2025.3.2.4", ] [project] name = "robotpy-romi" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for WPILib Romi Vendor library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-romi==2025.3.2", - "wpilib==2025.3.2.3" + "robotpy-native-romi==2025.3.2.1", + "wpilib==2025.3.2.4" ] [project.urls] diff --git a/subprojects/robotpy-wpilib/pyproject.toml b/subprojects/robotpy-wpilib/pyproject.toml index 6b6621dfa..b70faf374 100644 --- a/subprojects/robotpy-wpilib/pyproject.toml +++ b/subprojects/robotpy-wpilib/pyproject.toml @@ -5,27 +5,27 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-wpilib==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", - "robotpy-hal==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-native-wpilib==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", + "robotpy-hal==2025.3.2.4", + "pyntcore==2025.3.2.4", ] [project] name = "wpilib" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for FRC WPILib" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpilib==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", - "robotpy-wpimath==2025.3.2.3", - "robotpy-hal==2025.3.2.3", - "pyntcore==2025.3.2.3", + "robotpy-native-wpilib==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", + "robotpy-wpimath==2025.3.2.4", + "robotpy-hal==2025.3.2.4", + "pyntcore==2025.3.2.4", "robotpy-cli~=2024.0b" ] diff --git a/subprojects/robotpy-wpimath/pyproject.toml b/subprojects/robotpy-wpimath/pyproject.toml index ed29e3354..5fbdf70ee 100644 --- a/subprojects/robotpy-wpimath/pyproject.toml +++ b/subprojects/robotpy-wpimath/pyproject.toml @@ -5,22 +5,22 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-wpimath==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", + "robotpy-native-wpimath==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", # "numpy", # broken in raspbian CI ] [project] name = "robotpy-wpimath" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for FRC WPIMath library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpimath==2025.3.2", - "robotpy-wpiutil==2025.3.2.3", + "robotpy-native-wpimath==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4", ] [project.urls] diff --git a/subprojects/robotpy-wpinet/pyproject.toml b/subprojects/robotpy-wpinet/pyproject.toml index a31ffa3d0..abcd2eebc 100644 --- a/subprojects/robotpy-wpinet/pyproject.toml +++ b/subprojects/robotpy-wpinet/pyproject.toml @@ -4,21 +4,21 @@ requires = [ "semiwrap~=0.1.2", "hatch-meson~=0.1.0b2", "hatchling", - "robotpy-native-wpinet==2025.3.2", - "robotpy-wpiutil==2025.3.2.3" + "robotpy-native-wpinet==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4" ] [project] name = "robotpy-wpinet" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for FRC wpinet library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpinet==2025.3.2", - "robotpy-wpiutil==2025.3.2.3" + "robotpy-native-wpinet==2025.3.2.1", + "robotpy-wpiutil==2025.3.2.4" ] [project.urls] diff --git a/subprojects/robotpy-wpiutil/pyproject.toml b/subprojects/robotpy-wpiutil/pyproject.toml index 179d7412e..fd5a7642b 100644 --- a/subprojects/robotpy-wpiutil/pyproject.toml +++ b/subprojects/robotpy-wpiutil/pyproject.toml @@ -5,19 +5,19 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [project] name = "robotpy-wpiutil" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for FRC WPIUtil library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-wpiutil==2025.3.2", + "robotpy-native-wpiutil==2025.3.2.1", ] [project.urls] diff --git a/subprojects/robotpy-xrp/pyproject.toml b/subprojects/robotpy-xrp/pyproject.toml index 6f74edb9e..43807734c 100644 --- a/subprojects/robotpy-xrp/pyproject.toml +++ b/subprojects/robotpy-xrp/pyproject.toml @@ -5,22 +5,22 @@ requires = [ "hatch-meson~=0.1.0b2", "hatch-robotpy~=0.2", "hatchling", - "robotpy-native-xrp==2025.3.2", - "wpilib==2025.3.2.3", + "robotpy-native-xrp==2025.3.2.1", + "wpilib==2025.3.2.4", ] [project] name = "robotpy-xrp" -version = "2025.3.2.3" +version = "2025.3.2.4" description = "Binary wrapper for WPILib XRP Vendor library" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ - "robotpy-native-xrp==2025.3.2", - "wpilib==2025.3.2.3" + "robotpy-native-xrp==2025.3.2.1", + "wpilib==2025.3.2.4" ] [project.entry-points.robotpysimext] @@ -33,8 +33,8 @@ version_file = "xrp/version.py" [[tool.hatch.build.hooks.robotpy.maven_lib_download]] artifact_id = "halsim_xrp" group_id = "edu.wpi.first.halsim" -repo_url = "https://frcmaven.wpi.edu/artifactory/release" -version = "2025.3.2" +repo_url = "https://frcmaven.wpi.edu/artifactory/development" +version = "2025.3.2-54-g7a3df61" use_headers = false extract_to = "xrp/extension" From d22b077bb47c388f5ec1f6ff7f1e203bcdb1061b Mon Sep 17 00:00:00 2001 From: Lucien Morey Date: Thu, 5 Jun 2025 14:51:03 +1000 Subject: [PATCH 5/5] Fix silly missed assert mistake Co-authored-by: David Vo --- .../tests/trajectory/test_trapezoidal_profile.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py index 7d4c34aca..c77961135 100644 --- a/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py +++ b/subprojects/robotpy-wpimath/tests/trajectory/test_trapezoidal_profile.py @@ -40,7 +40,9 @@ def test_pos_continuous_under_vel_change(): if estimated_vel <= constraints.maxVelocity: assert estimated_vel <= constraints.maxVelocity else: - math.isclose(estimated_vel, constraints.maxVelocity, abs_tol=1e-4) + assert math.isclose( + estimated_vel, constraints.maxVelocity, abs_tol=1e-4 + ) assert state.velocity <= constraints.maxVelocity last_pos = state.position