Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Declare 4.32 RC1 #2044

Closed
3 of 13 tasks
MohananRahul opened this issue May 23, 2024 · 73 comments
Closed
3 of 13 tasks

Declare 4.32 RC1 #2044

MohananRahul opened this issue May 23, 2024 · 73 comments

Comments

@MohananRahul
Copy link
Contributor

MohananRahul commented May 23, 2024

Declare 4.32 RC1
A "go" is needed from all the components below to declare this milestone.

Current Candidate

Eclipse downloads:
https://download.eclipse.org/eclipse/downloads/drops4/I20240522-1800

Build logs and/or test results (eventually):
https://download.eclipse.org/eclipse/downloads/drops4/I20240522-1800/testResults.php

Software site repository:
https://download.eclipse.org/eclipse/updates/4.32-I-builds

Specific (simple) site repository:
https://download.eclipse.org/eclipse/updates/4.32-I-builds/I20240522-1800

Equinox downloads:
https://download.eclipse.org/equinox/drops/I20240522-1800


Deadlines:

Friday, 2024- May -24, around 1 AM (Eastern): deadline for sign-off (or, by then, comment in this issue when you expect to sign-off).
Friday, 2024 -May - 24, around 3 AM (Eastern): promote approved build to S-4.32RC1-*, contribute to simultaneous release repo, and announce to mailing lists.
Remember to investigate and document here any failing JUnit tests.


  • Platform:

    • Resources

    • UI

    • Debug

    • Ant

    • SWT

    • Releng
  • JDT:
    • Core

    • Debug

    • UI
  • PDE
  • Equinox
@iloveeclipse
Copy link
Member

iloveeclipse commented May 23, 2024

@merks
Copy link
Contributor

merks commented May 23, 2024

FYI, we have a bit of a disaster on your hands that pretty much affects everyone.

In particular, this build failing alerted me to the problem:

https://ci.eclipse.org/oomph/job/repository-analyzer/lastCompletedBuild/testReport/

The signing certificate has expired and so content is being signed by a certificate after it has expired, making the signature invalid:

$/c/Program\ Files/Java/jdk-21.0.2+13/bin/jarsigner.exe  -verbose -verify /d/stuff/org.eclipse.e4.ui.dialogs_1.5.0.v20240424-0957.jar

s       4608 Wed Apr 24 22:09:26 CEST 2024 META-INF/MANIFEST.MF
        3961 Wed Apr 24 22:09:26 CEST 2024 META-INF/ECLIPSE_.SF
        9554 Wed Apr 24 22:09:26 CEST 2024 META-INF/ECLIPSE_.RSA
           0 Wed Apr 24 22:09:24 CEST 2024 META-INF/
           0 Wed Apr 24 22:09:24 CEST 2024 org/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/textbundles/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/
           0 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/
           0 Wed Apr 24 22:09:24 CEST 2024 icons/
           0 Wed Apr 24 22:09:24 CEST 2024 icons/full/
           0 Wed Apr 24 22:09:24 CEST 2024 icons/full/dtool16/
           0 Wed Apr 24 22:09:24 CEST 2024 icons/full/etool16/
sm      2520 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/BasicUIJob.class
sm     13542 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree.class
sm      3362 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$NotifyingTreeViewer.class
sm      1397 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$5.class
sm      1199 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$4.class
sm      2604 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$2.class
sm      1270 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$3.class
sm      4743 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/FilteredTree$1.class
sm      7594 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/filteredtree/PatternFilter.class
sm      1258 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/dialogs/textbundles/E4DialogMessages.class
sm      1663 Wed Apr 24 22:03:14 CEST 2024 org/eclipse/e4/ui/dialogs/textbundles/messages.properties
sm      9637 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/AboutDialogE4.class
sm      1838 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/AboutText$1.class
sm     11033 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/AboutText.class
sm      2222 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/AboutText$2.class
sm      4111 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/BrandingProperties.class
sm      2556 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/HyperlinkExtractor.class
sm       719 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/HyperlinkRange.class
sm       421 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/IProductConstants.class
sm      1911 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/ParsedAbout.class
sm      2617 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/ProductInformation.class
sm      7441 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/ProductProperties.class
sm      1084 Wed Apr 24 22:09:24 CEST 2024 org/eclipse/e4/ui/internal/dialogs/about/UnavailableProduct.class
sm       397 Wed Apr 24 22:03:14 CEST 2024 icons/full/dtool16/clear_co.png
sm       755 Wed Apr 24 22:03:14 CEST 2024 icons/full/dtool16/[email protected]
sm       463 Wed Apr 24 22:03:14 CEST 2024 icons/full/etool16/clear_co.png
sm      1015 Wed Apr 24 22:03:14 CEST 2024 icons/full/etool16/[email protected]
sm       214 Wed Apr 24 22:09:24 CEST 2024 .api_description
sm      1460 Wed Apr 24 22:03:14 CEST 2024 about.html
sm       614 Wed Apr 24 22:03:14 CEST 2024 plugin.properties

  s = signature was verified
  m = entry is listed in manifest
  k = at least one certificate was found in keystore

- Signed by "[email protected], CN="Eclipse.org Foundation, Inc.", OU=IT, O="Eclipse.org Foundation, Inc.", L=Ottawa, ST=Ontario, C=CA"
    Digest algorithm: SHA-256
    Signature algorithm: SHA384withRSA, 4096-bit key
  Timestamped by "CN=Symantec SHA256 TimeStamping Signer - G3, OU=Symantec Trust Network, O=Symantec Corporation, C=US" on Mi. Apr. 24 22:09:27 UTC 2024
    Timestamp digest algorithm: SHA-256
    Timestamp signature algorithm: SHA256withRSA, 2048-bit key

jar verified.

Warning:
This jar contains entries whose TSA certificate chain is invalid. Reason: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
POSIX file permission and/or symlink attributes detected. These attributes are ignored when signing and are not protected by the signature.

Re-run with the -verbose and -certs options for more details.

The signer certificate expired on 2024-05-22. However, the JAR will be valid until the timestamp expires on 2029-03-23.

@iloveeclipse
Copy link
Member

FYI, we have a bit of a disaster on your hands that pretty much affects everyone

Ed, could you please create dedicated ticket for that? Does it affect every bundle we ship or only few recently (or not recently) changed etc?

@merks
Copy link
Contributor

merks commented May 23, 2024

I created the following general ticket since this affects everyone:

eclipse-simrel/simrel.build#363

This link shows the affected artifacts:

https://ci.eclipse.org/oomph/job/repository-analyzer/lastCompletedBuild/testReport/

As far as I'm concerned this is a stop ship issue. We cannot less artifacts work their way into bundle pools where they will fester and cause problems forever.

@merks
Copy link
Contributor

merks commented May 23, 2024

I'm concerned that this problem is very likely to recur now that we (will) have new certificates:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=531640

Specifically the org.eclipse.core.runtime package is split across three bundles and these bundles must all be signed by the same certificate:

image

So the problem might not immediately happen, but as soon as one of those bundles produces a new version with a new signature, then all three bundle will need to use that new certificate and will need a new version.

We might be best off to proactively force new versions of these three, versions that do not differ only in qualifier because either all three should be published newly to Maven central on none of the three.

How best to proceed?

@iloveeclipse
Copy link
Member

We might be best off to proactively force new versions of these three

Do we only have three bundles with split packages in SDK, or only these are affected by certificate changes?

How best to proceed?

Assuming we have already new certificates:

  • Identify affected bundles
  • Create PR's to touch them
  • Provide new SDK build for RC1

@merks
Copy link
Contributor

merks commented May 23, 2024

Good question. I thought the SDK4Mvn.aggran decorated all split packages with ** but now I see that's not the case:

image

This search helps find such things:

image

Assuming they have been declared in a consistent similar way.

It's typically only the bundles that are used in a restrictive runtime that cause the signing problem, not in the IDE itself.

I will see if I can improve the tool to produce a better list...

@merks
Copy link
Contributor

merks commented May 23, 2024

It's hard to make a really good list. Here's an exhaustive list with red herrings included:

  • org.eclipse.compare.patch / 0.0.0 <-- org.eclipse.compare /3.11.0.v20240516-1116
  • org.eclipse.compare.patch / 0.0.0 <-- org.eclipse.compare.core /3.8.500.v20240415-1311
  • org.eclipse.core.internal.runtime / 0.0.0 <-- org.eclipse.core.runtime /3.31.100.v20240422-1722
  • org.eclipse.core.internal.runtime / 0.0.0 <-- org.eclipse.equinox.common /3.19.100.v20240425-1316
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.core.runtime /3.31.100.v20240422-1722
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.common /3.19.100.v20240425-1316
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.registry /3.12.100.v20240321-1445
  • org.eclipse.equinox.log / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735 - imported export
  • org.eclipse.equinox.log / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421 - re-exported export
  • org.eclipse.jdt.core.compiler / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.core.compiler / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852 - doesn't coexist
  • org.eclipse.jdt.internal.compiler / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.internal.compiler / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852
  • org.eclipse.jdt.internal.compiler.parser / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.internal.compiler.parser / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852
  • org.eclipse.jdt.internal.corext / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.callhierarchy / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.callhierarchy / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.codemanipulation / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.codemanipulation / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.codemanipulation.tostringgeneration / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.codemanipulation.tostringgeneration / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.dom / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.dom / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.fix / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.fix / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.refactoring / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.refactoring / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.refactoring.reorg / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.refactoring.reorg / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.template.java / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.template.java / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.util / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.util / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.junit.buildpath / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.buildpath / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.junit.util / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.util / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.ui / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.browsing / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.browsing / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.dialogs / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.dialogs / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.fix / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.fix / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.javaeditor / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.javaeditor / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.javaeditor.saveparticipant / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.javaeditor.saveparticipant / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.model / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.model / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.preferences / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.preferences / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.preferences.formatter / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.preferences.formatter / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.propertiesfileeditor / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.propertiesfileeditor / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.refactoring.contentassist / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.refactoring.contentassist / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.correction / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.correction / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.correction.proposals / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.correction.proposals / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.template.contentassist / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.template.contentassist / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.util / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.util / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.viewsupport / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.viewsupport / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.ui.cleanup / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.cleanup / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.refactoring / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.refactoring / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text.java / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text.java / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text.java.correction / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text.java.correction / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jface.text / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.link / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.link / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.rules / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.rules / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.source / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.source / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.templates / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.templates / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.osgi.framework.console / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.console / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.framework.eventmgr / 1.2.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.eventmgr / 1.2.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.framework.log / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.log / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.debug / 1.2.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.debug / 1.2.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.environment / 1.4.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.environment / 1.4.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.localization / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.localization / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.runnable / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.runnable / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.urlconversion / 1.0.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.urlconversion / 1.0.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.storagemanager / 1.0.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.storagemanager / 1.0.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.util / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.util / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.ui / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.actions / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.actions / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.browser / 0.0.0 <-- org.eclipse.ui.browser /3.8.300.v20240513-1059
  • org.eclipse.ui.browser / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.dialogs / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.dialogs / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal / 0.0.0 <-- org.eclipse.ui /3.206.0.v20240322-0723
  • org.eclipse.ui.internal / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal.browser / 0.0.0 <-- org.eclipse.ui.browser /3.8.300.v20240513-1059
  • org.eclipse.ui.internal.browser / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal.texteditor / 0.0.0 <-- org.eclipse.ui.editors /3.17.300.v20240416-0658
  • org.eclipse.ui.internal.texteditor / 0.0.0 <-- org.eclipse.ui.workbench.texteditor /3.17.400.v20240508-1057
  • org.eclipse.ui.internal.views.properties / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.internal.views.properties / 0.0.0 <-- org.eclipse.ui.views /3.12.300.v20240321-1245
  • org.eclipse.ui.model / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.model / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.part / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.part / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.texteditor / 0.0.0 <-- org.eclipse.ui.editors /3.17.300.v20240416-0658
  • org.eclipse.ui.texteditor / 0.0.0 <-- org.eclipse.ui.workbench.texteditor /3.17.400.v20240508-1057
  • org.eclipse.ui.views.properties / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.views.properties / 0.0.0 <-- org.eclipse.ui.views /3.12.300.v20240321-1245
  • org.osgi.service.log / 1.5.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421 - import/export
  • org.osgi.service.log / 1.5.0 <-- org.eclipse.osgi.services /3.12.100.v20240327-0645 - import/export

@tjwatson
Copy link
Contributor

tjwatson commented May 23, 2024

It's hard to make a really good list. Here's an exhaustive list with red herrings included:

This doesn't include some bundles that I would expect. For example, I would expect org.eclipse.equinox.registry since it contributes to the split package org.eclipse.core.runtime exported by the three bundles:

org.eclipse.core.runtime, org.eclipse.equinox.common, org.eclipse.equinox.registry

@merks
Copy link
Contributor

merks commented May 23, 2024

On the left are the package names/versions and on the right is the bundle contributing it. So I think this is correct and expected isn't it?

  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.core.runtime /3.31.100.v20240422-1722
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.common /3.19.100.v20240425-1316
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.registry /3.12.100.v20240321-1445

@iloveeclipse
Copy link
Member

@merks : if you could create a list of bundles grouped per repo, we could start preparing PR's.
Note: from this Friday evening and for the next week I will be without access to any computer, so if my help is needed, it should happen soon.

@tjwatson
Copy link
Contributor

On the left are the package names/versions and on the right is the bundle contributing it. So I think this is correct and expected isn't it?

Ah, yes it is. Thank! So next step is to touch each of these bundles?

@laeubi
Copy link
Contributor

laeubi commented May 23, 2024

Even though @merks mentioned it already I wanted to make it clear again because it was mentioned twice now. the bundles not need to be touched, the need to increment the micro version at least!

@merks
Copy link
Contributor

merks commented May 23, 2024

It's probably easier for me to make the changes than to describe where each thing is located.

I.e., I can just do a search in my Oomphed SDK workspace for this regex to find the bundle and then change the version:

image

I don't know the JDT structure as well. Should we do all the ones listed? Or ignore the batch compiler duplicates.

@laeubi

I'm not 100% sure, but if the minor version has already been incremented in this release cycle then nn probably just a forced qualifier change is enough; the minor increment during this current cycle is only needed if we want to be 100% sure the artifact is newly published to Maven central...

@tjwatson
Copy link
Contributor

I'm not 100% sure, but if the minor version has already been incremented in this release cycle then nn probably just a forced qualifier change is enough; the minor increment during this current cycle is only needed if we want to be 100% sure the artifact is newly published to Maven central...

I'm not 100% either ... I assume above you mean any version change, not just minor. A micro version change for this cycle should be enough and not require another micro version bump, just the qualifier bump when we touch the bundle.

If no version has change has been made this cycle yet then we MUST increment the micro version for the bundle so that it is published with the right certificate to match the certificate of the other bundles that provide the "parts" of the split package.

@iloveeclipse
Copy link
Member

I don't know the JDT structure as well. Should we do all the ones listed? Or ignore the batch compiler duplicates.

There shouldn't be batch compiler duplicates. What exactly is not clear for JDT? I assume you only want check https://github.com/eclipse-jdt/eclipse.jdt.ui.git and https://github.com/eclipse-jdt/eclipse.jdt.core.git repos.

@merks
Copy link
Contributor

merks commented May 23, 2024

@tjwatson

Yes, that matches my understanding. So this is how I am proceeding.

image

I check manifests of the bundles with the split packages. Check if the version has at least a minor increment, double check the previous release's p2 metadata to be 100% sure there was at least minor increment, and when that's the case, copy this issue into the forceQualifierUpdate.txt.

@merks
Copy link
Contributor

merks commented May 23, 2024

This looks potentially like a split package:

image

But is really just the bundle exporting its import. It's a bit confusing to me, but I assume this is not a split package case.

@tjwatson
Copy link
Contributor

But is really just the bundle exporting its import. It's a bit confusing to me, but I assume this is not a split package case.

That is a split package if org.eclipse.jdt.core bundle has any classes in the package org.eclipse.jdt.core.compiler. If it doesn't contain any classes in that package then I question why it is exporting it in the first place.

@iloveeclipse
Copy link
Member

If it doesn't contain any classes in that package then I question why it is exporting it in the first place.

This package contains classes in both bundles, so it is a split package.

@tjwatson
Copy link
Contributor

Did I mention how evil split packages are? The use if reexport on Require-Bundle isn't a good indicator of a split package. This would be considered a split package even without that visibility:=reexport directive. That directive is similar to the transitive requires of JPMS. It just indicates that requiring bundles of org.eclipse.jdt.core will also, implicitly, require org.eclipse.jdt.core.compiler.batch and get ALL the packages exported by that bundle also, in addition to the packages exported by org.eclipse.jdt.core

@iloveeclipse
Copy link
Member

org.eclipse.jdt.core.compiler.batch was only recently moved out of org.eclipse.jdt.core bundle (see eclipse-jdt/eclipse.jdt.core#181), so the split package and full reexport is the side effect of that refactoring and wasn't planned to be at very beginning. But we are going a bit offtopic here.

@merks
Copy link
Contributor

merks commented May 23, 2024

Back on topic, this on the other hand is a split package, but it doesn't provide information about that in the package exports:

image

So package imports would work very poorly for this, and we'd likely never find this case with a tool (that unfortunately also produces false positives right now).

I feel a little like the janitor left is charge after the sewage system has gotten backed up. 😱 😬

@merks
Copy link
Contributor

merks commented May 23, 2024

I remake the list with check boxes so I can keep track of which are done. The strikeout is a false positive.

  • org.eclipse.compare.patch / 0.0.0 <-- org.eclipse.compare /3.11.0.v20240516-1116
  • org.eclipse.compare.patch / 0.0.0 <-- org.eclipse.compare.core /3.8.500.v20240415-1311
  • org.eclipse.core.internal.runtime / 0.0.0 <-- org.eclipse.core.runtime /3.31.100.v20240422-1722
  • org.eclipse.core.internal.runtime / 0.0.0 <-- org.eclipse.equinox.common /3.19.100.v20240425-1316
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.core.runtime /3.31.100.v20240422-1722
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.common /3.19.100.v20240425-1316
  • org.eclipse.core.runtime / 3.7.0 <-- org.eclipse.equinox.registry /3.12.100.v20240321-1445
  • org.eclipse.equinox.log / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.equinox.log / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.jdt.core.compiler / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.core.compiler / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852
  • org.eclipse.jdt.internal.compiler / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.internal.compiler / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852
  • org.eclipse.jdt.internal.compiler.parser / 0.0.0 <-- org.eclipse.jdt.core /3.38.0.v20240521-0659
  • org.eclipse.jdt.internal.compiler.parser / 0.0.0 <-- org.eclipse.jdt.core.compiler.batch /3.38.0.v20240516-0852
  • org.eclipse.jdt.internal.corext / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.callhierarchy / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.callhierarchy / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.codemanipulation / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.codemanipulation / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.codemanipulation.tostringgeneration / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.codemanipulation.tostringgeneration / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.dom / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.dom / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.fix / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.fix / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.refactoring / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.refactoring / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.refactoring.reorg / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.refactoring.reorg / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.template.java / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.template.java / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.corext.util / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.corext.util / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.junit.buildpath / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.buildpath / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.junit.util / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.internal.junit.util / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.internal.ui / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.browsing / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.browsing / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.dialogs / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.dialogs / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.fix / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.fix / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.javaeditor / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.javaeditor / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.javaeditor.saveparticipant / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.javaeditor.saveparticipant / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.model / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.model / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.preferences / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.preferences / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.preferences.formatter / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.preferences.formatter / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.propertiesfileeditor / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.propertiesfileeditor / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.refactoring.contentassist / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.refactoring.contentassist / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.correction / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.correction / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.correction.proposals / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.correction.proposals / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.text.template.contentassist / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.text.template.contentassist / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.util / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.util / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.internal.ui.viewsupport / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.internal.ui.viewsupport / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit /3.16.400.v20240516-0951
  • org.eclipse.jdt.junit.launcher / 0.0.0 <-- org.eclipse.jdt.junit.core /3.13.200.v20240329-0922
  • org.eclipse.jdt.ui.cleanup / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.cleanup / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.refactoring / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.refactoring / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text.java / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text.java / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jdt.ui.text.java.correction / 0.0.0 <-- org.eclipse.jdt.core.manipulation /1.21.100.v20240516-1803
  • org.eclipse.jdt.ui.text.java.correction / 0.0.0 <-- org.eclipse.jdt.ui /3.32.100.v20240522-1351
  • org.eclipse.jface.text / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.link / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.link / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.rules / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.rules / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.source / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.source / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.jface.text.templates / 0.0.0 <-- org.eclipse.jface.text /3.25.100.v20240424-1254
  • org.eclipse.jface.text.templates / 0.0.0 <-- org.eclipse.text /3.14.100.v20240424-0956
  • org.eclipse.osgi.framework.console / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.console / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.framework.eventmgr / 1.2.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.eventmgr / 1.2.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.framework.log / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.framework.log / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.debug / 1.2.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.debug / 1.2.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.environment / 1.4.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.environment / 1.4.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.localization / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.localization / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.runnable / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.runnable / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.service.urlconversion / 1.0.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.service.urlconversion / 1.0.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.storagemanager / 1.0.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.storagemanager / 1.0.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.osgi.util / 1.1.0 <-- org.eclipse.equinox.supplement /1.10.900.v20240430-0735
  • org.eclipse.osgi.util / 1.1.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.eclipse.ui / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.actions / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.actions / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.browser / 0.0.0 <-- org.eclipse.ui.browser /3.8.300.v20240513-1059
  • org.eclipse.ui.browser / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.dialogs / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.dialogs / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal / 0.0.0 <-- org.eclipse.ui /3.206.0.v20240322-0723
  • org.eclipse.ui.internal / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal.browser / 0.0.0 <-- org.eclipse.ui.browser /3.8.300.v20240513-1059
  • org.eclipse.ui.internal.browser / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.internal.texteditor / 0.0.0 <-- org.eclipse.ui.editors /3.17.300.v20240416-0658
  • org.eclipse.ui.internal.texteditor / 0.0.0 <-- org.eclipse.ui.workbench.texteditor /3.17.400.v20240508-1057
  • org.eclipse.ui.internal.views.properties / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.internal.views.properties / 0.0.0 <-- org.eclipse.ui.views /3.12.300.v20240321-1245
  • org.eclipse.ui.model / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.model / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.part / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.part / 0.0.0 <-- org.eclipse.ui.workbench /3.132.0.v20240510-1319
  • org.eclipse.ui.texteditor / 0.0.0 <-- org.eclipse.ui.editors /3.17.300.v20240416-0658
  • org.eclipse.ui.texteditor / 0.0.0 <-- org.eclipse.ui.workbench.texteditor /3.17.400.v20240508-1057
  • org.eclipse.ui.views.properties / 0.0.0 <-- org.eclipse.ui.ide /3.22.200.v20240507-1617
  • org.eclipse.ui.views.properties / 0.0.0 <-- org.eclipse.ui.views /3.12.300.v20240321-1245
  • org.osgi.service.log / 1.5.0 <-- org.eclipse.osgi /3.20.0.v20240509-1421
  • org.osgi.service.log / 1.5.0 <-- org.eclipse.osgi.services /3.12.100.v20240327-0645

@iloveeclipse
Copy link
Member

Ed, should fragments also be touched together with host bundles?

@merks
Copy link
Contributor

merks commented May 23, 2024

It wouldn't hurt. Which fragments did you have in mind?

@iloveeclipse
Copy link
Member

SWT, equinox launcher and platform file system.

@merks
Copy link
Contributor

merks commented May 23, 2024

I think the only candidate (a fragment for which the host is touched) is this one:

image

FYI, all the increments turned out to be touches not actual version increments.

Now I will create draft PRs for all the affected repos now, and touch this one too. Good thinking on your part! ❤️

We should only merge them after the certificate is available for use, which seems to be stalled.

@merks
Copy link
Contributor

merks commented May 25, 2024

@HannesWell

If they are baseline replaced from a previous I-build (with bad signatures), rather than from the previous release (with good signatures), then they must necessarily have had a non-qualifier increment. 😬

@HannesWell
Copy link
Member

If they are baseline replaced from a previous I-build (with bad signatures), rather than from the previous release (with good signatures), then they must necessarily have had a non-qualifier increment. 😬

Indeed, that makes sense. 😅

All SWT binaries have been rebuilt and have a new qualifier:

[INFO] --- tycho-packaging:4.0.8:build-qualifier (default-build-qualifier) @ org.eclipse.swt ---
[INFO] The project's OSGi version is 3.126.0.v20240525-0702

@merks
Copy link
Contributor

merks commented May 25, 2024

@HannesWell
Copy link
Member

I see this was killed:

https://ci.eclipse.org/releng/job/eclipse.platform.swt/job/master/565/

Yes, this was the known problem that builds get sometimes killed.

This just finished:

https://ci.eclipse.org/releng/job/eclipse.platform.swt/job/master/566/

But this just started:

https://ci.eclipse.org/releng/job/eclipse.platform.swt/job/master/567/

A second build is not necessary because it is caused by the just built binaries that are pushed to the master branch by the releng.bot and therefore it is aborted since the event cannot be supported (at least I don't know how):
https://github.com/eclipse-platform/eclipse.platform.swt/blob/777a4c210b64aa201289951d791d6853b8a11534/Jenkinsfile#L112-L118

So all is fine now.

FYI, I am able to kick off build when the time is right:

https://ci.eclipse.org/releng/job/Builds/job/I-build-4.32/

At least from SWT point of view everything should be fine now. If everything else is also fixed, please go ahead and trigger an I-build.

@merks
Copy link
Contributor

merks commented May 25, 2024

Okay the SWT thing detected it wasn't needed and completed. Therefore I've started this build:

https://ci.eclipse.org/releng/job/Builds/job/I-build-4.32/121/

@MohananRahul
Copy link
Contributor Author

Okay the SWT thing detected it wasn't needed and completed. Therefore I've started this build:

https://ci.eclipse.org/releng/job/Builds/job/I-build-4.32/121/

We have already Scheduled IBuild at 6am EST , if build 121 build is fine then will cancel scheduled build.

@merks
Copy link
Contributor

merks commented May 25, 2024

Oh dear, my "source" removal from the list overlooked that this one has "source in the name too:

image

😱

So there is one problem left. 😭

@merks
Copy link
Contributor

merks commented May 25, 2024

I kicked of this build:

https://ci.eclipse.org/releng/job/Builds/job/I-build-4.32/122/

What could go wrong now? 😖

@merks
Copy link
Contributor

merks commented May 25, 2024

The gremlins are still busy. The build fails like this:

14:36:19 [INFO] {osgi.os=linux, org.eclipse.update.install.features=true, osgi.arch=x86_64, org.eclipse.update.install.sources=true, osgi.ws=gtk, org.eclipse.jdt.buildtime=true}
14:36:19 [ERROR] Cannot resolve project dependencies:
14:36:19 [ERROR] Software being installed: org.eclipse.sdk.ide 4.32.0.qualifier
14:36:19 [ERROR] Missing requirement: org.eclipse.platform.feature.group 4.32.0.v20240525-0702 requires 'org.eclipse.equinox.p2.iu; org.eclipse.help.feature.group [2.3.1800.v20240525-0320,2.3.1800.v20240525-0320]' but it could not be found
14:36:19 [ERROR] Cannot satisfy dependency: org.eclipse.sdk.feature.group 4.32.0.v20240525-0702 depends on: org.eclipse.equinox.p2.iu; org.eclipse.platform.feature.group [4.32.0.v20240525-0702,4.32.0.v20240525-0702]
14:36:19 [ERROR] Cannot satisfy dependency: org.eclipse.sdk.ide 4.32.0.qualifier depends on: org.eclipse.equinox.p2.iu; org.eclipse.sdk.feature.group 0.0.0

Maybe something else needs an increment? Maybe a hick-up?

I'm need to run in the next half hour and I will only have my phone available after that, so very, very limited what else I can do to help. I can maybe test a repo given the URL...

I will kick off another build assuming it's a glitch, but if someone else knows better, cancel it and correct whatever needs correcting...

HannesWell added a commit to HannesWell/eclipse.platform.releng.aggregator that referenced this issue May 25, 2024
HannesWell added a commit to HannesWell/eclipse.platform.releng.aggregator that referenced this issue May 25, 2024
@HannesWell
Copy link
Member

The gremlins are still busy. The build fails like this:

14:36:19 [INFO] {osgi.os=linux, org.eclipse.update.install.features=true, osgi.arch=x86_64, org.eclipse.update.install.sources=true, osgi.ws=gtk, org.eclipse.jdt.buildtime=true}
14:36:19 [ERROR] Cannot resolve project dependencies:
14:36:19 [ERROR] Software being installed: org.eclipse.sdk.ide 4.32.0.qualifier
14:36:19 [ERROR] Missing requirement: org.eclipse.platform.feature.group 4.32.0.v20240525-0702 requires 'org.eclipse.equinox.p2.iu; org.eclipse.help.feature.group [2.3.1800.v20240525-0320,2.3.1800.v20240525-0320]' but it could not be found
14:36:19 [ERROR] Cannot satisfy dependency: org.eclipse.sdk.feature.group 4.32.0.v20240525-0702 depends on: org.eclipse.equinox.p2.iu; org.eclipse.platform.feature.group [4.32.0.v20240525-0702,4.32.0.v20240525-0702]
14:36:19 [ERROR] Cannot satisfy dependency: org.eclipse.sdk.ide 4.32.0.qualifier depends on: org.eclipse.equinox.p2.iu; org.eclipse.sdk.feature.group 0.0.0

Maybe something else needs an increment? Maybe a hick-up?

Further above the qualifier for the org.eclipse.help feature is computed as

[INFO] --- tycho-packaging:4.0.8:build-qualifier-aggregator (default-build-qualifier-aggregator) @ org.eclipse.help ---
[INFO] The project's OSGi version is 2.3.1800.v20240525-0630

I have just created #2047.
To be sure it enforces a new qualifier for the o.e.help, o.e.platform and o.e.sdk feature.

@HannesWell
Copy link
Member

@merks Should we await the currently running I-build or submit #2047 and start a new one immediately?

@merks
Copy link
Contributor

merks commented May 25, 2024

It should be done in just minutes.

@merks
Copy link
Contributor

merks commented May 25, 2024

I get the sense that all builds are taking much longer the last days. Maybe just kill it and proceed. This is like watching grass grow.

@merks
Copy link
Contributor

merks commented May 25, 2024

After 3 hours it got past where it failed last time. Just as a watched kettle never boils, grass grows slower when watched.

@HannesWell
Copy link
Member

After 3 hours it got past where it failed last time. Just as a watched kettle never boils, grass grows slower when watched.

Yes, but finally it passed. 🎉

@merks
Copy link
Contributor

merks commented May 25, 2024

@MohananRahul
Copy link
Contributor Author

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

No branches or pull requests

9 participants