Skip to content

extract quickfixj-class-pruner-maven-plugin into standalone repository#1184

Merged
chrjohn merged 4 commits into
masterfrom
copilot/create-class-pruner-plugin-repo
May 4, 2026
Merged

extract quickfixj-class-pruner-maven-plugin into standalone repository#1184
chrjohn merged 4 commits into
masterfrom
copilot/create-class-pruner-plugin-repo

Conversation

Copilot AI commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

The class pruner plugin has no dependencies on other quickfixj modules, making it a clean candidate for extraction into its own repository. This PR prepares both the plugin module and the main repo for that split.

Plugin directory — ready for independent repo

  • pom.xml made fully standalone: <parent> removed, all dependency/plugin versions inlined, full metadata added (<scm>, <licenses>, <developers>, <issueManagement>, <distributionManagement>), release/sign/java-8-compilation profiles added. Version set to 1.0.0-SNAPSHOT.
  • .gitignore and LICENSE copied from repo root.
  • .github/workflows/maven.yml added: CI on ubuntu + macOS-14 across JDK 8/11/21.

Main repo — decoupled from plugin

  • quickfixj-class-pruner-maven-plugin removed from root <modules>.
  • class-pruner-plugin.version=1.0.0-SNAPSHOT property added to root pom.xml; plugin version managed via <pluginManagement>.
  • All 9 messages modules (fix40fixlatest) and quickfixj-distribution updated to reference ${class-pruner-plugin.version} instead of ${project.version}.
  • nightly-build.yml snapshot deployment list updated to remove quickfixj-class-pruner-maven-plugin.

Remaining manual steps

  1. Create quickfix-j/quickfixj-class-pruner-maven-plugin GitHub repository.
  2. Move the quickfixj-class-pruner-maven-plugin/ directory contents into it.
  3. Publish 1.0.0-SNAPSHOT (or tag 1.0.0) to Maven Central / GitHub Packages.
  4. Remove the quickfixj-class-pruner-maven-plugin/ directory from this repo.

- Make plugin pom.xml standalone: remove parent, inline all dependency
  and plugin versions, add full project metadata (SCM, licenses,
  developers, issueManagement, distributionManagement), add release/sign
  profiles and pluginManagement for source/javadoc/gpg/nexus
- Add .gitignore and LICENSE to plugin directory
- Add .github/workflows/maven.yml CI workflow for standalone plugin
- Remove quickfixj-class-pruner-maven-plugin from root pom.xml modules list
- Add class-pruner-plugin.version=1.0.0-SNAPSHOT property to root pom.xml
- Add pluginManagement entry for class-pruner-plugin in root pom.xml
- Update all 9 messages modules to use ${class-pruner-plugin.version}
- Update quickfixj-distribution to use ${class-pruner-plugin.version}
- Remove class-pruner from nightly-build.yml snapshot deployment list

Agent-Logs-Url: https://github.com/quickfix-j/quickfixj/sessions/33a4674d-68d4-40ba-bf6b-ce3522ed53d1

Co-authored-by: chrjohn <6644028+chrjohn@users.noreply.github.com>
@chrjohn chrjohn added this to the QFJ 3.0.1 milestone May 1, 2026
@chrjohn chrjohn changed the title feat: extract quickfixj-class-pruner-maven-plugin into standalone repository extract quickfixj-class-pruner-maven-plugin into standalone repository May 4, 2026
@chrjohn chrjohn linked an issue May 4, 2026 that may be closed by this pull request
@chrjohn chrjohn marked this pull request as ready for review May 4, 2026 16:02
@chrjohn chrjohn merged commit 7506fe8 into master May 4, 2026
29 of 49 checks passed
@chrjohn chrjohn deleted the copilot/create-class-pruner-plugin-repo branch May 4, 2026 16:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Class pruner plugin keeps project from building in some IDEs

2 participants