diff --git a/build.gradle b/build.gradle index 345c00f4..fc993018 100644 --- a/build.gradle +++ b/build.gradle @@ -1,93 +1,78 @@ -buildscript { - ext { - kotlinVersion = '1.3.60' - moshiVersion = '1.8.0' - jettyVersion = '9.4.19.v20190610' - okhttpVersion = '3.12.5' - slf4jVersion = '1.7.28' - logbackVersion = '1.2.3' - kotlinLoggingVersion = '1.7.6' - dokkaVersion = '0.9.18' - junitVersion = '5.+' - jsonAssert = '1.+' - assertJVersion = '3.+' - mockitoVersion = '2.+' - gradleRioVersion = '2019.4.1' - bintrayVersion = '1.+' - spotlessVersion = '3.+' - wpiVersion = '2019.4.1' - } - repositories { - jcenter() - maven { url "https://plugins.gradle.org/m2/" } - } - dependencies { - classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:$bintrayVersion" - classpath "edu.wpi.first:GradleRIO:$gradleRioVersion" - classpath "com.diffplug.spotless:spotless-plugin-gradle:$spotlessVersion" - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" - classpath "org.jetbrains.dokka:dokka-gradle-plugin:$dokkaVersion" - } +plugins { + id "java" + id "idea" + id "maven-publish" + id "org.jetbrains.kotlin.jvm" version "1.3.61" + id "org.jetbrains.kotlin.kapt" version "1.3.61" + id "edu.wpi.first.GradleRIO" version "2020.1.2" } -// applies to all sub-projects -configure(subprojects) { - group = 'org.strykeforce.thirdcoast' - version = '19.5.1' +group = 'org.strykeforce' +version = '20.0.1' - apply plugin: 'java-library' - apply plugin: 'idea' +sourceCompatibility = JavaVersion.VERSION_11 +targetCompatibility = JavaVersion.VERSION_11 - sourceCompatibility = 11 +// Set this to true to enable desktop support. +def includeDesktopSupport = false + +// Defining my dependencies. In this case, WPILib (+ friends), and vendor libraries. +// Also defines JUnit 4. +dependencies { + implementation wpi.deps.wpilib() + nativeZip wpi.deps.wpilibJni(wpi.platforms.roborio) + nativeDesktopZip wpi.deps.wpilibJni(wpi.platforms.desktop) - repositories { - jcenter() - } - dependencies { - implementation "org.slf4j:slf4j-api:$slf4jVersion" + implementation wpi.deps.vendor.java() + nativeZip wpi.deps.vendor.jni(wpi.platforms.roborio) + nativeDesktopZip wpi.deps.vendor.jni(wpi.platforms.desktop) + + implementation "org.jetbrains.kotlin:kotlin-stdlib" + implementation "org.slf4j:slf4j-api:1.7.28" + implementation "org.eclipse.jetty:jetty-server:9.4.19.v20190610" + implementation "com.squareup.okhttp3:okhttp:3.12.5" + implementation "io.github.microutils:kotlin-logging:1.7.6" + implementation "com.squareup.moshi:moshi:1.8.0" + kapt "com.squareup.moshi:moshi-kotlin-codegen:1.8.0" // Testing - testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion" - testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion" - testImplementation "org.assertj:assertj-core:$assertJVersion" - testImplementation "org.mockito:mockito-junit-jupiter:$mockitoVersion" - testRuntime "org.junit.jupiter:junit-jupiter-engine:$junitVersion" - testRuntime "ch.qos.logback:logback-classic:$logbackVersion" - } + testImplementation "org.junit.jupiter:junit-jupiter-params:5.+" + testImplementation "org.junit.jupiter:junit-jupiter-api:5.+" + testImplementation "org.assertj:assertj-core:3.+" + testImplementation "org.mockito:mockito-junit-jupiter:2.+" + testImplementation "org.skyscreamer:jsonassert:1.+" + testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.+" + testRuntimeOnly "ch.qos.logback:logback-classic:1.2.+" - idea { + compileOnly 'org.jetbrains:annotations:15.0' +} + +java { + withSourcesJar() +} + +idea { module { downloadJavadoc = true downloadSources = true } - } - - test { - useJUnitPlatform() - } } -// applies to all sub-projects except for deadeye -configure(subprojects - project(":deadeye")) { - apply plugin: "edu.wpi.first.GradleRIO" - - dependencies { - implementation wpi.deps.wpilib() - implementation wpi.deps.vendor.java() - } -} - -// applies to all Kotlin sub-projects -configure(subprojects - project(":swerve")) { - apply plugin: "kotlin" - apply plugin: "kotlin-kapt" - apply plugin: 'org.jetbrains.dokka' +publishing { + publications { + thirdcoastLibrary(MavenPublication) { + from components.java + } + } - dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion" - implementation "io.github.microutils:kotlin-logging:$kotlinLoggingVersion" - implementation "com.squareup.moshi:moshi:$moshiVersion" - kapt "com.squareup.moshi:moshi-kotlin-codegen:$moshiVersion" - } + repositories { + maven { + url "s3://maven.strykeforce.org/repo" + credentials(AwsCredentials) { + accessKey "${System.getenv('STRYKEFORCE_AWS_KEY')}" + secretKey "${System.getenv('STRYKEFORCE_AWS_SECRET')}" + } + } + } } diff --git a/deadeye/build.gradle b/deadeye/build.gradle deleted file mode 100644 index 98174227..00000000 --- a/deadeye/build.gradle +++ /dev/null @@ -1,23 +0,0 @@ -repositories { - maven { url = "http://first.wpi.edu/FRC/roborio/maven/release" } -} - -dependencies { - implementation("edu.wpi.first.ntcore:ntcore-java:$wpiVersion") -} -// -//task dokkaJavadoc(type: org.jetbrains.dokka.gradle.DokkaTask) { -// includes = ['packages.md'] -// outputDirectory = javadoc.destinationDir -// reportUndocumented = false -//} -// -// -//task javadocJar(type: Jar, dependsOn: dokkaJavadoc) { -// classifier = 'javadoc' -// from javadoc.destinationDir -//} -// -// -//apply from: "${rootDir}/gradle/publish.gradle" // needs to come after javadocJar - diff --git a/deadeye/gradle.properties b/deadeye/gradle.properties deleted file mode 100644 index 277500ab..00000000 --- a/deadeye/gradle.properties +++ /dev/null @@ -1 +0,0 @@ -projectDescription=Third Coast Deadeye library diff --git a/deadeye/packages.md b/deadeye/packages.md deleted file mode 100644 index e69de29b..00000000 diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/Camera.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/Camera.kt deleted file mode 100644 index 7a8987f9..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/Camera.kt +++ /dev/null @@ -1,27 +0,0 @@ -package org.strykeforce.deadeye - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonAdapter -import com.squareup.moshi.JsonClass -import okio.Buffer - -interface Camera { - val id: String - var enabled: Boolean - val error: Boolean - val config: Config - val stream: Stream - var targetDataListener: TargetDataListener? - var jsonAdapter: JsonAdapter - fun parse(buffer: Buffer) - - @JsonClass(generateAdapter = true) - data class Config( - @Json(name = "sn") val serial: Int, val exposure: Double, - val hue: List, @Json(name = "sat") val saturation: List, @Json(name = "val") val value: List - ) - - @JsonClass(generateAdapter = true) - data class Stream(@Json(name = "sn") val serial: Int, val contour: String, val view: String, val url: String) - -} diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/CameraImpl.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/CameraImpl.kt deleted file mode 100644 index 3c40ce10..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/CameraImpl.kt +++ /dev/null @@ -1,54 +0,0 @@ -package org.strykeforce.deadeye - -import com.squareup.moshi.JsonAdapter -import com.squareup.moshi.JsonDataException -import com.squareup.moshi.Moshi -import edu.wpi.first.networktables.NetworkTable -import edu.wpi.first.networktables.NetworkTableInstance -import okio.Buffer - -private const val ON = "On" -private const val OFF = "Off" -private const val ERROR = "Error" -private const val CONFIG = "Config" -private const val STREAM = "Stream" - -internal class CameraImpl(override val id: String) : Camera { - - override var targetDataListener: TargetDataListener? = null - - @Suppress("MemberVisibilityCanBePrivate") - var targetData: TargetData = TargetData("") - - private val table: NetworkTable by lazy { NetworkTableInstance.getDefault().getTable("/Deadeye/${id[0]}/${id[1]}") } - - private val moshi: Moshi by lazy { Moshi.Builder().build() } - - override lateinit var jsonAdapter: JsonAdapter - - override var enabled: Boolean - set(value) { - table.getEntry(if (value) ON else OFF).apply { setBoolean(true) } - } - get() = table.getEntry(ON).getBoolean(false) - - override val error: Boolean - get() = table.getEntry(ERROR).getBoolean(false) - - override val config: Camera.Config - get() = with(table.getEntry(CONFIG).getString("{}")) { - Camera_ConfigJsonAdapter(moshi).fromJson(this) ?: throw JsonDataException("Config: $this") - } - - override val stream: Camera.Stream - get() = with(table.getEntry(STREAM).getString("{}")) { - Camera_StreamJsonAdapter(moshi).fromJson(this) ?: throw JsonDataException("Stream: $this") - } - - override fun parse(buffer: Buffer) { - var targetData = jsonAdapter.fromJson(buffer) ?: throw JsonDataException("parse error") - this.targetData = targetData - targetDataListener?.onTargetData(targetData) - } - -} diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/CenterTargetData.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/CenterTargetData.kt deleted file mode 100644 index 70310819..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/CenterTargetData.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.strykeforce.deadeye - -import com.squareup.moshi.JsonClass - -@JsonClass(generateAdapter = true) -class CenterTargetData( - id: String = "NA", - sn: Int = 0, - valid: Boolean = false, - val x: Double = 0.0, - val y: Double = 0.0 -) : TargetData(id, sn, valid) diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/Deadeye.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/Deadeye.kt deleted file mode 100644 index a53b76a1..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/Deadeye.kt +++ /dev/null @@ -1,67 +0,0 @@ -package org.strykeforce.deadeye - -import com.squareup.moshi.JsonClass -import com.squareup.moshi.JsonDataException -import com.squareup.moshi.Moshi -import edu.wpi.first.networktables.NetworkTable -import edu.wpi.first.networktables.NetworkTableInstance -import okio.Buffer -import java.net.DatagramPacket -import java.net.DatagramSocket -import kotlin.concurrent.thread - -private const val LINK = "Config" - -object Deadeye { - private val cameraCache = mutableMapOf>() - - - private val cameraIds: List - get() = with(NetworkTableInstance.getDefault().getTable("Deadeye")) { - subTables.flatMap { unit -> - getSubTable(unit).subTables.map { "$unit$it" } - } - } - -// val cameras: Collection -// get() { -// cameraIds.filterNot { cameraCache.containsKey(it) }.forEach { cameraCache[it] = CameraImpl(it) } -// return cameraCache.values -// } - - private val table: NetworkTable by lazy { NetworkTableInstance.getDefault().getTable("/Deadeye") } - private val moshi: Moshi by lazy { Moshi.Builder().build() } - - var config: Config - get() = with(table.getEntry(LINK).getString("{}")) { - Deadeye_ConfigJsonAdapter(moshi).fromJson(this) ?: throw JsonDataException("Config: $this") - } - set(value) = with(table.getEntry(LINK)) { - setString(Deadeye_ConfigJsonAdapter(moshi).toJson(value)) - } - - init { - thread(isDaemon = true) { - val socket = DatagramSocket(5800) - val bytes = ByteArray(512) - val buffer = Buffer() - val packet = DatagramPacket(bytes, bytes.size) - - while (true) { - socket.receive(packet) - val id = String(packet.data, 0, 2) - val camera = cameraCache[id] ?: throw JsonDataException("Unrecognized camera id: $id") - buffer.write(packet.data, 2, packet.length - 2) - camera.parse(buffer) - } - } - } - - @Suppress("UNCHECKED_CAST") - fun getCamera(id: String): Camera = cameraCache.getOrPut(id) { CameraImpl(id) } as Camera - - - @JsonClass(generateAdapter = true) - data class Config(val address: String, val port: Int, val enabled: Boolean) - -} diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetData.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetData.kt deleted file mode 100644 index f8bc6a9f..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetData.kt +++ /dev/null @@ -1,10 +0,0 @@ -package org.strykeforce.deadeye - -import com.squareup.moshi.JsonClass - -@JsonClass(generateAdapter = true) -open class TargetData( - val id: String = "NA", - val sn: Int = 0, - val valid: Boolean = false -) diff --git a/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetDataListener.kt b/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetDataListener.kt deleted file mode 100644 index 4e91979e..00000000 --- a/deadeye/src/main/kotlin/org/strykeforce/deadeye/TargetDataListener.kt +++ /dev/null @@ -1,6 +0,0 @@ -package org.strykeforce.deadeye - -@FunctionalInterface -interface TargetDataListener { - fun onTargetData(data: TargetData) -} diff --git a/gradle/publish.gradle b/gradle/publish.gradle index db6a4a04..d38ec2eb 100644 --- a/gradle/publish.gradle +++ b/gradle/publish.gradle @@ -9,7 +9,7 @@ task sourcesJar(type: Jar, dependsOn: classes) { artifacts { archives sourcesJar - archives javadocJar +// archives javadocJar } publishing { @@ -18,7 +18,7 @@ publishing { from components.java artifact sourcesJar - artifact javadocJar +// artifact javadocJar groupId project.group artifactId project.name diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 457aad0d..cc4fdc29 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8ce242a1..893d8033 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Thu Nov 21 13:49:38 EST 2019 -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip +#Wed Jan 08 19:45:35 EST 2020 +distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-all.zip distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionPath=permwrapper/dists +zipStorePath=permwrapper/dists zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index af6708ff..2fe81a7d 100755 --- a/gradlew +++ b/gradlew @@ -1,5 +1,21 @@ #!/usr/bin/env sh +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + ############################################################################## ## ## Gradle start up script for UN*X @@ -28,7 +44,7 @@ APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m"' +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" @@ -109,8 +125,8 @@ if $darwin; then GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" fi -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` JAVACMD=`cygpath --unix "$JAVACMD"` @@ -138,19 +154,19 @@ if $cygwin ; then else eval `echo args$i`="\"$arg\"" fi - i=$((i+1)) + i=`expr $i + 1` done case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; esac fi @@ -159,14 +175,9 @@ save () { for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done echo " " } -APP_ARGS=$(save "$@") +APP_ARGS=`save "$@"` # Collect all arguments for the java command, following the shell quoting and substitution rules eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" -fi - exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index 0f8d5937..24467a14 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome diff --git a/settings.gradle b/settings.gradle index e7f7e6b5..58a36102 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1,28 @@ -rootProject.name = 'thirdcoast' -include 'swerve' -include 'telemetry' -include 'deadeye' +import org.gradle.internal.os.OperatingSystem + +pluginManagement { + repositories { + mavenLocal() + gradlePluginPortal() + String frcYear = '2020' + File frcHome + if (OperatingSystem.current().isWindows()) { + String publicFolder = System.getenv('PUBLIC') + if (publicFolder == null) { + publicFolder = "C:\\Users\\Public" + } + def homeRoot = new File(publicFolder, "wpilib") + frcHome = new File(homeRoot, frcYear) + } else { + def userFolder = System.getProperty("user.home") + def homeRoot = new File(userFolder, "wpilib") + frcHome = new File(homeRoot, frcYear) + } + def frcHomeMaven = new File(frcHome, 'maven') + maven { + name 'frcHome' + url frcHomeMaven + } + } +} + diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDrive.java b/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDrive.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDrive.java rename to src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDrive.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDriveConfig.java b/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDriveConfig.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDriveConfig.java rename to src/main/java/org/strykeforce/thirdcoast/swerve/SwerveDriveConfig.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/swerve/Wheel.java b/src/main/java/org/strykeforce/thirdcoast/swerve/Wheel.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/swerve/Wheel.java rename to src/main/java/org/strykeforce/thirdcoast/swerve/Wheel.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/swerve/package-info.java b/src/main/java/org/strykeforce/thirdcoast/swerve/package-info.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/swerve/package-info.java rename to src/main/java/org/strykeforce/thirdcoast/swerve/package-info.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/talon/Errors.java b/src/main/java/org/strykeforce/thirdcoast/talon/Errors.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/talon/Errors.java rename to src/main/java/org/strykeforce/thirdcoast/talon/Errors.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/util/ExpoScale.java b/src/main/java/org/strykeforce/thirdcoast/util/ExpoScale.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/util/ExpoScale.java rename to src/main/java/org/strykeforce/thirdcoast/util/ExpoScale.java diff --git a/swerve/src/main/java/org/strykeforce/thirdcoast/util/RateLimit.java b/src/main/java/org/strykeforce/thirdcoast/util/RateLimit.java similarity index 100% rename from swerve/src/main/java/org/strykeforce/thirdcoast/util/RateLimit.java rename to src/main/java/org/strykeforce/thirdcoast/util/RateLimit.java diff --git a/swerve/src/main/java/overview.html b/src/main/java/overview.html similarity index 100% rename from swerve/src/main/java/overview.html rename to src/main/java/overview.html diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/AbstractInventory.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/AbstractInventory.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/AbstractInventory.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/AbstractInventory.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/Inventory.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/Inventory.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/Inventory.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/Inventory.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/RobotInventory.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/RobotInventory.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/RobotInventory.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/RobotInventory.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryController.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryController.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryController.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryController.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt similarity index 88% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt index 60ac33a7..b1abd673 100644 --- a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt +++ b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/TelemetryService.kt @@ -1,10 +1,12 @@ package org.strykeforce.thirdcoast.telemetry +import com.ctre.phoenix.motorcontrol.can.TalonFX import com.ctre.phoenix.motorcontrol.can.TalonSRX import mu.KotlinLogging import org.strykeforce.thirdcoast.swerve.SwerveDrive +import org.strykeforce.thirdcoast.talon.TalonFXItem import org.strykeforce.thirdcoast.telemetry.item.Measurable -import org.strykeforce.thirdcoast.telemetry.item.TalonItem +import org.strykeforce.thirdcoast.telemetry.item.TalonSRXItem import java.util.* import java.util.function.Function @@ -97,7 +99,17 @@ class TelemetryService(private val telemetryControllerFactory: Function DoubleSupplier { talonFX.closedLoopTarget } + STATOR_CURRENT -> DoubleSupplier { talonFX.statorCurrent } + SUPPLY_CURRENT -> DoubleSupplier { talonFX.supplyCurrent } + OUTPUT_VOLTAGE -> DoubleSupplier { talonFX.motorOutputVoltage } + OUTPUT_PERCENT -> DoubleSupplier { talonFX.motorOutputPercent } + INTEGRATED_SENSOR_VELOCITY -> DoubleSupplier { sensorCollection.integratedSensorVelocity } + SELECTED_SENSOR_POSITION -> DoubleSupplier { talonFX.selectedSensorPosition.toDouble() } + SELECTED_SENSOR_VELOCITY -> DoubleSupplier { talonFX.selectedSensorVelocity.toDouble() } + ACTIVE_TRAJECTORY_POSITION -> DoubleSupplier { talonFX.activeTrajectoryPosition.toDouble() } + ACTIVE_TRAJECTORY_VELOCITY -> DoubleSupplier { talonFX.activeTrajectoryVelocity.toDouble() } + ACTIVE_TRAJECTORY_ARB_FEED_FWD -> DoubleSupplier { talonFX.activeTrajectoryArbFeedFwd } + CLOSED_LOOP_ERROR -> DoubleSupplier { talonFX.closedLoopError.toDouble() } + BUS_VOLTAGE -> DoubleSupplier { talonFX.busVoltage } + ERROR_DERIVATIVE -> DoubleSupplier { talonFX.errorDerivative } + INTEGRAL_ACCUMULATOR -> DoubleSupplier { talonFX.integralAccumulator } + FORWARD_LIMIT_SWITCH_CLOSED -> DoubleSupplier { sensorCollection.isFwdLimitSwitchClosed.toDouble() } + REVERSE_LIMIT_SWITCH_CLOSED -> DoubleSupplier { sensorCollection.isRevLimitSwitchClosed.toDouble() } + INTEGRATED_SENSOR_POSITION -> DoubleSupplier { sensorCollection.integratedSensorPosition } + INTEGRATED_SENSOR_ABSOLUTE_POSITION -> DoubleSupplier { sensorCollection.integratedSensorAbsolutePosition } + TEMPERATURE -> DoubleSupplier { talonFX.temperature } + else -> DoubleSupplier { 2767.0 } + } + } + + override fun equals(other: Any?): Boolean { + if (this == other) return true + if (javaClass != other?.javaClass) return false + other as TalonFXItem + if (deviceId != other.deviceId) return false + return true + } + + override fun hashCode() = deviceId +} \ No newline at end of file diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonItem.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonSRXItem.kt similarity index 92% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonItem.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonSRXItem.kt index 474c657f..339bfb6d 100644 --- a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonItem.kt +++ b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/TalonSRXItem.kt @@ -4,7 +4,8 @@ import com.ctre.phoenix.motorcontrol.can.TalonSRX import java.util.function.DoubleSupplier internal const val CLOSED_LOOP_TARGET = "CLOSED_LOOP_TARGET" -internal const val OUTPUT_CURRENT = "OUTPUT_CURRENT" +internal const val STATOR_CURRENT = "STATOR_CURRENT" +internal const val SUPPLY_CURRENT = "SUPPLY_CURRENT" internal const val OUTPUT_VOLTAGE = "OUTPUT_VOLTAGE" internal const val OUTPUT_PERCENT = "OUTPUT_PERCENT" internal const val SELECTED_SENSOR_POSITION = "SELECTED_SENSOR_POSITION" @@ -30,7 +31,7 @@ internal const val REVERSE_LIMIT_SWITCH_CLOSED = "REVERSE_LIMIT_SWITCH_CLOSED" internal const val TEMPERATURE = "TEMPERATURE" /** Represents a [TalonSRX] telemetry-enable `Measurable` item. */ -class TalonItem @JvmOverloads constructor( +class TalonSRXItem @JvmOverloads constructor( private val talon: TalonSRX, override val description: String = "TalonSRX ${talon.deviceID}" ) : Measurable { @@ -39,7 +40,8 @@ class TalonItem @JvmOverloads constructor( override val type = "talon" override val measures = setOf( Measure(CLOSED_LOOP_TARGET, "Closed-loop Setpoint (PID 0)"), - Measure(OUTPUT_CURRENT, "Output Current"), + Measure(org.strykeforce.thirdcoast.talon.STATOR_CURRENT, "Stator Current"), + Measure(org.strykeforce.thirdcoast.talon.SUPPLY_CURRENT, "Supply Current"), Measure(OUTPUT_VOLTAGE, "Output Voltage"), Measure(OUTPUT_PERCENT, "Output Percentage"), Measure(SELECTED_SENSOR_POSITION, "Selected Sensor Position (PID 0)"), @@ -72,7 +74,8 @@ class TalonItem @JvmOverloads constructor( override fun measurementFor(measure: Measure): DoubleSupplier { return when (measure.name) { CLOSED_LOOP_TARGET -> DoubleSupplier { talon.getClosedLoopTarget(0) } - OUTPUT_CURRENT -> DoubleSupplier { talon.outputCurrent } + org.strykeforce.thirdcoast.talon.STATOR_CURRENT -> DoubleSupplier { talon.statorCurrent } + org.strykeforce.thirdcoast.talon.SUPPLY_CURRENT -> DoubleSupplier { talon.supplyCurrent } OUTPUT_VOLTAGE -> DoubleSupplier { talon.motorOutputVoltage } OUTPUT_PERCENT -> DoubleSupplier { talon.motorOutputPercent } SELECTED_SENSOR_POSITION -> DoubleSupplier { talon.getSelectedSensorPosition(0).toDouble() } @@ -106,7 +109,7 @@ class TalonItem @JvmOverloads constructor( if (this === other) return true if (javaClass != other?.javaClass) return false - other as TalonItem + other as TalonSRXItem if (deviceId != other.deviceId) return false diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/UltrasonicRangefinderItem.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/UltrasonicRangefinderItem.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/UltrasonicRangefinderItem.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/item/UltrasonicRangefinderItem.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SawtoothSignalGenerator.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SawtoothSignalGenerator.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SawtoothSignalGenerator.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SawtoothSignalGenerator.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SignalGenerator.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SignalGenerator.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SignalGenerator.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SignalGenerator.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SineSignalGenerator.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SineSignalGenerator.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SineSignalGenerator.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SineSignalGenerator.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SquareSignalGenerator.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SquareSignalGenerator.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SquareSignalGenerator.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/SquareSignalGenerator.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/TriangleSignalGenerator.kt b/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/TriangleSignalGenerator.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/TriangleSignalGenerator.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/telemetry/util/TriangleSignalGenerator.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Action.kt b/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Action.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Action.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/trapper/Action.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Activity.kt b/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Activity.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Activity.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/trapper/Activity.kt diff --git a/telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Session.kt b/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Session.kt similarity index 100% rename from telemetry/src/main/kotlin/org/strykeforce/thirdcoast/trapper/Session.kt rename to src/main/kotlin/org/strykeforce/thirdcoast/trapper/Session.kt diff --git a/swerve/src/test/java/org/strykeforce/thirdcoast/swerve/SwerveDriveTest.java b/src/test/java/org/strykeforce/thirdcoast/swerve/SwerveDriveTest.java similarity index 100% rename from swerve/src/test/java/org/strykeforce/thirdcoast/swerve/SwerveDriveTest.java rename to src/test/java/org/strykeforce/thirdcoast/swerve/SwerveDriveTest.java diff --git a/swerve/src/test/java/org/strykeforce/thirdcoast/swerve/WheelTest.java b/src/test/java/org/strykeforce/thirdcoast/swerve/WheelTest.java similarity index 100% rename from swerve/src/test/java/org/strykeforce/thirdcoast/swerve/WheelTest.java rename to src/test/java/org/strykeforce/thirdcoast/swerve/WheelTest.java diff --git a/telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/RobotInventoryTest.java b/src/test/java/org/strykeforce/thirdcoast/telemetry/RobotInventoryTest.java similarity index 100% rename from telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/RobotInventoryTest.java rename to src/test/java/org/strykeforce/thirdcoast/telemetry/RobotInventoryTest.java diff --git a/telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/ResourceHelper.java b/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/ResourceHelper.java similarity index 100% rename from telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/ResourceHelper.java rename to src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/ResourceHelper.java diff --git a/telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/SubscriptionTest.java b/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/SubscriptionTest.java similarity index 100% rename from telemetry/src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/SubscriptionTest.java rename to src/test/java/org/strykeforce/thirdcoast/telemetry/grapher/SubscriptionTest.java diff --git a/telemetry/src/test/resources/inventory.json b/src/test/resources/inventory.json similarity index 100% rename from telemetry/src/test/resources/inventory.json rename to src/test/resources/inventory.json diff --git a/swerve/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml similarity index 100% rename from swerve/src/test/resources/logback-test.xml rename to src/test/resources/logback-test.xml diff --git a/swerve/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker similarity index 100% rename from swerve/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker rename to src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker diff --git a/telemetry/src/test/resources/request.json b/src/test/resources/request.json similarity index 100% rename from telemetry/src/test/resources/request.json rename to src/test/resources/request.json diff --git a/telemetry/src/test/resources/subscription.json b/src/test/resources/subscription.json similarity index 100% rename from telemetry/src/test/resources/subscription.json rename to src/test/resources/subscription.json diff --git a/swerve/src/test/resources/swervedrive_drive_cases.csv b/src/test/resources/swervedrive_drive_cases.csv similarity index 100% rename from swerve/src/test/resources/swervedrive_drive_cases.csv rename to src/test/resources/swervedrive_drive_cases.csv diff --git a/swerve/src/test/resources/wheel_set_cases.csv b/src/test/resources/wheel_set_cases.csv similarity index 100% rename from swerve/src/test/resources/wheel_set_cases.csv rename to src/test/resources/wheel_set_cases.csv diff --git a/swerve/build.gradle b/swerve/build.gradle deleted file mode 100644 index f426481c..00000000 --- a/swerve/build.gradle +++ /dev/null @@ -1,26 +0,0 @@ -apply plugin: 'com.diffplug.gradle.spotless' - -sourceCompatibility = 11 - -dependencies { - compileOnly 'org.jetbrains:annotations:15.0' -} - -javadoc { - title = "Third Coast Swerve Drive Library" - options.overview = "src/main/java/overview.html" -} - -task javadocJar(type: Jar, dependsOn: javadoc) { - classifier = 'javadoc' - from javadoc.destinationDir -} - -spotless { - java { - googleJavaFormat() - target '**/*.java' - } -} - -apply from: "${rootDir}/gradle/publish.gradle" // needs to come after javadocJar \ No newline at end of file diff --git a/swerve/gradle.properties b/swerve/gradle.properties deleted file mode 100644 index 7cdc4f09..00000000 --- a/swerve/gradle.properties +++ /dev/null @@ -1,2 +0,0 @@ -projectDescription=Third Coast swerve drive library - diff --git a/swerve/vendordeps/phoenix.json b/swerve/vendordeps/phoenix.json deleted file mode 100644 index d4da1ceb..00000000 --- a/swerve/vendordeps/phoenix.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "fileName": "Phoenix.json", - "name": "CTRE-Phoenix", - "version": "5.12.0", - "uuid": "ab676553-b602-441f-a38d-f1296eff6537", - "mavenUrls": [ - "http://devsite.ctr-electronics.com/maven/release/" - ], - "jsonUrl": "http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/Phoenix-latest.json", - "javaDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "api-java", - "version": "5.12.0" - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "wpiapi-java", - "version": "5.12.0" - } - ], - "jniDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "cci", - "version": "5.12.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - } - ], - "cppDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "wpiapi-cpp", - "version": "5.12.0", - "libName": "CTRE_Phoenix_WPI", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "api-cpp", - "version": "5.12.0", - "libName": "CTRE_Phoenix", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "cci", - "version": "5.12.0", - "libName": "CTRE_PhoenixCCI", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "core", - "version": "5.12.0", - "libName": "CTRE_PhoenixCore", - "headerClassifier": "headers" - } - ] -} \ No newline at end of file diff --git a/telemetry/build.gradle b/telemetry/build.gradle deleted file mode 100644 index 08c4d16a..00000000 --- a/telemetry/build.gradle +++ /dev/null @@ -1,27 +0,0 @@ -dependencies { - // telemetry - implementation "org.eclipse.jetty:jetty-server:$jettyVersion" - implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" - implementation project(':swerve') - - // unit tests - testImplementation "org.skyscreamer:jsonassert:$jsonAssert" - -} - -task dokkaJavadoc(type: org.jetbrains.dokka.gradle.DokkaTask) { - includes = ['packages.md'] - outputDirectory = javadoc.destinationDir - reportUndocumented = false - externalDocumentationLink { - url = new URL('https://first.wpi.edu/FRC/roborio/release/docs/java/') - } -} - - -task javadocJar(type: Jar, dependsOn: dokkaJavadoc) { - classifier = 'javadoc' - from javadoc.destinationDir -} - -apply from: "${rootDir}/gradle/publish.gradle" // needs to come after javadocJar diff --git a/telemetry/gradle.properties b/telemetry/gradle.properties deleted file mode 100644 index 422b9a74..00000000 --- a/telemetry/gradle.properties +++ /dev/null @@ -1,2 +0,0 @@ -projectDescription=Third Coast telemetry library -kotlin.code.style=official \ No newline at end of file diff --git a/telemetry/packages.md b/telemetry/packages.md deleted file mode 100644 index 7ee04a55..00000000 --- a/telemetry/packages.md +++ /dev/null @@ -1,17 +0,0 @@ -# Module telemetry - -# Package org.strykeforce.thirdcoast.telemetry - -Provides a data streaming service for robot sensors, actuators or subsystems. Documentation for client-server communication is [here](https://strykeforce.github.io/posts/thirdcoast-telemetry/). - -# Package org.strykeforce.thirdcoast.telemetry.item - -Robot sensors, actuators or subsystems that are telemetry-enabled. - -# Package org.strykeforce.thirdcoast.telemetry.grapher - -Support for Third Coast Telemetry Grapher client. - -# Package org.strykeforce.thirdcoast.telemetry.util - -Contains waveform generators for the Telemetry simulator development tool and other utility classes. diff --git a/telemetry/vendordeps/navx.json b/telemetry/vendordeps/navx.json deleted file mode 100644 index 9261700b..00000000 --- a/telemetry/vendordeps/navx.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "fileName": "navx_frc.json", - "name": "KauaiLabs_navX_FRC", - "version": "3.1.344", - "uuid": "cb311d09-36e9-4143-a032-55bb2b94443b", - "mavenUrls": [ - "https://repo1.maven.org/maven2/" - ], - "jsonUrl": "https://www.kauailabs.com/dist/frc/2019/navx_frc.json", - "javaDependencies": [ - { - "groupId": "com.kauailabs.navx.frc", - "artifactId": "navx-java", - "version": "3.1.344" - } - ], - "jniDependencies": [], - "cppDependencies": [ - { - "groupId": "com.kauailabs.navx.frc", - "artifactId": "navx-cpp", - "version": "3.1.344", - "headerClassifier": "headers", - "sourcesClassifier": "sources", - "sharedLibrary": false, - "libName": "navx_frc", - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena" - ] - } - ] -} diff --git a/telemetry/vendordeps/phoenix.json b/telemetry/vendordeps/phoenix.json deleted file mode 100644 index d4da1ceb..00000000 --- a/telemetry/vendordeps/phoenix.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "fileName": "Phoenix.json", - "name": "CTRE-Phoenix", - "version": "5.12.0", - "uuid": "ab676553-b602-441f-a38d-f1296eff6537", - "mavenUrls": [ - "http://devsite.ctr-electronics.com/maven/release/" - ], - "jsonUrl": "http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/Phoenix-latest.json", - "javaDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "api-java", - "version": "5.12.0" - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "wpiapi-java", - "version": "5.12.0" - } - ], - "jniDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "cci", - "version": "5.12.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - } - ], - "cppDependencies": [ - { - "groupId": "com.ctre.phoenix", - "artifactId": "wpiapi-cpp", - "version": "5.12.0", - "libName": "CTRE_Phoenix_WPI", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "api-cpp", - "version": "5.12.0", - "libName": "CTRE_Phoenix", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "cci", - "version": "5.12.0", - "libName": "CTRE_PhoenixCCI", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "linuxathena", - "windowsx86-64", - "linuxx86-64" - ] - }, - { - "groupId": "com.ctre.phoenix", - "artifactId": "core", - "version": "5.12.0", - "libName": "CTRE_PhoenixCore", - "headerClassifier": "headers" - } - ] -} \ No newline at end of file diff --git a/vendordeps/Phoenix.json b/vendordeps/Phoenix.json new file mode 100644 index 00000000..f8d42a42 --- /dev/null +++ b/vendordeps/Phoenix.json @@ -0,0 +1,180 @@ +{ + "fileName": "Phoenix.json", + "name": "CTRE-Phoenix", + "version": "5.17.3", + "uuid": "ab676553-b602-441f-a38d-f1296eff6537", + "mavenUrls": [ + "http://devsite.ctr-electronics.com/maven/release/" + ], + "jsonUrl": "http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/Phoenix-latest.json", + "javaDependencies": [ + { + "groupId": "com.ctre.phoenix", + "artifactId": "api-java", + "version": "5.17.3" + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "wpiapi-java", + "version": "5.17.3" + } + ], + "jniDependencies": [ + { + "groupId": "com.ctre.phoenix", + "artifactId": "cci", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "diagnostics", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "canutils", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "platform-stub", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "core", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + } + ], + "cppDependencies": [ + { + "groupId": "com.ctre.phoenix", + "artifactId": "wpiapi-cpp", + "version": "5.17.3", + "libName": "CTRE_Phoenix_WPI", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "api-cpp", + "version": "5.17.3", + "libName": "CTRE_Phoenix", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "cci", + "version": "5.17.3", + "libName": "CTRE_PhoenixCCI", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "diagnostics", + "version": "5.17.3", + "libName": "CTRE_PhoenixDiagnostics", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "canutils", + "version": "5.17.3", + "libName": "CTRE_PhoenixCanutils", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "platform-stub", + "version": "5.17.3", + "libName": "CTRE_PhoenixPlatform", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "core", + "version": "5.17.3", + "libName": "CTRE_PhoenixCore", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + } + ] +} \ No newline at end of file diff --git a/swerve/vendordeps/navx.json b/vendordeps/navx_frc.json similarity index 77% rename from swerve/vendordeps/navx.json rename to vendordeps/navx_frc.json index 9261700b..82810d34 100644 --- a/swerve/vendordeps/navx.json +++ b/vendordeps/navx_frc.json @@ -1,17 +1,17 @@ { "fileName": "navx_frc.json", "name": "KauaiLabs_navX_FRC", - "version": "3.1.344", + "version": "3.1.400", "uuid": "cb311d09-36e9-4143-a032-55bb2b94443b", "mavenUrls": [ "https://repo1.maven.org/maven2/" ], - "jsonUrl": "https://www.kauailabs.com/dist/frc/2019/navx_frc.json", + "jsonUrl": "https://www.kauailabs.com/dist/frc/2020/navx_frc.json", "javaDependencies": [ { "groupId": "com.kauailabs.navx.frc", "artifactId": "navx-java", - "version": "3.1.344" + "version": "3.1.400" } ], "jniDependencies": [], @@ -19,15 +19,16 @@ { "groupId": "com.kauailabs.navx.frc", "artifactId": "navx-cpp", - "version": "3.1.344", + "version": "3.1.400", "headerClassifier": "headers", "sourcesClassifier": "sources", "sharedLibrary": false, "libName": "navx_frc", "skipInvalidPlatforms": true, "binaryPlatforms": [ - "linuxathena" + "linuxathena", + "linuxraspbian" ] } ] -} +} \ No newline at end of file