Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates for typetools/checker-framework 3.39.0 release #3

Merged
merged 23 commits into from
Oct 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
0701457
Update checkerFrameworkVersion to v3.37.0 (#235)
renovate[bot] Aug 2, 2023
28f153b
Update plugin org.checkerframework to v0.6.30 (#236)
renovate[bot] Aug 2, 2023
321e383
Update dependency com.google.errorprone:error_prone_core to v2.21.0 (…
renovate[bot] Aug 2, 2023
2e7a719
Update dependency com.google.errorprone:error_prone_core to v2.21.1 (…
renovate[bot] Aug 5, 2023
818a707
Update dependency gradle to v8.3 (#239)
renovate[bot] Aug 17, 2023
f5bc773
Update plugin org.checkerframework to v0.6.31 (#240)
renovate[bot] Aug 25, 2023
a8a3ce8
Update plugin org.checkerframework to v0.6.32 (#241)
renovate[bot] Aug 29, 2023
1704ba8
Update plugin com.diffplug.spotless to v6.21.0 (#242)
renovate[bot] Aug 29, 2023
56f26c8
Fixing dead (404) `manage-git-clones` link (#243)
jyoo980 Aug 31, 2023
eaa3eb7
Update plugin org.checkerframework to v0.6.33 (#244)
renovate[bot] Sep 2, 2023
0664243
Update checkerFrameworkVersion to v3.38.0 (#245)
renovate[bot] Sep 2, 2023
cdcb9bc
Update actions/checkout action to v4 (#246)
renovate[bot] Sep 5, 2023
a00d5db
Don't support Java 8
mernst Sep 8, 2023
5335efe
Compile under Java 21
mernst Sep 11, 2023
c248901
Suppress this-escape warnings
smillst Sep 19, 2023
16d0425
Update dependency com.google.errorprone:error_prone_core to v2.22.0 (…
renovate[bot] Sep 22, 2023
9520cf0
Update plugin com.diffplug.spotless to v6.22.0 (#251)
renovate[bot] Sep 30, 2023
7bba041
Update plugin org.checkerframework to v0.6.34 (#252)
renovate[bot] Oct 3, 2023
fff6428
Update checkerFrameworkVersion to v3.39.0 (#253)
renovate[bot] Oct 3, 2023
90c8538
Update dependency com.google.errorprone:error_prone_core to v2.23.0 (…
renovate[bot] Oct 19, 2023
f63fb35
Merge branch 'master' of https://github.com/plume-lib/multi-version-c…
wmdietl Oct 20, 2023
66c78ae
Upgrade to gradle 8.4
wmdietl Oct 20, 2023
8286f8c
Test on JDK 21
wmdietl Oct 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ jobs:

strategy:
matrix:
java: [ '11', '17', '19' ]
java: [ '11', '17', '21' ]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK
uses: actions/setup-java@v3
with:
Expand Down
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ cache:
- $HOME/.m2/

jdk:
- oraclejdk8
- oraclejdk17

script: ./gradlew build javadoc check

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,6 @@ Add to your shell startup file, such as `~/.profile`:
alias mvc='java -ea -cp SOME_DIRECTORY/multi-version-control/build/libs/multi-version-control-all.jar org.plumelib.multiversioncontrol.MultiVersionControl'
```

## Other scripts for managing multiple git clones
## Other scripts for managing multiple git clones and branches

See the scripts in [manage-git-clones](https://github.com/plume-lib/manage-git-clones).
See the scripts in [manage-git-branches](https://github.com/plume-lib/manage-git-branches).
35 changes: 16 additions & 19 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,24 @@ plugins {

// Code formatting; defines targets "spotlessApply" and "spotlessCheck"
// Requires JDK 11 or higher; the plugin crashes under JDK 8.
id 'com.diffplug.spotless' version '6.20.0'
id 'com.diffplug.spotless' version '6.22.0'

// Error Prone linter
id('net.ltgt.errorprone') version '3.1.0'

// Checker Framework pluggable type-checking
id 'org.checkerframework' version '0.6.29'
id 'org.checkerframework' version '0.6.34'
}

repositories {
mavenCentral()
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
}

ext {
isJava21orHigher = JavaVersion.current() >= JavaVersion.VERSION_21
}

dependencies {
implementation 'org.apache.commons:commons-exec:1.3'
implementation 'org.ini4j:ini4j:0.5.4'
Expand All @@ -33,13 +37,8 @@ application {
mainClass = 'org.plumelib.multiversioncontrol.MultiVersionControl'
}

if (JavaVersion.current().compareTo(org.gradle.api.JavaVersion.VERSION_20) < 0) {
sourceCompatibility = 1.8
targetCompatibility = 1.8
} else {
sourceCompatibility = 11
targetCompatibility = 11
}
sourceCompatibility = 11
targetCompatibility = 11


spotless {
Expand Down Expand Up @@ -69,18 +68,20 @@ spotless {
/// Error Prone linter

dependencies {
errorprone('com.google.errorprone:error_prone_core:2.20.0')
errorprone('com.google.errorprone:error_prone_core:2.23.0')
}
tasks.withType(JavaCompile).configureEach {
// "-processing" avoids javac warning "No processor claimed any of these annotations".
// "-options" is because starting in JDK 20, javac warns about using -source 8.
options.compilerArgs << '-Xlint:all,-processing,-options' << '-Werror'
if (isJava21orHigher) {
options.compilerArgs << '-Xlint:-this-escape,-options'
}
options.errorprone {
enabled = JavaVersion.current() != JavaVersion.VERSION_1_8
disable('ReferenceEquality') // Use Interning Checker instead.
}
options.forkOptions.jvmArgs += '-Xmx2g'
options.release = 8
options.release = 11
}

/// Checker Framework pluggable type-checking
Expand Down Expand Up @@ -122,7 +123,7 @@ checkerFramework {
// To use a snapshot version of the Checker Framework.
if (false) {
// TODO: change the above test to false when CF is released
ext.checkerFrameworkVersion = '3.37.0-eisop-SNAPSHOT'
ext.checkerFrameworkVersion = '3.39.0-eisop-SNAPSHOT'
dependencies {
compileOnly "io.github.eisop:checker-qual:${checkerFrameworkVersion}"
testCompileOnly "io.github.eisop:checker-qual:${checkerFrameworkVersion}"
Expand All @@ -148,9 +149,7 @@ if (project.hasProperty('cfLocal')) {
javadoc {
options.addStringOption('Xwerror', '-Xdoclint:all')
options.addStringOption('private', '-quiet')
if (JavaVersion.current().compareTo(org.gradle.api.JavaVersion.VERSION_1_9) >= 0) {
options.addStringOption('source', '8')
}
options.addStringOption('source', '11')
doLast {
ant.replaceregexp(match:"@import url\\('resources/fonts/dejavu.css'\\);\\s*", replace:'',
flags:'g', byline:true) {
Expand All @@ -165,9 +164,7 @@ task javadocWeb(type: Javadoc) {
source = sourceSets.main.allJava
destinationDir = file("/cse/web/research/plumelib/${project.name}/api")
classpath = project.sourceSets.main.compileClasspath
if (JavaVersion.current().compareTo(org.gradle.api.JavaVersion.VERSION_1_9) >= 0) {
options.addStringOption('source', '8')
}
options.addStringOption('source', '11')
doLast {
ant.replaceregexp(match:"@import url\\('resources/fonts/dejavu.css'\\);\\s*", replace:'',
flags:'g', byline:true) {
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
17 changes: 9 additions & 8 deletions gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,8 @@ done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit

# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
Expand Down Expand Up @@ -144,15 +145,15 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
Expand Down Expand Up @@ -201,11 +202,11 @@ fi
# 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" "-Xms64m"'

# Collect all arguments for the java command;
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
# shell script including quotes and variable substitutions, so put them in
# double quotes to make sure that they get re-expanded; and
# * put everything else in single quotes, so that it's not re-expanded.
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.

set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2013,8 +2013,7 @@ int perform_command(ProcessBuilder pb, List<Replacer> replacers, boolean showNor
// Filter then print the output.
String output;
try {
@SuppressWarnings("DefaultCharset") // JDK 8 version does not accept UTF_8 argument
String tmpOutput = outStream.toString();
String tmpOutput = outStream.toString(UTF_8);
output = tmpOutput;
} catch (RuntimeException e) {
throw new Error("Exception getting process standard output");
Expand Down