#59 sonatype-tycho bundle exception for bootstrapping
Closed: Fixed None Opened 13 years ago by sochotni.

Hi,

I will soon start to package sonatype-tycho[1]. Tycho is a set of maven plugins that enable building of eclipse plugins and other features[2]. It's basically equivalent with compiler toolchain and current versions need itself for building.

It would be much easier to package this if I could temporarily add parts of binary tycho release to build our own Fedora versions and then drop the bundled parts. Otherwise we'd have to bootstrap using older version (and it's dependencies) and then slowly upgrade which would be quite painful.

For this reason I am asking for temporary bundling exception until we rebuild our own version.

[1] https://github.com/sonatype/sonatype-tycho

[2] http://tycho.sonatype.org/


This is for bootstrapping so I don't think we need much more information. Maybe:

  • Timeframe: After package import, it'll take approximately how long for you to get the package building with the older version of the package instead of a bundled binary?
  • Where is the bootstrap binary coming from? It sounds like upstream has a binary version. The URL would be nice to know.
  • Judging from sonatypetycho development, do you think you'll need to bootstrap again in the future (for a major version change)?

Note that I think that from our Guidelines, just knowing that this is for bootstrapping is enough for us to approve it but the rest of the information will help us to keep track of the status of the bootstrapping binary being taken out of the package.

re timeframe: this is kind of tricky to answer. We have most dependencies already in Fedora (except 1 or 2) , so there is no problem with that. But we will need to modify "dependency resolver" in tycho to enable building with local jar files (similar to what we are doing with maven and maven2 packages). I expect it can take a few weeks up to a few months to be able to bootstrap with our own version. It took us ~3 months to do it with maven 3.X, but tycho shares similarities so it should be easier to do now. But what we can do easily in the beginning is:
* get upstream binary
* build our own binary with upstream
* bundle our binary built using upstream binary
We could replace jar files from upstream with our own that we have built ourselves

re upstream binary: It's a maven artifact so it will come from maven repositories [1]
re future bootstrapping: I believe if we manage to keep tycho up-to-date this will not be a problem in the future. If we miss a release, we might be in trouble, but then we can do it by packaging one intermediate release I guess.

Any more questions or need for clarifications, let me know

[1] http://repo2.maven.org/maven2/org/sonatype/tycho/

This exception is approved, with one caveat:

1) Any packages actively using this bootstrapping must not be tagged for a final release (or pushed as an update for any stable release).

Please also let us know when this bootstrapping effort is complete. This ticket will remain open for tracking until you're done.

FPC Note:

Announce text:

The section on Boostrapping in the Treatment of Bundled Libraries page in the Packaging Guidelines has been amended to add the following:

Packages which are built in such a bootstrapping mode must not be tagged for a final release (or pushed as an update for any stable release). FPC will track the progress of approved bootstrapping exceptions via the ticket requesting the bootstrap bundling exception.

Metadata Update from @spot:
- Issue assigned to spot

7 years ago

Login to comment on this ticket.

Metadata