Skip to content
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

Register a Ruby 3.4 parser #991

Merged
merged 1 commit into from Jan 15, 2024
Merged

Conversation

casperisfine
Copy link
Contributor

To avoid failing when running as part of ruby-head test builds.

I did the same as previous years, just initialized 3.4 as a copy of 3.3.

@koic
Copy link
Collaborator

koic commented Jan 15, 2024

Rakefile lacks the following change:

diff --git a/Rakefile b/Rakefile
index 778e61db..1afcf209 100644
--- a/Rakefile
+++ b/Rakefile
@@ -38,6 +38,7 @@ GENERATED_FILES = %w(lib/parser/lexer-F0.rb
                      lib/parser/ruby31.rb
                      lib/parser/ruby32.rb
                      lib/parser/ruby33.rb
+                     lib/parser/ruby34.rb
                      lib/parser/macruby.rb
                      lib/parser/rubymotion.rb)

Ref: #904

@casperisfine
Copy link
Contributor Author

@koic good catch. I updated my PR.

@koic
Copy link
Collaborator

koic commented Jan 15, 2024

Overall, this looks good. One point I forgot to mention is that the commit message title needs + prefix:
https://github.com/whitequark/parser/blob/master/CONTRIBUTING.md#contributing-to-parser

To avoid failing when running as part of ruby-head test builds.

I did the same as previous years, just initialized 3.4 as a copy
of 3.3.
@casperisfine
Copy link
Contributor Author

the commit message title needs + prefix:

Ah, thank you. I fixed that as well.

@iliabylich iliabylich merged commit eb6436d into whitequark:master Jan 15, 2024
9 checks passed
@iliabylich
Copy link
Collaborator

Thanks.

Honestly I was hoping for some hype around Prism to slowly deprecate parser for 3.4+ Rubies. Maintaining all grammars for all Rubies starting from 1.8 is getting more and more painful, any change to the shape of the internal state can require a change to 16 (well, now 17) .y files.

Also, branching 3.4 now means that we'll need to backport all changes starting from Ruby 3.3.1 both to ruby33.y and ruby34.y so previously I was trying to postpone adding a new version of parser as much as I could until somebody comes and explicitly asks to do that. This time it happened faster than ever before.

Do you need a release?

@casperisfine
Copy link
Contributor Author

Honestly I was hoping for some hype around Prism to slowly deprecate parser for 3.4+ Rubies.

I highly suspect 3.4 will be the last one, but yeah, right now lots of tooling hasn't moved (and will probably take a while because prism doesn't support older rubies (yet?)

Do you need a release?

It would be nice, but no rush.

@iliabylich
Copy link
Collaborator

3.3.0.4 has been released

@casperisfine
Copy link
Contributor Author

Much appreciated.

koic added a commit to koic/rubocop-ast that referenced this pull request Jan 15, 2024
Parser gem has been started development for Ruby 3.4 (edge Ruby).
whitequark/parser#991

And this PR update to require Parser 3.3.0.4 or higher, which contains `Parser::Ruby34`.
https://github.com/whitequark/parser/blob/master/CHANGELOG.md#not-released-2024-01-15
bbatsov pushed a commit to rubocop/rubocop-ast that referenced this pull request Jan 16, 2024
Parser gem has been started development for Ruby 3.4 (edge Ruby).
whitequark/parser#991

And this PR update to require Parser 3.3.0.4 or higher, which contains `Parser::Ruby34`.
https://github.com/whitequark/parser/blob/master/CHANGELOG.md#not-released-2024-01-15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants