-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Bump Ruby from 3.3.6 to 3.4.0 #11162
base: main
Are you sure you want to change the base?
Conversation
be20242
to
3cf14b8
Compare
3cf14b8
to
aeb9baa
Compare
aeb9baa
to
3a85a9f
Compare
3a85a9f
to
64b18f2
Compare
64b18f2
to
316994c
Compare
@@ -174,7 +174,7 @@ def self.invalid_v2_requirement?(composer_json) | |||
|
|||
sig { params(dependency_url: String).returns(String) } | |||
def self.clean_dependency_url(dependency_url) | |||
return dependency_url unless URI::DEFAULT_PARSER.regexp[:ABS_URI].match?(dependency_url) |
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.
Not 100% sure why URI::RFC_3986.make_regexp.match?(dependency_url)
doesn't give the same results for this specific instance. But using RFC2396_PARSER
explicitly works for now.
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.
This is great!
racc (~> 1.4) | ||
nokogiri (1.16.0-x86_64-linux) | ||
nokogiri (1.17.2) | ||
mini_portile2 (~> 2.8.2) |
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's already 1.18.0.rc1 which already supports platform specific versions in Ruby 3.4. I suspect final version will be released very soon.
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.
Okay, let me upgrade to 1.18.0.rc1
for now, then we can bump to 1.18.0
once it's released.
EDIT: It's not worth the hassle. Just going to leave it as-is for now.
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.
Cool, it should work the same, just take longer to install.
@JamieMagee Did you find warning locations all messed up or is it just me? I'm trying to get Ruby print the code locations that I was expecting at ruby/ruby#12412. |
I didn't actually check the exact locations. The gem name was enough for me to investigate. |
What are you trying to accomplish?
Prepare for the Ruby 3.4.0 release on 25th December.
Anything you want to highlight for special attention from reviewers?
New warnings
After this upgrade there are a couple of new warnings printed in the console:
2.7.2
2.7.1
0.5.9
Removing
require "set"
After updating the target rubocop ruby version from 3.1 to 3.4 I was able to remove
require "set"
, as theset
module has been loaded by default since Ruby 3.2.01.Updating
ruby/ruby-setup
Support for Ruby
3.4.0-rc1
was only added inruby/[email protected]
: ruby/setup-ruby#675Adding
require "ostruct"
See #11163
RFC3986 URI parser is now the default
Previously, the RFC2396 was the default, but it was changed to RFC38962. We were using the
ABS_URI
regex, but themake_regex
with RFC3896 has equivalent behaviour.The RFC3986 parser also throws a slightly different error message for
InvalidURIError
.How will you know you've accomplished your goal?
All tests pass
Checklist
Footnotes
https://www.ruby-lang.org/en/news/2022/12/25/ruby-3-2-0-released/ ↩
https://github.com/ruby/uri/pull/107 ↩