Skip to content

Commit 57780c6

Browse files
committed
feat: upgrade to WPILib 2027
1 parent e7c9da4 commit 57780c6

11 files changed

Lines changed: 96 additions & 113 deletions

File tree

lib/build.gradle

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ tasks.withType(JavaCompile).configureEach {
4646
}
4747
}
4848

49-
ext.wpilibVersion = "2025.+"
49+
ext.wpilibVersion = "2027.+"
5050

5151
repositories {
5252
// Use Maven Central for resolving dependencies.
@@ -58,13 +58,15 @@ if (project.hasProperty('releaseMode')) {
5858
} else {
5959
wpilibRepositories.addAllDevelopmentRepositories(project)
6060
}
61+
wpilibRepositories.use2027Repos()
6162

6263
dependencies {
6364
implementation "edu.wpi.first.ntcore:ntcore-java:$wpilibVersion"
6465
implementation "edu.wpi.first.wpilibj:wpilibj-java:$wpilibVersion"
6566
implementation "edu.wpi.first.wpiutil:wpiutil-java:$wpilibVersion"
6667
implementation "edu.wpi.first.wpiunits:wpiunits-java:$wpilibVersion"
6768
implementation "edu.wpi.first.hal:hal-java:$wpilibVersion"
69+
implementation "edu.wpi.first.datalog:datalog-java:$wpilibVersion"
6870
implementation "edu.wpi.first.wpilibNewCommands:wpilibNewCommands-java:$wpilibVersion"
6971

7072
errorprone "com.google.errorprone:error_prone_core:2.43.0"

lib/src/main/java/dev/doglog/DogLog.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import dev.doglog.internal.TimedCommand;
66
import dev.doglog.internal.tunable.Tunable;
77
import dev.doglog.internal.writers.LogWriterHighLevel;
8-
import edu.wpi.first.hal.FRCNetComm;
98
import edu.wpi.first.hal.HAL;
109
import edu.wpi.first.hal.HALUtil;
1110
import edu.wpi.first.networktables.BooleanSubscriber;
@@ -32,9 +31,7 @@
3231
/** A logger based on WPILib's {@link DataLogManager} */
3332
public class DogLog {
3433
static {
35-
HAL.report(
36-
FRCNetComm.tResourceType.kResourceType_LoggingFramework,
37-
FRCNetComm.tInstances.kLoggingFramework_DogLog);
34+
HAL.reportUsage("LoggingFramework", "DogLog");
3835
}
3936

4037
/** The options to use for the logger. */

lib/src/main/java/dev/doglog/internal/writers/DataLogWriter.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
package dev.doglog.internal.writers;
22

33
import dev.doglog.DogLogOptions;
4+
import edu.wpi.first.datalog.BooleanArrayLogEntry;
5+
import edu.wpi.first.datalog.BooleanLogEntry;
6+
import edu.wpi.first.datalog.DataLog;
7+
import edu.wpi.first.datalog.DataLogEntry;
8+
import edu.wpi.first.datalog.DoubleArrayLogEntry;
9+
import edu.wpi.first.datalog.DoubleLogEntry;
10+
import edu.wpi.first.datalog.FloatArrayLogEntry;
11+
import edu.wpi.first.datalog.FloatLogEntry;
12+
import edu.wpi.first.datalog.IntegerArrayLogEntry;
13+
import edu.wpi.first.datalog.IntegerLogEntry;
14+
import edu.wpi.first.datalog.StringArrayLogEntry;
15+
import edu.wpi.first.datalog.StringLogEntry;
16+
import edu.wpi.first.datalog.StructArrayLogEntry;
17+
import edu.wpi.first.datalog.StructLogEntry;
418
import edu.wpi.first.networktables.NetworkTableInstance;
5-
import edu.wpi.first.util.datalog.BooleanArrayLogEntry;
6-
import edu.wpi.first.util.datalog.BooleanLogEntry;
7-
import edu.wpi.first.util.datalog.DataLog;
8-
import edu.wpi.first.util.datalog.DataLogEntry;
9-
import edu.wpi.first.util.datalog.DoubleArrayLogEntry;
10-
import edu.wpi.first.util.datalog.DoubleLogEntry;
11-
import edu.wpi.first.util.datalog.FloatArrayLogEntry;
12-
import edu.wpi.first.util.datalog.FloatLogEntry;
13-
import edu.wpi.first.util.datalog.IntegerArrayLogEntry;
14-
import edu.wpi.first.util.datalog.IntegerLogEntry;
15-
import edu.wpi.first.util.datalog.StringArrayLogEntry;
16-
import edu.wpi.first.util.datalog.StringLogEntry;
17-
import edu.wpi.first.util.datalog.StructArrayLogEntry;
18-
import edu.wpi.first.util.datalog.StructLogEntry;
1919
import edu.wpi.first.util.struct.Struct;
2020
import edu.wpi.first.wpilibj.DataLogManager;
2121
import edu.wpi.first.wpilibj.DriverStation;

test-project/build.gradle

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
id "java"
3-
id "edu.wpi.first.GradleRIO" version "2025.3.2"
3+
id "edu.wpi.first.GradleRIO2027" version "2027.0.0-alpha-1"
44
id "com.diffplug.spotless" version "8.0.0"
55
}
66

@@ -11,11 +11,11 @@ java {
1111

1212
def ROBOT_MAIN_CLASS = "frc.robot.Main"
1313

14-
// Define my targets (RoboRIO) and artifacts (deployable files)
14+
// Define my targets (SystemCore) and artifacts (deployable files)
1515
// This is added by GradleRIO's backing project DeployUtils.
1616
deploy {
1717
targets {
18-
roborio(getTargetTypeClass('RoboRIO')) {
18+
systemcore(getTargetTypeClass('SystemCore')) {
1919
// Team number is loaded either from the .wpilib/wpilib_preferences.json
2020
// or from command line. If not found an exception will be thrown.
2121
// You can use getTeamOrDefault(team) instead of getTeamNumber if you
@@ -33,14 +33,14 @@ deploy {
3333
// Static files artifact
3434
frcStaticFileDeploy(getArtifactTypeClass('FileTreeArtifact')) {
3535
files = project.fileTree('src/main/deploy')
36-
directory = '/home/lvuser/deploy'
36+
directory = '/home/systemcore/deploy'
3737
}
3838
}
3939
}
4040
}
4141
}
4242

43-
def deployArtifact = deploy.targets.roborio.artifacts.frcJava
43+
def deployArtifact = deploy.targets.systemcore.artifacts.frcJava
4444

4545
// Set to true to use debug for JNI.
4646
wpi.java.debugJni = false
@@ -55,11 +55,11 @@ dependencies {
5555
implementation wpi.java.deps.wpilib()
5656
implementation wpi.java.vendor.java()
5757

58-
roborioDebug wpi.java.deps.wpilibJniDebug(wpi.platforms.roborio)
59-
roborioDebug wpi.java.vendor.jniDebug(wpi.platforms.roborio)
58+
systemcoreDebug wpi.java.deps.wpilibJniDebug(wpi.platforms.systemcore)
59+
systemcoreDebug wpi.java.vendor.jniDebug(wpi.platforms.systemcore)
6060

61-
roborioRelease wpi.java.deps.wpilibJniRelease(wpi.platforms.roborio)
62-
roborioRelease wpi.java.vendor.jniRelease(wpi.platforms.roborio)
61+
systemcoreRelease wpi.java.deps.wpilibJniRelease(wpi.platforms.systemcore)
62+
systemcoreRelease wpi.java.vendor.jniRelease(wpi.platforms.systemcore)
6363

6464
nativeDebug wpi.java.deps.wpilibJniDebug(wpi.platforms.desktop)
6565
nativeDebug wpi.java.vendor.jniDebug(wpi.platforms.desktop)

test-project/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=permwrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

test-project/gradlew

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test-project/gradlew.bat

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test-project/src/main/java/frc/robot/Robot.java

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@
44

55
package frc.robot;
66

7-
import static edu.wpi.first.units.Units.Centimeters;
8-
import static edu.wpi.first.units.Units.Meters;
9-
107
import com.ctre.phoenix6.hardware.TalonFX;
118
import dev.doglog.DogLog;
129
import edu.wpi.first.math.kinematics.SwerveModuleState;
@@ -54,15 +51,6 @@ public void robotPeriodic() {
5451
DogLog.log("Debug/Json", "{\"test\": \"json\"}", "json");
5552

5653
DogLog.log("Tunable/SupplierValue", tunableSupplier.getAsDouble());
57-
58-
DogLog.log("Random/Random", Math.random());
59-
60-
DogLog.log("Units/Height1", 123, "inches");
61-
DogLog.log("Units/Height2", 123, Meters);
62-
DogLog.log("Units/Height3", Centimeters.of(123));
63-
DogLog.log("Units/Height4", 123, "Meter");
64-
DogLog.log("Units/Height5", 123, "meter");
65-
DogLog.log("Units/Height7", motor.getPosition().getValue());
6654
}
6755

6856
@Override
@@ -85,14 +73,10 @@ public void autonomousInit() {
8573
}
8674

8775
DogLog.clearFault("ExampleFault");
88-
89-
DogLog.setOptions(DogLog.getOptions().withUseLogThread(false));
9076
}
9177

9278
@Override
93-
public void autonomousPeriodic() {
94-
DogLog.log("Units/Height6", 123, "ft");
95-
}
79+
public void autonomousPeriodic() {}
9680

9781
@Override
9882
public void autonomousExit() {}
@@ -103,14 +87,10 @@ public void teleopInit() {
10387
m_autonomousCommand.cancel();
10488
}
10589
DogLog.logFault("ExampleFault");
106-
107-
DogLog.setOptions(DogLog.getOptions().withUseLogThread(true));
10890
}
10991

11092
@Override
111-
public void teleopPeriodic() {
112-
DogLog.log("Units/Height6", 123, "meter");
113-
}
93+
public void teleopPeriodic() {}
11494

11595
@Override
11696
public void teleopExit() {}

test-project/src/main/java/frc/robot/RobotContainer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@
1313
public class RobotContainer {
1414
public RobotContainer() {
1515
DogLog.setOptions(new DogLogOptions().withCaptureDs(true));
16-
DogLog.setPdh(new PowerDistribution());
16+
DogLog.setPdh(new PowerDistribution(0));
1717

1818
configureBindings();
1919
}
2020

2121
private void configureBindings() {}
2222

2323
public Command getAutonomousCommand() {
24-
return DogLog.time("Debug/AutoCommand", Commands.waitSeconds(0.75).withName("MyAutoCommand"));
24+
return DogLog.time("Debug/AutoCommand", Commands.wait(0.75).withName("MyAutoCommand"));
2525
}
2626
}

0 commit comments

Comments
 (0)