Repository navigation
[#60] Build and validate an explicit JPMS module from Java 8 - #122
Open
peter-lawrey wants to merge 3 commits into
Open
peter-lawrey wants to merge 3 commits into
peter-lawrey wants to merge 3 commits into
Conversation
Member
Author
This was referenced Aug 21, 2026
|
It is totally fine as a start |
Base automatically changed from
feat/Zero-Allocation-Hashing-60-review-pr-107-for-compatibility-ci
to
develop
September 9, 2026 15:02
peter-lawrey
marked this pull request as ready for review
September 11, 2026 18:34
Preserve Benjamin Marwell's original signed #107 commit as a parent, and consolidate Peter Lawrey's #122/#123 integration and the local review corrections against the existing comparison base. Remove redundant manifest settings: source-removal controls retain the final multi-release flag and all library class bytes. Derive the repeat-package harness JAR name from project coordinates so normal version bumps retain the paired overwrite regression. Keep the Java 8 classes, Java 9 descriptor, public API, pinned inputs and contributor fixtures. Original commits and exact mappings are retained in the operator receipt and archive-reviewed-r0003 branch. Co-authored-by: Peter Lawrey <peter.lawrey@chronicle.software>
peter-lawrey
force-pushed
the
feature/60-explicit-jpms-module
branch
from
October 4, 2026 22:38
76ce46f to
b373003
Compare
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Build an explicit
net.openhft.hashingdescriptor on Java 8 and validate the retained JAR on later class paths and module paths. This retains the Stages 2 and 3 work from #60, including the #123 implementation. The hashing algorithms are unchanged by this increment.The history now contains bmarwell's original signed #107 commit (
cdbdc506) unchanged and one consolidated integration commit (b373003). The comparison base remains4e721919a6eace335ce5921dfa4bde590ab1697f; the #123 implementation is retained. The existing Build/Sonar workflow is identical to #125 on develop, including its coverage handoff and late JaCoCo argument evaluation.Review corrections:
cleanby enabling ModiTect output replacement. CI repeatspackageafter verification. The paired regression harness derives the JAR filename from project coordinates, so ordinary version bumps preserve the check../mvnw verifylifecycle.requires static jsr305, and check descriptor semantics and annotation resolution withjdeps.Use ModiTect 1.2.2 because 1.3 declares a Java 11 prerequisite. The new workflow uses the checked-in Maven 3.9.11 wrapper consistently. The existing project-wide version gate is preserved; TeamCity's Maven 3.8.2 was also verified directly.
Validation:
2026.2-SNAPSHOTversion bump. Each verify arm reports 14,905 unit cases with 12 retained skips, three packaged-JAR tests and five classpath cases, with zero failures/errors. All 62 library class files match the retained CI binary at the current coordinates; at the bumped version, the descriptor differs only by its version string. Negative controls reproduce the hardcoded-path failure, missing-overwrite failure, unflipped-negative guard and final-manifest/descriptor assertions.76ce46f: the Build job passes. The artifact workflow passes all seven consumer jobs: 59 cases, zero failures/errors/skips among executed cases. Java 8 deliberately skips the modular fixture. JDK 10 required one retry after Invoker failed to load before testing; that failed attempt is retained separately.63087921e407c7d98d3673ddd9cd4827b5806796eac7d5e6fd432b5b1fda1cec. Its synthetic checkout matches the previous76ce46fPR tree. Current-tree Java 8 builds preserve its 62 class-file bytes; the recorded whole-JAR hash and multi-JDK CI results retain their original subject identities.Open and non-draft; the revised source awaits fresh review and CI results. Previous-head qualification recorded eight successful TeamCity jobs, with Windows and macOS pending. The previous-head Sonar job rejected the configured credential, leaving administrator repair outstanding. Its optional
qualityprofile reported the same 7,844 Checkstyle violations as the merged baseline and stopped before SpotBugs.Refs #60, #107, #119, #123, #125.