Skip to content

Update jgit from 7.7.1 to 7.8.1 and BouncyCastle from 1.86 to 1.87 - #9795

Merged
mbien merged 2 commits into
apache:masterfrom
mbien:jgit781
Nov 13, 2026
Merged

mbien merged 2 commits into
apache:masterfrom
mbien:jgit781

Conversation

@mbien

@mbien mbien commented Nov 11, 2026 •

Copy link
Copy Markdown
Member

first:

second:

  • Update BouncyCastle from 1.86 to 1.87

very basic manual testing done

note: 8.x would be JDK 25, so lets hope 7.x is maintained for a while longer

@mbien mbien added this to the NB33 milestone Nov 11, 2026
@mbien mbien added Upgrade Library Library (Dependency) Upgrade git [ci] enable versioning job ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) labels Nov 11, 2026
@@ -1,93 +0,0 @@
Name: JGit Library

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

todo: investigate why this is not a rename

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

already visible in previous PRs https://github.com/apache/netbeans/pull/9576/changes seems to be a git anomaly

@mbien mbien Nov 11, 2026 •

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

apparently it is a git diff issue triggered by a situation when A is renamed to B and C exists which is identical or very similar to A.

here: some of the licenses were a perfect copy of each other. Fixed it by changing the name field slightly. Future PRs should show it as renamed.

@matthiasblaesing matthiasblaesing left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to me.

@matthiasblaesing

matthiasblaesing commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Out of interest - what did you observe for bouncy castle 1.87? The modules seem to be launch:

     [exec]     bcutil [1.87 1.87]
     [exec]     bcprov [1.87 1.87]
     [exec]     bcpkix [1.87 1.87]
     [exec]     bcpg [1.87 1.87]
...
     [exec] INFO [org.apache.sshd.common.util.security.bouncycastle.BouncyCastleSecurityProviderRegistrar]: getOrCreateProvider(BC) created instance of org.bouncycastle.jce.provider.BouncyCastleProvider
...

and git connection also worked.

@mbien

mbien commented Nov 12, 2026

Copy link
Copy Markdown
Member Author

i parked the branch at https://github.com/mbien/netbeans/tree/bc187-parked

you can see the failures in https://github.com/apache/netbeans/actions/runs/43062157563
example from the logs:

[junit] org.osgi.framework.BundleException: Unable to resolve bcutil [100](R 100.0): missing requirement [bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0))) Unresolved requirements: [[bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0)))]
    [junit] 	at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
    [junit] 	at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
    [junit] 	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
    [junit] 	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297)
    [junit] 	at java.base/java.lang.Thread.run(Thread.java:1583)
    [junit] org.osgi.framework.BundleException: Unable to resolve bcpkix [225](R 225.0): missing requirement [bcpkix [225](R 225.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0))) Unresolved requirements: [[bcpkix [225](R 225.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0)))]
    [junit] 	at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
    [junit] 	at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
    [junit] 	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
    [junit] 	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297)
    [junit] 	at java.base/java.lang.Thread.run(Thread.java:1583)
    [junit] org.osgi.framework.BundleException: Unable to resolve bcpg [229](R 229.0): missing requirement [bcpg [229](R 229.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1.cryptlib)(version>=1.87.0)(!(version>=1.88.0))) Unresolved requirements: [[bcpg [229](R 229.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1.cryptlib)(version>=1.87.0)(!(version>=1.88.0)))]
    [junit] 	at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
    [junit] 	at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
    [junit] 	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
    [junit] 	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297)
    [junit] 	at java.base/java.lang.Thread.run(Thread.java:1583)
    [junit] ERROR: Bundle bcutil [100] Error starting reference:file:/home/runner/work/netbeans/netbeans/nbbuild/netbeans/ide/modules/bcutil.jar (org.osgi.framework.BundleException: Unable to resolve bcutil [100](R 100.0): missing requirement [bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0))) Unresolved requirements: [[bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0)))])
    [junit] ERROR: Bundle bcpkix [225] Error starting reference:file:/home/runner/work/netbeans/netbeans/nbbuild/netbeans/ide/modules/bcpkix.jar (org.osgi.framework.BundleException: Unable to resolve bcpkix [225](R 225.0): missing requirement [bcpkix [225](R 225.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0))) Unresolved requirements: [[bcpkix [225](R 225.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0)))])
    [junit] ERROR: Bundle bcpg [229] Error starting reference:file:/home/runner/work/netbeans/netbeans/nbbuild/netbeans/ide/modules/bcpg.jar (org.osgi.framework.BundleException: Unable to resolve bcpg [229](R 229.0): missing requirement [bcpg [229](R 229.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1.cryptlib)(version>=1.87.0)(!(version>=1.88.0))) Unresolved requirements: [[bcpg [229](R 229.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1.cryptlib)(version>=1.87.0)(!(version>=1.88.0)))])
    [junit] WARNING: JDK requirements check disabled
    [junit] System class loader patches: /home/runner/work/netbeans/netbeans/nbbuild/build/testdist/unit/webcommon/org-netbeans-libs-nashorn/tests.jar:/home/runner/work/netbeans/netbeans/nbbuild/build/testdist/unit/platform/org-openide-util-lookup/tests.jar:/home/runner/work/netbeans/netbeans/ergonomics/ide.ergonomics/build/test/unit/classes
    [junit] org.osgi.framework.BundleException: Unable to resolve bcutil [100](R 100.0): missing requirement [bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)(version>=1.86.0)(!(version>=1.87.0))) Unresolved requirements: [[bcutil [100](R 100.0)] osgi.wiring.package; (&(osgi.wiring.package=org.bouncycastle.asn1)

@matthiasblaesing

matthiasblaesing commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Something is fishy there. From https://productionresultssa17.blob.core.windows.net/actions-results/4fa80087-cdb6-86cd-972a-3a9fdd5c9385/workflow-job-run-927ac64f-bf74-5853-80c9-2a1600515c02/logs/job/job-logs.txt?rsct=text%2Fplain&se=2026-11-12T21%3A11%3A56Z&sig=mWZJi06pvR4gtD32RNZo4A6vx7I8wkoV1MBHNK0urOA%3D&ske=2026-11-13T00%3A09%3A22Z&skoid=ca7593d4-ee42-46cd-af88-8b886a2f84eb&sks=b&skt=2026-11-12T20%3A09%3A22Z&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skv=2025-11-05&sp=r&spr=https&sr=b&st=2026-11-12T21%3A01%3A51Z&sv=2025-11-05:

2026-11-11T17:11:30.8449370Z     [junit] 	bcutil [1.86 1.86]
2026-11-11T17:11:30.8449586Z     [junit] 	bcprov [1.87 1.87]
2026-11-11T17:11:30.8449807Z     [junit] 	bcpkix [1.86 1.86]
2026-11-11T17:11:30.8450023Z     [junit] 	bcpg [1.87 1.87]

This won't fly. For example bcprov is a dependency of bcutil and the package import is version locked to the same major and minor version as its own, so linking like this must fail.

Update:

I ran commit-validation locally with BC updated to 1.87 and it runs clean.

But what I see is, that your HEAD of branch is 1fc7d16, but this is not what was built. That was 6cf72c6:

grafik

May the job picked up an incomplete push?

@mbien

mbien commented Nov 12, 2026

Copy link
Copy Markdown
Member Author

i can take a look at this again tomorrow. Meanwhile i rebased the branch and pushed into mbien#1, this will run the CI in my fork.

 - small adjustments needed due to API changes
 - added second tripwire test to detect regressions in MAX_REVWALK_FLAGS
   inconsistencies on jgits side (7.8.0 was broken in that regard)

Also update gson from 2.13.2 to 2.14.0 as required by the
org.eclipse.jgit.lfs dependency tree.

Make the Name headers in the per-module license files module-specific
(they were all 'JGit Library' before), so that git's rename detection
can unambiguously pair old and new license files in future version
bumps instead of arbitrarily cross-pairing them.
@mbien mbien changed the title Update jgit from 7.7.1 to 7.8.1 Update jgit from 7.7.1 to 7.8.1 and BouncyCastle from 1.86 to 1.87 Nov 13, 2026
@mbien

mbien commented Nov 13, 2026

Copy link
Copy Markdown
Member Author

well. its green. Must have made some mistake, forgot a file or something like that.

anyway, the commit is back in this PR like originally intended. CI is running for a final check (on top of the felix update).

@matthiasblaesing matthiasblaesing left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to me. Thank you

@mbien
mbien merged commit c2c9370 into apache:master Nov 13, 2026
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) git [ci] enable versioning job Upgrade Library Library (Dependency) Upgrade

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants