From b3859812be060fe4f2642d803155840415f211f7 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Thu, 29 Oct 2026 16:43:51 +0000 Subject: [PATCH 01/15] Compile with --release 8 and update compiler plugin Update maven-compiler-plugin to 3.14.1 and replace source/target with release, so the code is compiled against the Java 8 API instead of the JDK's. This removes the warnings about Applet and finalize() being deprecated for removal. Suppress the notice that Java 8 is obsolete on newer JDKs. --- pom.xml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index ab9b996..3c6ac53 100644 --- a/pom.xml +++ b/pom.xml @@ -57,7 +57,7 @@ - 1.8 + 8 UTF-8 warning @@ -87,7 +87,7 @@ org.apache.maven.plugins maven-compiler-plugin - 2.3.2 + 3.14.1 org.apache.maven.plugins @@ -134,8 +134,11 @@ org.apache.maven.plugins maven-compiler-plugin - ${javaVersion} - ${javaVersion} + ${javaVersion} + + + -Xlint:-options + From d6d81abb6c732d88a4e7d1a9f7e1d72ae42bee53 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Thu, 29 Oct 2026 16:57:51 +0000 Subject: [PATCH 02/15] Update jar, resources, source and shade plugins Update maven-jar-plugin to 3.5.1, maven-resources-plugin to 3.5.0, maven-source-plugin to 3.4.0 and maven-shade-plugin to 3.6.2. Exclude MANIFEST.MF from shading, as it is generated by the manifest transformer, to avoid overlapping resource warnings. Built jars have the same contents as before. --- flexdock-demo/pom.xml | 11 ++++++++++- pom.xml | 6 +++--- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/flexdock-demo/pom.xml b/flexdock-demo/pom.xml index 4edaf87..100404f 100644 --- a/flexdock-demo/pom.xml +++ b/flexdock-demo/pom.xml @@ -60,7 +60,7 @@ org.apache.maven.plugins maven-shade-plugin - 2.4.3 + 3.6.2 package @@ -68,6 +68,15 @@ shade + + + *:* + + + META-INF/MANIFEST.MF + + + org.flexdock.demos.AllDemos diff --git a/pom.xml b/pom.xml index 3c6ac53..f396aea 100644 --- a/pom.xml +++ b/pom.xml @@ -92,7 +92,7 @@ org.apache.maven.plugins maven-resources-plugin - 2.5 + 3.5.0 org.apache.maven.plugins @@ -112,7 +112,7 @@ org.apache.maven.plugins maven-jar-plugin - 2.3.1 + 3.5.1 org.apache.maven.plugins @@ -173,7 +173,7 @@ org.apache.maven.plugins maven-source-plugin - 3.0.1 + 3.4.0 attach-sources From 9b6b2e24484cc75b3fabcafb667182bbbd0c90e3 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Thu, 29 Oct 2026 16:57:51 +0000 Subject: [PATCH 03/15] Declare skinlf only in modules that use it The root pom declared skinlf for all modules, but only core and view use it. Remove it from the root and declare it in view, which used it implicitly. Core already declares it. Built jars have the same contents as before. --- flexdock-view/pom.xml | 5 +++++ pom.xml | 8 -------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/flexdock-view/pom.xml b/flexdock-view/pom.xml index 1da727e..2e224af 100644 --- a/flexdock-view/pom.xml +++ b/flexdock-view/pom.xml @@ -26,5 +26,10 @@ 1.3 jar + + net.sf.squirrel-sql.thirdparty-non-maven + skinlf + 6.7 + diff --git a/pom.xml b/pom.xml index f396aea..600344c 100644 --- a/pom.xml +++ b/pom.xml @@ -63,14 +63,6 @@ warning - - - net.sf.squirrel-sql.thirdparty-non-maven - skinlf - 6.7 - - - From eb4db72bdf655a520dc75b75974b0766528235bb Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Thu, 29 Oct 2026 22:26:47 +0000 Subject: [PATCH 04/15] Enforce minimum JDK and Maven versions Require JDK 21+ because the checkstyle engine needs it, and Maven 3.6.3+ as needed by the compiler plugin. Pin the enforcer plugin version, as used by the parent POM, in pluginManagement. Document the requirements in README-BUILD.md. --- README-BUILD.md | 6 ++---- pom.xml | 29 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/README-BUILD.md b/README-BUILD.md index 7e4e94b..7de4d7c 100644 --- a/README-BUILD.md +++ b/README-BUILD.md @@ -1,10 +1,8 @@ Building Flexdock -------------------------- -To build this project, obtain a copy of Apache's Maven from -https://maven.apache.org. We recommend to use version 3.0 or later. -Building requires JDK 21 or later (needed by the Checkstyle version used in the -build). The compiled classes still target Java 8. +To build this project you need JDK 21+ and Maven 3.6.3+. +The resulting jars target Java 8. From this directory you should be able to build everything by running the command diff --git a/pom.xml b/pom.xml index 600344c..b37ab83 100644 --- a/pom.xml +++ b/pom.xml @@ -81,6 +81,11 @@ maven-compiler-plugin 3.14.1 + + org.apache.maven.plugins + maven-enforcer-plugin + 1.2 + org.apache.maven.plugins maven-resources-plugin @@ -121,6 +126,30 @@ + + + org.apache.maven.plugins + maven-enforcer-plugin + + + enforce-build-environment + + enforce + + + + + [3.6.3,) + + + + [21,) + + + + + + org.apache.maven.plugins From b6963add0a15643523c27366bd65d52acb720b49 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Mon, 2 Nov 2026 10:45:56 +0000 Subject: [PATCH 05/15] Run CI on JDK 21 and newer The checkstyle engine requires JDK 21 to run, so JDK 11 and 17 can no longer build the project. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 676fff5..91c7fb2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - java: [ 11, 17, 21, 25, 27 ] + java: [ 21, 25, 27 ] include: - os: windows-latest java: 21 From a37e9efe6367e48fc9f9ec5e14fd28c220ce8f7f Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 09:42:00 +0000 Subject: [PATCH 06/15] Drop oss-parent and update enforcer plugin The Sonatype oss-parent 9 is the last release and is deprecated. It forced maven-enforcer-plugin 1.2 and added a Maven 2.1/2.2 check that is superseded by the existing Maven version rule. Nothing in the build uses its distribution management or release profile. Remove the parent and update the enforcer plugin to 3.7.0. --- pom.xml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index b37ab83..0623266 100644 --- a/pom.xml +++ b/pom.xml @@ -3,12 +3,6 @@ 4.0.0 - - org.sonatype.oss - oss-parent - 9 - - org.flexdock flexdock 1.3 @@ -84,7 +78,7 @@ org.apache.maven.plugins maven-enforcer-plugin - 1.2 + 3.7.0 org.apache.maven.plugins From 44f761c5b42c1309c6d4bbf582d7179bdda8f0dc Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 12:46:42 +0000 Subject: [PATCH 07/15] Pin surefire, clean, install and deploy plugins These plugins got their versions from the Maven super-POM defaults, which depend on the Maven version in use. Pin them in pluginManagement for reproducible builds. --- pom.xml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/pom.xml b/pom.xml index 0623266..cc74be6 100644 --- a/pom.xml +++ b/pom.xml @@ -85,6 +85,26 @@ maven-resources-plugin 3.5.0 + + org.apache.maven.plugins + maven-surefire-plugin + 3.6.1 + + + org.apache.maven.plugins + maven-clean-plugin + 3.5.0 + + + org.apache.maven.plugins + maven-install-plugin + 3.1.4 + + + org.apache.maven.plugins + maven-deploy-plugin + 3.1.4 + org.apache.maven.plugins maven-release-plugin From 6d1f3e33e8770709ab84f6f83b756911b3e6137a Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 12:47:05 +0000 Subject: [PATCH 08/15] Update compiler plugin to 3.16.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index cc74be6..7627692 100644 --- a/pom.xml +++ b/pom.xml @@ -73,7 +73,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.14.1 + 3.16.0 org.apache.maven.plugins From 86b7f554a4481cb4daeb3b8bc678963f33dbc97c Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 12:49:43 +0000 Subject: [PATCH 09/15] Update bundle plugin to 6.2.0 Disable import of java.* packages and the execution environment requirement, which the newer bnd adds by default, to keep the generated manifests as before. The remaining differences are that the demo no longer imports org.flexdock.docking.adapter, as it only uses a compile-time constant from it, and that Implementation-Vendor-Id is no longer present in the jar manifests. --- pom.xml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7627692..88d11e8 100644 --- a/pom.xml +++ b/pom.xml @@ -193,8 +193,15 @@ org.apache.felix maven-bundle-plugin - 2.3.7 + 6.2.0 true + + + + <_noimportjava>true + <_noee>true + + bundle-manifest From 02baec46179569a796523a42d27dd231fdae6312 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 12:56:26 +0000 Subject: [PATCH 10/15] Remove unused plugin versions from pluginManagement The site, scm, release, wagon and svn provider plugins are not bound to the build. They were left from the Subversion and java.net setup and the project is now built and released without them. --- pom.xml | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/pom.xml b/pom.xml index 88d11e8..db0f803 100644 --- a/pom.xml +++ b/pom.xml @@ -60,16 +60,6 @@ - - org.apache.maven.plugins - maven-site-plugin - 2.2 - - - org.apache.maven.plugins - maven-scm-plugin - 1.5 - org.apache.maven.plugins maven-compiler-plugin @@ -105,21 +95,6 @@ maven-deploy-plugin 3.1.4 - - org.apache.maven.plugins - maven-release-plugin - 2.1 - - - org.codehaus.mojo - wagon-maven-plugin - 1.0-beta-3 - - - org.apache.maven.scm - maven-scm-provider-svnexe - 1.4 - org.apache.maven.plugins maven-jar-plugin From e61db38f5daf15f95c5723a4ca3634e98cbc8054 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 12:56:49 +0000 Subject: [PATCH 11/15] Remove reporting section It configured 2010-era reporting plugins (project info reports, jxr, javadoc, findbugs) that are only used by mvn site, which the project does not seem to use. --- pom.xml | 61 --------------------------------------------------------- 1 file changed, 61 deletions(-) diff --git a/pom.xml b/pom.xml index db0f803..e03258c 100644 --- a/pom.xml +++ b/pom.xml @@ -224,65 +224,4 @@ - - - - org.apache.maven.plugins - maven-project-info-reports-plugin - 2.2 - - - - index - summary - dependencies - project-team - license - issue-tracking - mailing-list - scm - - - - - false - - - - org.apache.maven.plugins - maven-jxr-plugin - 2.2 - - true - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.7 - - true - false - - https://docs.oracle.com/javase/8/docs/api/ - public - - - - - - javadoc - - - - - - org.codehaus.mojo - findbugs-maven-plugin - 2.3.1 - - - - From 9d0a85321d75499fa08e82211f3f47b375140a93 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 13:00:46 +0000 Subject: [PATCH 12/15] Update install and deploy plugins to 3.2.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e03258c..7fb5f49 100644 --- a/pom.xml +++ b/pom.xml @@ -88,12 +88,12 @@ org.apache.maven.plugins maven-install-plugin - 3.1.4 + 3.2.0 org.apache.maven.plugins maven-deploy-plugin - 3.1.4 + 3.2.0 org.apache.maven.plugins From 05406c1396cbd2c7750d6c15d6fe313cf1d68dbb Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 13:01:19 +0000 Subject: [PATCH 13/15] Update checkstyle to 14.4.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7fb5f49..fc39bb2 100644 --- a/pom.xml +++ b/pom.xml @@ -108,7 +108,7 @@ com.puppycrawl.tools checkstyle - 14.3.0 + 14.4.0 From 4079ba493b18e5583920bbc137dab9dca05adfb0 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 13:03:02 +0000 Subject: [PATCH 14/15] Update JUnit to 6.1.3 JUnit 6 requires Java 17 or newer at test runtime, which is satisfied as the build already requires JDK 21. --- flexdock-perspective/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flexdock-perspective/pom.xml b/flexdock-perspective/pom.xml index 8157b89..c0f0dfe 100644 --- a/flexdock-perspective/pom.xml +++ b/flexdock-perspective/pom.xml @@ -23,7 +23,7 @@ org.junit.jupiter junit-jupiter - 5.14.4 + 6.1.3 test From 1071c161660d909126a2f08e48aa5f64a17596b5 Mon Sep 17 00:00:00 2001 From: Danil Sokolov Date: Tue, 3 Nov 2026 13:01:19 +0000 Subject: [PATCH 15/15] Remove stale dockbar entry from .gitignore The flexdock-dockbar module no longer exists. --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 4d781b4..0bf25c0 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,4 @@ /flexdock-view/target/ /flexdock-drag/target/ /flexdock-perspective/target/ -/flexdock-dockbar/target/ flexdock-demo/dependency-reduced-pom.xml