Skip to content

Conversation

@eclipse-releng-bot
Copy link
Contributor

@eclipse-releng-bot eclipse-releng-bot commented Dec 26, 2025

The content of the target eclipse-sdk-prereqs.target was updated

Please review the changes and merge if appropriate, or cherry pick individual updates.

The following maven artifacts have been updated:

  • biz.aQute.bnd:aQute.libg:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.lib.getopt [3.1.0,4.0.0) compared to the previous version
    • additionally requires java.package; aQute.lib.markdown [3.3.0,4.0.0) compared to the previous version
    • additionally requires java.package; aQute.lib.utf8properties [4.2.0,5.0.0) compared to the previous version
    • additionally requires java.package; org.osgi.util.promise [1.3.0,2.0.0) compared to the previous version
    • additionally requires java.package; org.slf4j [2.0.0,3.0.0) compared to the previous version
  • biz.aQute.bnd:biz.aQute.bnd.annotation:jar:7.1.0 has been updated to version 7.2.0
  • biz.aQute.bnd:biz.aQute.bnd.embedded-repo:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires osgi.bundle; biz.aQute.bndlib [7.2.0,7.3.0) compared to the previous version
  • biz.aQute.bnd:biz.aQute.bnd.util:jar:7.1.0 has been updated to version 7.2.0
  • biz.aQute.bnd:biz.aQute.bndlib:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; org.osgi.util.promise [1.3.0,2.0.0) compared to the previous version
  • biz.aQute.bnd:biz.aQute.repository:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.bnd.build [4.7.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.maven [3.6.0,4.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi [7.5.0,8.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi.repository [3.3.0,4.0.0) compared to the previous version
    • additionally requires java.package; org.osgi.util.promise [1.3.0,2.0.0) compared to the previous version
  • biz.aQute.bnd:biz.aQute.resolve:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.bnd.build [4.7.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.build.model [4.5.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.help [2.1.0,3.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi [7.5.0,8.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi.repository [3.3.0,4.0.0) compared to the previous version
  • biz.aQute.bnd:biz.aQute.tester:jar:7.1.0 has been updated to version 7.2.0
  • org.bndtools:bndtools.api:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.bnd.build [4.7.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.build.model [4.5.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi [7.5.0,8.0.0) compared to the previous version
  • org.bndtools:bndtools.jareditor:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.bnd.osgi [7.5.0,8.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.print [2.3.0,3.0.0) compared to the previous version
  • org.bndtools:org.bndtools.headless.build.manager:jar:7.1.0 has been updated to version 7.2.0
  • org.bndtools:org.bndtools.headless.build.plugin.gradle:jar:7.1.0 has been updated to version 7.2.0
    • additionally requires java.package; aQute.bnd.build [4.7.0,5.0.0) compared to the previous version
    • additionally requires java.package; aQute.bnd.osgi [7.5.0,8.0.0) compared to the previous version
  • org.bndtools:org.bndtools.templates.template:jar:7.1.0 has been updated to version 7.2.0
  • org.bndtools:org.bndtools.versioncontrol.ignores.manager:jar:7.1.0 has been updated to version 7.2.0
  • org.bndtools:org.bndtools.versioncontrol.ignores.plugin.git:jar:7.1.0 has been updated to version 7.2.0

@merks
Copy link
Contributor

merks commented Dec 27, 2025

I think the latest release of the BND tool set is kind of messed up.

There is this failure:

17:18:26 [ERROR] Cannot resolve dependencies of project org.eclipse.pde:org.eclipse.pde.bnd.ui:eclipse-plugin:1.2.400-SNAPSHOT
17:18:26 [ERROR] with context {osgi.os=linux, osgi.ws=gtk, org.eclipse.update.install.features=true, org.eclipse.jdt.buildtime=true, osgi.arch=x86_64, org.eclipse.update.install.sources=true}
17:18:26 [ERROR] Software being installed: org.eclipse.pde.bnd.ui 1.2.400.qualifier
17:18:26 [ERROR] Missing requirement: org.bndtools.templating 7.2.0.202512261929 requires 'java.package; com.google.common.util.concurrent.internal 0.0.0' but it could not be found
17:18:26 [ERROR] Cannot satisfy dependency: org.eclipse.pde.bnd.ui 1.2.400.qualifier depends on: java.package; org.bndtools.templating [2.0.0,3.0.0): See log for details

Looking at the new version of that bundle, I think this import should probably be Private-Package like the other com.google.common packages:

image

Looking at

https://repo.maven.apache.org/maven2/org/bndtools/org.bndtools.templating/7.2.0/org.bndtools.templating-7.2.0.pom

the dependency listed as provided:

com.google.guava guava 33.4.8-jre provided

I don't think we want to drag guava into the Platform/SDK.


I don't think that's the only think that' appears messed up....

When I try to build these updates with Orbit, that build fails like this:

[ERROR] Missing requirement: biz.aQute.tester.junit-platform 7.2.0.202512261929 requires 'java.package; org.junit.platform.commons [1.10.1,1.13.0)' but it could not be found
[ERROR] Cannot satisfy dependency: org.eclipse.orbit.maven.osgi.all.feature.group 4.39.0.v20251227-1000 depends on: org.eclipse.equinox.p2.iu; biz.aQute.tester.junit-platform [7.2.0.202512261929,7.2.0.202512261929]
[ERROR] Cannot satisfy dependency: org.eclipse.orbit.maven.osgi.site raw:1.0.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):1.0.0-SNAPSHOT depends on: org.eclipse.equinox.p2.iu; org.eclipse.orbit.maven.osgi.all.feature.group 0.0.0: See log for details
[ERROR] -> [Help 1]

The current version of the org.junit.platform.commons package is 1.14.1:

image

The older version of that bundle has a broader range for the dependency:

image

So this too appear inappropriate to me.


I can't be sure there are other problems we've not noticed yet...

@laeubi
Copy link
Contributor

laeubi commented Dec 27, 2025

FYI @chrisrueger @peterkir

@laeubi
Copy link
Contributor

laeubi commented Dec 27, 2025

/request-license-review

@github-actions
Copy link
Contributor

/request-license-review

⚠️ Failed to request review of not vetted licenses.

Workflow run (with attached summary files):
https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/actions/runs/20536352231

merks added a commit to merks/eclipse.platform.releng.aggregator that referenced this pull request Dec 27, 2025
merks added a commit to merks/eclipse.platform.releng.aggregator that referenced this pull request Dec 27, 2025
merks added a commit that referenced this pull request Dec 27, 2025
@chrisrueger
Copy link
Contributor

@laeubi @merks bnd 7.2.0 has introduced a smaller range on junit. See https://github.com/bndtools/bnd/wiki/Changes-in-7.2.0#known-issues

Regarding guava:

The change was since we upgrade to guava 33

Those newly imported packages are because of guava requires com.google.errorprone.annotations and com.google.guava.failureaccess in the newer version.

image image

Open for suggestions, how to improve the situation.

@iloveeclipse
Copy link
Member

Those newly imported packages are because of guava requires com.google.errorprone.annotations

These should be optional, only required during compilation (in theory).

@chrisrueger
Copy link
Contributor

I have created bndtools/bnd#7022 and will try to improve it. Would appreciate more feedback as soon as you find something.

What is the timeline until you need this for the next eclipse release? So we can plan a 7.2.1 or 7.3.0

laeubi pushed a commit to merks/eclipse.platform.releng.aggregator that referenced this pull request Dec 27, 2025
@chrisrueger
Copy link
Contributor

Guava deps

I have added bndtools/bnd#7024 to adresse the Guava Dependencies by making them optional.

Let me more if you discover more packages which should be optional.

Regarding JUnit:

I am a bit unsure what to do: bnd (biz.aQute.tester.junit-platform) has a Problem with JUnit starting 1.13 (bndtools/bnd#6651)

So currently bnd osgi tests (or projects using it) need max. JUnit BOM 5.12.2 (or otherwise tests won't be discovered).
I am not sure if and what Eclipse is using this part

I have a PR waiting for review for this ( bndtools/bnd#7000 ) but I got help from copilot since I am not familar with bnd tester stuff.

@laeubi
Copy link
Contributor

laeubi commented Dec 28, 2025

/request-license-review

@merks
Copy link
Contributor

merks commented Dec 28, 2025

I have created bndtools/bnd#7022 and will try to improve it. Would appreciate more feedback as soon as you find something.

What is the timeline until you need this for the next eclipse release? So we can plan a 7.2.1 or 7.3.0

Thanks for your responsiveness during the holiday season. 👼

There's plenty of time. The release cycle is just started with M1 due this Friday. In any case, we generally wait for the reviews to finish and there are a bunch of them that require manual attention, e.g.,

https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/25362

So those will be stalled until well into January.

The 2026-03 (4.39) release isn't until March so definitely plenty of time. Don't feel pressured!!

@merks
Copy link
Contributor

merks commented Dec 28, 2025

Guava deps

I have added bndtools/bnd#7024 to adresse the Guava Dependencies by making them optional.

Let me more if you discover more packages which should be optional.

Regarding JUnit:

I am a bit unsure what to do: bnd (biz.aQute.tester.junit-platform) has a Problem with JUnit starting 1.13 (bndtools/bnd#6651)

So currently bnd osgi tests (or projects using it) need max. JUnit BOM 5.12.2 (or otherwise tests won't be discovered). I am not sure if and what Eclipse is using this part

I have a PR waiting for review for this ( bndtools/bnd#7000 ) but I got help from copilot since I am not familar with bnd tester stuff.

I actually have no clue how Eclipse is using this. We have this in the target platform.

https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-commons/1.14.1/

The automated processes generally update dependencies within a few hours of them being available in Maven Central so not being able to update this junit bundle is a general problem for the Platform.

@chrisrueger
Copy link
Contributor

chrisrueger commented Dec 28, 2025

I actually have no clue how Eclipse is using this. We have this in the target platform.

https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-commons/1.14.1/

Yes since bndtools also pulls in Eclipse P2 for dependencies this caused problems as soon as the Eclipse's JUnit was higher than what bnd support. That was the reason for the small range I guess, so that bnd does not run into issues when we update Eclipse P2 (currently on 2023-12 as a baseline).

Anyway, we have the JUnit topic on our radar for the near future, since it is causing headaches for all bnd consumers who are using bnd's junit test support. Maybe bndtools/bnd#7000 is a first step

chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 28, 2025
to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 28, 2025
to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 28, 2025
to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
@chrisrueger
Copy link
Contributor

@merks bndtools/bnd#7024 is ready regarding Guava / Errorprone / JUnit.

In the PR description I also printed the MANIFEST.MF of the new jars. Appreciate some feedback.

@eclipse-releng-bot eclipse-releng-bot deleted the update_target branch December 29, 2025 02:49
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 29, 2025
to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 29, 2025
to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Dec 29, 2025
Eliminated org.jspecify.jspecify and com.google.errorprone.annotations from the build and import configurations as they are no longer required. Updated Import-Package to explicitly exclude these packages.

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>

make errorprone / guava.failureaccess private

Remove packages from Import-Package for com.google.common.util.concurrent.internal and com.google.errorprone.annotations.

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>

make org.junit.platform resolution:=optional,

to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
chrisrueger added a commit to chrisrueger/bnd that referenced this pull request Jan 7, 2026
Eliminated org.jspecify.jspecify and com.google.errorprone.annotations from the build and import configurations as they are no longer required. Updated Import-Package to explicitly exclude these packages.

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>

make errorprone / guava.failureaccess private

Remove packages from Import-Package for com.google.common.util.concurrent.internal and com.google.errorprone.annotations.

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>

make org.junit.platform resolution:=optional,

to avoid problems for consumers of bnd (like Eclipse who are on higher JUnit version eclipse-platform/eclipse.platform.releng.aggregator#3579)

Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
@chrisrueger
Copy link
Contributor

@merks FYI bnd 7.2.1-RC1 is available: https://github.com/bndtools/bnd/wiki/Changes-in-7.2.1
which hopefully solves the dependency problems above ( Guava / Errorprone / JUnit version range)

Not sure what you exactly need for testing. Maybe the jars relevant for you could be:

Feedback is appreciated, maybe here.

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.

6 participants