-
Notifications
You must be signed in to change notification settings - Fork 9
Pin dev builds to 9.4 for now #9
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
Conversation
I'm not sure the best path forward so this is to start a conversation. JRuby 10 will be released soon, and in preparation for that we are moving it to master. At some point, jruby-head will refer to 10.x snapshot builds. However, we want to ease into that given the large number of users running CI against jruby-head. This may be a setup-ruby question, but is there a way to have multiple "head" references? I believe we will have two possible situations for existing jruby-head users:
And there may be users who want to explicitly opt into 10-head. What's the best way to start making this move? |
JRuby 10 is about to become the new "jruby-head" but we want to ease into that transition. This PR filters available snapshot versions to just "9.4" releases until we are ready to support 10.
Tested locally to confirm that it only accepts 9.4 builds. Need to merge before tomorrow's release because there are now 10 snapshot builds in Maven and they will be picked up without this change. |
No, there is nothing like that, it hasn't been needed so far and I would rather avoid the complexity from it. Delaying it like this PR does has never been done for CRuby/TruffleRuby, but that's your choice and it may make sense temporarily in this situation.
So those use
Those can then simply use |
@@ -12,7 +12,7 @@ | |||
versions = Nokogiri::XML(xml).css('version').map(&:text) | |||
|
|||
versions.delete('9000.dev-SNAPSHOT') | |||
most_recent = versions.max_by { |v| Gem::Version.new(v) } | |||
most_recent = versions.grep(/9\.4/).max_by { |v| Gem::Version.new(v) } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you use an anchor here like /^9\.4/
to avoid potentially wrong matches?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It won't be here long enough to matter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since I couldn't review before your merged, and this is my review, and I'm the main maintainer of setup-ruby & related repos I would like you to address this. I want to be sure we don't get some strange behavior because it matches e.g. 9.3.9.4
. And it's just more correct.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There will never be a 9.3.9.4, nor a .9.4 for any previous release. In theory there could someday be a 10.0.9.4 or 10.9.4.0 but this patch will be gone before 10.0 is even released (within the next month).
Since I couldn't review before your merged
It was necessary to expedite because we started pushing 10 snapshot builds and I knew users would start seeing those in setup-ruby before we're ready. Given the time-sensitive nature I opted to merge in a working patch. I'll add your refinement now.
I already pointed out, and you mentioned, that this is a temporary move. Two things need to happen for 10 to become jruby-head in setup-ruby:
I'm currently working on tasks 1 and 2. Task 3 is under discussion at ruby/setup-ruby#684. |
I suppose this is valid. Once 10 is released, nearly all day-today development will focus on that line. The 9.4 line should not see heavy day-to-day development so testing against 9.4-head is probably not an important use case. |
JRuby 10 is about to become the new "jruby-head" but we want to ease into that transition. This PR filters available snapshot versions to just "9.4" releases until we are ready to support 10.