-
-
Notifications
You must be signed in to change notification settings - Fork 925
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
VERSION doesn't contain the current version #2206
Comments
I propose we forget all about .dev, and move to the Maven convention of just using SNAPSHOT, so it should be 9.0.0.0-SNAPSHOT, everywhere, and then in the future 9.0.0.0-rc1, again without .dev. |
@chrisseaton I like your suggestion but it might have an impact on Ruby installers if our head snapshots no longer have .dev in them. @mpapis? |
RubyGems versions may not include dashes ( Consistency and predictability in versioning is desired. |
@donv For consistency and predictability, are you saying you prefer the .dev number since it is what we have used in the past? |
For me and my projects, the consistency inside each version across packages and the predictability of future versions is more important than keeping backwards consistency. |
@chrisseaton the name of the dist tar is not following maven conventions and I "renamed" the file in maven/jruby-dist/target to have NO snapshot it the name. probably if you unpack it has the SNAPSHOT in the directory name - not sure though might have changed this as well. in general it is much easier to stick to the maven conventions - any divergence is just error prone as we have seen it with jruby-dist and jruby-jars in the past. jruby-jars is a gem and as gem you can not have the '-' in the name - but converting the '-' to '.' is allowed on the rubygems side. with the 1.7.x branch we use maven convention for quite some time now - except jruby-jars where -SNAPSHOT in the version gets converted to ".dev" for the gem. there was a short time when there was a snapshot repository for jruby artifacts on ci.jruby.org which I used even on maven project on travis. not having SNAPSHOT in the maven version means there is not way to get a public snapshot of jruby artifacts online anymore, since maven will treat it as a released version and never checks for updated version online anymore. |
RVM does not automatically use the |
as for naming conventions it is a good practice to make the top directory in archive / package to have the same name as the archive / package without extension |
I think my problem is not really the difference between SNAPSHOT and dev, it's that I have no idea why certain files use certain version numbers and others use another. Maybe the solution would be for someone to add some info to BUILDING.md that explains carefully what the version number plan for JRuby is, and what files should have what names. My problem is when .dev and SNAPSHOT seem to randomly appear and disappear in various combinations every few weeks. That breaks things like my script to bundle Graal into a JRuby distribution. I'd do that myself but it looks like I don't understand all the various restrictions that we have, so I'd need someone else to do me the favour, if anyone who knows it all has the time. |
the last changes come by merging the jruby-1_7 into master and some of the for me it looks like the biggest concern was the RVM which apparently can unless there are other objections I will move to 9.0.0.0-SNAPSHOT and if something else is needed I do need to know how the naming for the |
Perhaps as well as documentation of what we think version numbers should be, what we could really do with is some tests that checks that this is the case. For example, if Travis tried building jruby-dist and checked the filename, then untarred it and checked the filename of the resulting folder, it would have found this regression. If @mkristian has time to write down what his intention is for the version number and names of various files, I can write the test suite. |
@chrisseaton see the PR above - I split is up in 4 commits allow cherry-picking what is needed/wanted the rule is simple: all artifacts have the version from the file VERSION for both the local build
as well on the maven local repository (in my case it is under /usr/local/repository):
|
Please make sure that development versions are sorted before beta releases, prereleases and release candidates. Especially the jruby-jars-*.gem files. |
I think we've got a grip on it now, and I've written tests to ensure it's all consistent on every build. |
I've added this test to Travis, so we're now checking the names of files and directories in archives on every commit and we should see any problems immediately. https://github.com/jruby/jruby/blob/master/test/check_versions.sh |
VERSION seems to currently contain 9.0.0.0.dev-SNAPSHOT, but for example
mvn -Pdist
produces jruby-dist-9.0.0.0.dev-bin.tar.gz, without the -SNAPSHOT part. What's really crazy is that jruby-dist-9.0.0.0.dev-bin.tar.gz contains a directory called... jruby-9.0.0.0.dev-SNAPSHOT. Just to add to the confusion,mvn -Pcomplete
produces jruby-complete-9.0.0.0.dev-SNAPSHOT.jar.This makes it impossible to automate any tool that depends on being able to find the correct output from the build system.
The text was updated successfully, but these errors were encountered: