Missing version property in exported GEF packages
Some weeks ago I ran into an issue where -after the 2024-03 release- some plugins were throwing a NoClassDefFoundError because GEF was not updated properly. The problem: I use "Import-Packages" to declare the dependencies, which doesn't specify any version ranges. Because an older version was already installed, the Eclipse considered the version to be compatible and did not update it.
I don't think maintaining the versions manually is the solution here... And I'm open to suggestions on how this could be automated. My initial idea was to use the "Convert to Automatic Manifest Generation" and see how it goes, but perhaps there are other options?
Can you elaborate on “not updated properly”?
This sounds like a familiar problem but I want to be sure it’s the same problem I’m imagining.
Can you elaborate on “not updated properly”?
This sounds like a familiar problem but I want to be sure it’s the same problem I’m imagining.
It's this discussion here. The user updated to WindowBuilder 1.15 which depends on GEF 3.17 (or higher). But after the updated, GEF remained at the already existing 3.16.
So one (the?) significant problem to address is that the packages should be versioned? I use Oomph's versioning tool in a number of projects to automate such a thing. It's generally kind of complementary to the API tools helping to manage the micro version within the IDE, including quick fixes to fix all problems. E.g., if you change the version of a bundle, there will be errors that the exported package version doesn't match the bundle version and a quick fix to fix that. Maybe that's useful/interesting?
So one (the?) significant problem to address is that the packages should be versioned?
That's correct. I would like to specify a version range with which WindowBuilder is compatible, similar to what is already possible with the Required-Bundle header.
if you change the version of a bundle, there will be errors that the exported package version doesn't match the bundle version and a quick fix to fix that. Maybe that's useful/interesting?
Having a quick-fix would help, but it's having yet another step which keeps me concerned. In my little dream world, the package versions are automatically updated with the bundle version where you would only have to do the initial configuration.
This issue is stale because it has been open for 90 days with no activity.
Not even the platform is adding the version number to their exported platform, so I don't believe this is worth pursuing. From my side, the problem was resolved by adding the GEF dependency via the "Required-Bundle" header.