[Git][java-team/checker-framework-java][main] 7 commits: Enable shadow jars
Olek Wojnar (@olek)
gitlab at salsa.debian.org
Mon Mar 23 04:15:12 GMT 2026
Olek Wojnar pushed to branch main at Debian Java Maintainers / checker-framework-java
Commits:
69b2f2d1 by Olek Wojnar at 2026-03-22T23:15:31-04:00
Enable shadow jars
- - - - -
deb2d0c6 by Olek Wojnar at 2026-03-22T23:15:31-04:00
Update d/watch to version 5
- - - - -
6338fe3c by Olek Wojnar at 2026-03-22T23:15:31-04:00
Move appropriate Build-Depends to Build-Depends-Indep
- - - - -
2bb3686b by Olek Wojnar at 2026-03-22T23:15:31-04:00
Replace Free Software Foundation address with URL
- - - - -
789473db by Olek Wojnar at 2026-03-22T23:15:31-04:00
Bump standards to 4.7.3: Remove d/control Priority field
- - - - -
95bb1317 by Olek Wojnar at 2026-03-22T23:15:31-04:00
Remove redundant "Rules-Requires-Root: no" in d/control
- - - - -
47293238 by Olek Wojnar at 2026-03-22T23:15:31-04:00
Remove unneeded source lintian override
- - - - -
10 changed files:
- debian/changelog
- debian/control
- debian/copyright
- debian/patches/fix-gradle-build.patch
- debian/patches/fix-javac-21-warnings.patch
- debian/patches/improve-attribute-equals.patch
- + debian/patches/rename-gradle-archiveName.patch
- debian/patches/series
- − debian/source/lintian-overrides
- debian/watch
Changes:
=====================================
debian/changelog
=====================================
@@ -1,12 +1,24 @@
-checker-framework-java (3.2.0+ds-4) UNRELEASED; urgency=medium
+checker-framework-java (3.2.0+ds-4) unstable; urgency=medium
+ [ Vladimir Petko ]
* Cherry-pick upstream patches to resolve Java 25 ftbfs
(LP: #2142432) (Closes: #1128165):
- d/p/improve-attribute-equals.patch
- d/p/java25-compat.patch
- d/p/prevent-duplicate-annotations-in-class-files.patch
- -- Vladimir Petko <vladimir.petko at canonical.com> Wed, 25 Feb 2026 22:31:02 +1300
+ [ Olek Wojnar ]
+ * Enable shadow jars
+ * Update d/watch to version 5
+ * Move appropriate Build-Depends to Build-Depends-Indep
+ - Prevent gbp dependency issues when running `clean`
+ * Replace Free Software Foundation address with URL
+ * Bump standards to 4.7.3: Remove d/control Priority field
+ * Remove redundant "Rules-Requires-Root: no" in d/control
+ * Remove unneeded source lintian override
+ - Previously necessary due to lintian bug that is now fixed
+
+ -- Olek Wojnar <olek at debian.org> Sun, 22 Mar 2026 23:12:44 -0400
checker-framework-java (3.2.0+ds-3) unstable; urgency=medium
=====================================
debian/control
=====================================
@@ -1,22 +1,22 @@
Source: checker-framework-java
Section: java
-Priority: optional
Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
Uploaders:
Olek Wojnar <olek at debian.org>,
Andreas Tille <tille at debian.org>,
Build-Depends:
- bnd,
debhelper-compat (= 13),
+Build-Depends-Indep:
+ bnd,
default-jdk,
gradle-apt-plugin,
gradle-debian-helper,
+ libjengelman-shadow-java,
libgradle-core-java,
libgradle-plugins-java,
libplume-util-java,
maven-repo-helper,
-Standards-Version: 4.6.2
-Rules-Requires-Root: no
+Standards-Version: 4.7.3
Homepage: https://github.com/typetools/checker-framework
Vcs-Browser: https://salsa.debian.org/java-team/checker-framework-java
Vcs-Git: https://salsa.debian.org/java-team/checker-framework-java.git
=====================================
debian/copyright
=====================================
@@ -53,7 +53,7 @@ Copyright: 2004-2020 Checker Framework developers
License: MIT
Files: debian/*
-Copyright: 2020-2023 Olek Wojnar <olek at debian.org>
+Copyright: 2020-2026 Olek Wojnar <olek at debian.org>
License: MIT
License: GPL-2.0-with-classpath-exception
@@ -67,8 +67,7 @@ License: GPL-2.0-with-classpath-exception
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ with this program. If not, see https://www.gnu.org/licenses/.
.
On Debian systems, the full text of the GNU General Public License version 2
can be found in the file `/usr/share/common-licenses/GPL-2'.
=====================================
debian/patches/fix-gradle-build.patch
=====================================
@@ -1,7 +1,7 @@
Description: Allow Gradle to correctly build this package
Author: Olek Wojnar <olek at debian.org>
Forwarded: not-needed
-Last-Update: 2020-07-04
+Last-Update: 2026-03-22
--- a/build.gradle
+++ b/build.gradle
@@ -76,7 +76,7 @@ Last-Update: 2020-07-04
task setLocalRepo(type:Exec) {
commandLine 'git', 'worktree', 'list'
-@@ -80,18 +36,8 @@
+@@ -80,18 +36,15 @@
}
}
@@ -85,17 +85,21 @@ Last-Update: 2020-07-04
- from files("checker/bin-devel/git.post-merge", "checker/bin-devel/git.pre-commit")
- rename('git\\.(.*)', '$1')
- into localRepo + "/hooks"
--}
--
++buildscript {
++ dependencies {
++ classpath 'com.github.jengelman.gradle.plugins:shadow:debian'
++ }
+ }
+
allprojects {
apply plugin: 'java'
-- apply plugin: 'com.github.johnrengelman.shadow'
+ apply plugin: 'com.github.johnrengelman.shadow'
- apply plugin: "de.undercouch.download"
- apply plugin: 'net.ltgt.errorprone'
group 'org.checkerframework'
// Increment the minor version rather than just the patch level if:
-@@ -116,48 +62,8 @@
+@@ -116,48 +69,8 @@
annotationProcessor.exclude group:'org.checkerframework', module:'checker-qual'
}
@@ -144,7 +148,7 @@ Last-Update: 2020-07-04
/// TODO: One day we can enable this. For now, CI jobs require Javadoc on changed lines.
// // Turn Javadoc warnings into errors.
// tasks.withType(Javadoc) {
-@@ -166,7 +72,6 @@
+@@ -166,7 +79,6 @@
// Add standard javac options
tasks.withType(JavaCompile) {
@@ -152,7 +156,7 @@ Last-Update: 2020-07-04
sourceCompatibility = 8
targetCompatibility = 8
// Because the target is 8, all of the public compiler classes are accessible, so
-@@ -211,11 +116,7 @@
+@@ -211,11 +123,7 @@
options.encoding = 'UTF-8'
options.fork = true
@@ -165,7 +169,7 @@ Last-Update: 2020-07-04
}
}
}
-@@ -233,90 +134,8 @@
+@@ -233,90 +141,8 @@
}
}
@@ -195,7 +199,7 @@ Last-Update: 2020-07-04
- '-Xlint:-processing',
- ]
- options.compilerArgs += args
-
+-
- if (isJava8) {
- options.compilerArgs += [
- "-Xbootclasspath/p:${rootDir}/checker/dist/jdk8.jar",
@@ -212,7 +216,7 @@ Last-Update: 2020-07-04
- }
- }
-}
-
+-
-/**
- * Returns a list of all the Java files that should be formatted for the given project. These are:
- *
@@ -239,14 +243,14 @@ Last-Update: 2020-07-04
- javaFiles.add(details.file)
- }
- }
--
+
- // Collect all java files in jtreg directory
- fileTree("${project(projectName).projectDir}/jtregJdk11").visit { details ->
- if (!details.path.contains("nullness-javac-errors") && details.name.endsWith('java')) {
- javaFiles.add(details.file)
- }
- }
--
+
- List<String> args = new ArrayList<>();
- for (File f : javaFiles) {
- args += f.absolutePath
@@ -256,7 +260,7 @@ Last-Update: 2020-07-04
task htmlValidate(type: Exec, group: 'Format') {
description 'Validate that HTML files are well-formed'
-@@ -331,51 +150,6 @@
+@@ -331,51 +157,6 @@
}
@@ -308,7 +312,7 @@ Last-Update: 2020-07-04
/**
* Creates a task named taskName that runs javadoc.
-@@ -387,108 +161,6 @@
+@@ -387,108 +168,6 @@
* passed. Defaults to true.
* @return the new task
*/
@@ -417,7 +421,7 @@ Last-Update: 2020-07-04
task pythonIsInstalled(type: Exec) {
description "Check that the python executable is installed."
-@@ -509,104 +181,15 @@
+@@ -509,104 +188,15 @@
}
subprojects {
@@ -523,7 +527,7 @@ Last-Update: 2020-07-04
metaInf {
from './LICENSE.txt'
}
-@@ -618,10 +201,10 @@
+@@ -618,10 +208,10 @@
manifest {
attributes("Implementation-Version": "${project.version}")
attributes("Implementation-URL": "https://checkerframework.org")
@@ -536,7 +540,7 @@ Last-Update: 2020-07-04
attributes("Bundle-License": "MIT")
} else {
attributes("Bundle-License": "(GPL-2.0-only WITH Classpath-exception-2.0)")
-@@ -629,210 +212,9 @@
+@@ -629,210 +219,9 @@
}
}
@@ -747,7 +751,7 @@ Last-Update: 2020-07-04
task checkBasicStyle(group: 'Format') {
description 'Check basic style guidelines. Not related to Checkstyle tool.'
-@@ -936,7 +318,6 @@
+@@ -936,7 +325,6 @@
assemble.mustRunAfter(clean)
task buildAll {
description 'Build all jar files, including source and javadoc jars'
@@ -767,18 +771,3 @@ Last-Update: 2020-07-04
include 'checker-qual-android'
-include 'framework-test'
-
---- a/dataflow/build.gradle
-+++ b/dataflow/build.gradle
-@@ -3,12 +3,4 @@
- implementation project(':checker-qual')
- }
-
--shadowJar {
-- archiveFileName = "dataflow-shaded.jar"
-- relocate 'org.checkerframework.dataflow', 'org.checkerframework.shaded.dataflow'
-- relocate 'org.checkerframework.javacutil', 'org.checkerframework.shaded.javacutil'
--}
-
--artifacts {
-- archives shadowJar
--}
=====================================
debian/patches/fix-javac-21-warnings.patch
=====================================
@@ -1,5 +1,6 @@
Description: address compiler warnings with Java 21
Author: Pushkar Kulkarni <pushkar.kulkarni at canonical.com>
+Forwarded: not-needed
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1052474
Source: https://salsa.debian.org/java-team/checker-framework-java/-/merge_requests/2
=====================================
debian/patches/improve-attribute-equals.patch
=====================================
@@ -10,8 +10,6 @@ Bug-Ubuntu: https://bugs.launchpad.net/debian/+source/checker-framework-java/+bu
.../javacutil/TypeAnnotationUtils.java | 96 +++++++++++++++----
1 file changed, 78 insertions(+), 18 deletions(-)
-diff --git a/javacutil/src/main/java/org/checkerframework/javacutil/TypeAnnotationUtils.java b/javacutil/src/main/java/org/checkerframework/javacutil/TypeAnnotationUtils.java
-index f497c6580..62b0895cc 100644
--- a/javacutil/src/main/java/org/checkerframework/javacutil/TypeAnnotationUtils.java
+++ b/javacutil/src/main/java/org/checkerframework/javacutil/TypeAnnotationUtils.java
@@ -1,7 +1,6 @@
@@ -22,7 +20,7 @@ index f497c6580..62b0895cc 100644
import com.sun.tools.javac.code.Attribute.TypeCompound;
import com.sun.tools.javac.code.Symbol;
import com.sun.tools.javac.code.Symbol.MethodSymbol;
-@@ -12,7 +11,6 @@ import com.sun.tools.javac.util.Context;
+@@ -12,7 +11,6 @@
import com.sun.tools.javac.util.List;
import com.sun.tools.javac.util.Name;
import com.sun.tools.javac.util.Pair;
@@ -30,7 +28,7 @@ index f497c6580..62b0895cc 100644
import java.util.Arrays;
import java.util.Iterator;
import java.util.Map;
-@@ -24,10 +22,12 @@ import javax.lang.model.element.ElementKind;
+@@ -24,10 +22,12 @@
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.type.ArrayType;
@@ -43,7 +41,7 @@ index f497c6580..62b0895cc 100644
/**
* A collection of helper methods related to type annotation handling.
-@@ -46,12 +46,13 @@ public class TypeAnnotationUtils {
+@@ -46,12 +46,13 @@
*
* @param list the input list of TypeCompounds
* @param tc the TypeCompound to find
@@ -58,7 +56,7 @@ index f497c6580..62b0895cc 100644
return true;
}
}
-@@ -63,14 +64,15 @@ public class TypeAnnotationUtils {
+@@ -63,14 +64,15 @@
*
* @param tc1 the first TypeCompound to compare
* @param tc2 the second TypeCompound to compare
@@ -76,7 +74,7 @@ index f497c6580..62b0895cc 100644
&& isSameTAPositionExceptTreePos(tc1.position, tc2.position);
}
-@@ -81,12 +83,17 @@ public class TypeAnnotationUtils {
+@@ -81,12 +83,17 @@
* @param n2 the second Name to compare
* @return true if the two names represent the same string
*/
@@ -99,7 +97,7 @@ index f497c6580..62b0895cc 100644
}
/**
-@@ -95,13 +102,15 @@ public class TypeAnnotationUtils {
+@@ -95,13 +102,15 @@
*
* @param values1 the first {@code values} field
* @param values2 the second {@code values} field
@@ -116,7 +114,7 @@ index f497c6580..62b0895cc 100644
if (values1.size() != values2.size()) {
return false;
}
-@@ -111,7 +120,7 @@ public class TypeAnnotationUtils {
+@@ -111,7 +120,7 @@
iter1.hasNext(); ) {
Pair<MethodSymbol, Attribute> pair1 = iter1.next();
Pair<MethodSymbol, Attribute> pair2 = iter2.next();
@@ -125,7 +123,7 @@ index f497c6580..62b0895cc 100644
return false;
}
}
-@@ -119,18 +128,69 @@ public class TypeAnnotationUtils {
+@@ -119,18 +128,69 @@
}
/**
@@ -201,6 +199,3 @@ index f497c6580..62b0895cc 100644
} else {
return a1.equals(a2);
}
---
-2.51.0
-
=====================================
debian/patches/rename-gradle-archiveName.patch
=====================================
@@ -0,0 +1,16 @@
+Description: Rename 'archiveFileName' to 'archiveName' for Gradle 4
+Author: Olek Wojnar <olek at debian.org>
+Forwarded: not-needed
+Last-Update: 2026-03-22
+
+--- a/dataflow/build.gradle
++++ b/dataflow/build.gradle
+@@ -4,7 +4,7 @@
+ }
+
+ shadowJar {
+- archiveFileName = "dataflow-shaded.jar"
++ archiveName = "dataflow-shaded.jar"
+ relocate 'org.checkerframework.dataflow', 'org.checkerframework.shaded.dataflow'
+ relocate 'org.checkerframework.javacutil', 'org.checkerframework.shaded.javacutil'
+ }
=====================================
debian/patches/series
=====================================
@@ -5,3 +5,4 @@ fix-javac-21-warnings.patch
prevent-duplicate-annotations-in-class-files.patch
java25-compat.patch
improve-attribute-equals.patch
+rename-gradle-archiveName.patch
=====================================
debian/source/lintian-overrides deleted
=====================================
@@ -1,3 +0,0 @@
-# Image file affected by:
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1014255
-very-long-line-length-in-source-file
=====================================
debian/watch
=====================================
@@ -1,5 +1,8 @@
-version=4
+Version: 5
-opts="repack, repacksuffix=+ds, dversionmangle=auto" \
- https://github.com/typetools/checker-framework/tags?after=checker-framework-3.7.1 \
- .*/checker-framework-(\d[\d.]*)\.tar\.gz
+Template: Github
+Dversionmangle: auto
+Owner: typetools
+Project: checker-framework
+Repack: yes
+Repacksuffix: +ds
View it on GitLab: https://salsa.debian.org/java-team/checker-framework-java/-/compare/e30039b8b55bc800494f97deb2326fbe16594fbc...472932383f653327bf19d9108cd94f0dc7172947
--
View it on GitLab: https://salsa.debian.org/java-team/checker-framework-java/-/compare/e30039b8b55bc800494f97deb2326fbe16594fbc...472932383f653327bf19d9108cd94f0dc7172947
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20260323/0f68b266/attachment.htm>
More information about the pkg-java-commits
mailing list