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

Update yarp requirement from >= 0.9, < 0.11 to >= 0.9, < 0.14 #13

Closed
wants to merge 2 commits into from

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Oct 2, 2023

Updates the requirements on yarp to permit the latest version.

Release notes

Sourced from yarp's releases.

v0.13.0

Added

  • BEGIN {} blocks are only allowed at the top-level, and will now provide a syntax error if they are not.
  • Numbered parameters are not allowed in block parameters, and will now provide a syntax error if they are.
  • Many more Ruby modules and classes are now documented. Also, many have been moved into their own files and autoloaded so that initial boot time of the gem is much faster.
  • PM_TOKEN_METHOD_NAME is introduced, used to indicate an identifier that if definitely a method name because it has an ! or ? at the end.
  • In the C API, arrays, assocs, and hashes now can have the PM_NODE_FLAG_STATIC_LITERAL flag attached if they can be compiled statically. This is used in CRuby, for example, to determine if a duphash/duparray instruction can be used as opposed to a newhash/newarray.
  • Node#type is introduced, which returns a symbol representing the type of the node. This is useful for case comparisons when you have to compare against multiple types.

Changed

  • BREAKING: Everything has been renamed to prism instead of yarp. The yp_/YP_ prefix in the C API has been changed to pm_/PM_. For the most part, everything should be find/replaceable.
  • BREAKING: BlockArgumentNode nodes now go into the block field on CallNode nodes, in addition to the BlockNode nodes that used to be there. Hopefully this makes it more consistent to compile/deal with in general, but it does mean it can be a surprising breaking change.
  • Escaped whitespace in %w lists is now properly unescaped.
  • Node#pretty_print now respects pretty print indentation.
  • Dispatcher was previously firing _leave events in the incorrect order. This has now been fixed.
  • BREAKING: Visitor has now been split into Visitor and Compiler. The visitor visits nodes but doesn't return anything from the visit methods. It is suitable for taking action based on the tree, but not manipulating the tree itself. The Compiler visits nodes and returns the computed value up the tree. It is suitable for compiling the tree into another format. As such, MutationVisitor has been renamed to MutationCompiler.

v0.12.0

Added

  • RegularExpressionNode#options and InterpolatedRegularExpressionNode#options are now provided. These return integers that match up to the Regexp#options API.
  • Greatly improved Node#inspect and Node#pretty_print APIs.
  • MatchLastLineNode and InterpolatedMatchLastLineNode are introduced to represent using a regular expression as the predicate of an if or unless statement.
  • IntegerNode now has a base flag on it.
  • Heredocs that were previously InterpolatedStringNode and InterpolatedXStringNode nodes without any actual interpolation are now StringNode and XStringNode, respectively.
  • StringNode now has a frozen? flag on it, which respects the frozen_string_literal magic comment.
  • Numbered parameters are now supported, and are properly represented using LocalVariableReadNode nodes.
  • ImplicitNode is introduced, which wraps implicit calls, local variable reads, or constant reads in omitted hash values.
  • YARP::Dispatcher is introduced, which provides a way for multiple objects to listen for certain events on the AST while it is being walked. This is effectively a way to implement a more efficient visitor pattern when you have many different uses for the AST.

Changed

  • BREAKING: Flags fields are now marked as private, to ensure we can change their implementation under the hood. Actually querying should be through the accessor methods.
  • BREAKING: AliasNode is now split into AliasMethodNode and AliasGlobalVariableNode.
  • Method definitions on local variables is now correctly handled.
  • Unary minus precedence has been fixed.
  • Concatenating character literals with string literals is now fixed.
  • Many more invalid syntaxes are now properly rejected.
  • BREAKING: Comments now no longer include their trailing newline.

v0.11.0

Added

  • Node#inspect is much improved.
  • YARP::Pattern is introduced, which can construct procs to match against nodes.
  • BlockLocalVariableNode is introduced to take the place of the locations array on BlockParametersNode.
  • ParseResult#attach_comments! is now provided to attach comments to locations in the tree.
  • MultiTargetNode is introduced as the target of multi writes and for loops.

... (truncated)

Changelog

Sourced from yarp's changelog.

[0.13.0] - 2023-09-29

Added

  • BEGIN {} blocks are only allowed at the top-level, and will now provide a syntax error if they are not.
  • Numbered parameters are not allowed in block parameters, and will now provide a syntax error if they are.
  • Many more Ruby modules and classes are now documented. Also, many have been moved into their own files and autoloaded so that initial boot time of the gem is much faster.
  • PM_TOKEN_METHOD_NAME is introduced, used to indicate an identifier that if definitely a method name because it has an ! or ? at the end.
  • In the C API, arrays, assocs, and hashes now can have the PM_NODE_FLAG_STATIC_LITERAL flag attached if they can be compiled statically. This is used in CRuby, for example, to determine if a duphash/duparray instruction can be used as opposed to a newhash/newarray.
  • Node#type is introduced, which returns a symbol representing the type of the node. This is useful for case comparisons when you have to compare against multiple types.

Changed

  • BREAKING: Everything has been renamed to prism instead of yarp. The yp_/YP_ prefix in the C API has been changed to pm_/PM_. For the most part, everything should be find/replaceable.
  • BREAKING: BlockArgumentNode nodes now go into the block field on CallNode nodes, in addition to the BlockNode nodes that used to be there. Hopefully this makes it more consistent to compile/deal with in general, but it does mean it can be a surprising breaking change.
  • Escaped whitespace in %w lists is now properly unescaped.
  • Node#pretty_print now respects pretty print indentation.
  • Dispatcher was previously firing _leave events in the incorrect order. This has now been fixed.
  • BREAKING: Visitor has now been split into Visitor and Compiler. The visitor visits nodes but doesn't return anything from the visit methods. It is suitable for taking action based on the tree, but not manipulating the tree itself. The Compiler visits nodes and returns the computed value up the tree. It is suitable for compiling the tree into another format. As such, MutationVisitor has been renamed to MutationCompiler.

[0.12.0] - 2023-09-15

Added

  • RegularExpressionNode#options and InterpolatedRegularExpressionNode#options are now provided. These return integers that match up to the Regexp#options API.
  • Greatly improved Node#inspect and Node#pretty_print APIs.
  • MatchLastLineNode and InterpolatedMatchLastLineNode are introduced to represent using a regular expression as the predicate of an if or unless statement.
  • IntegerNode now has a base flag on it.
  • Heredocs that were previously InterpolatedStringNode and InterpolatedXStringNode nodes without any actual interpolation are now StringNode and XStringNode, respectively.
  • StringNode now has a frozen? flag on it, which respects the frozen_string_literal magic comment.
  • Numbered parameters are now supported, and are properly represented using LocalVariableReadNode nodes.
  • ImplicitNode is introduced, which wraps implicit calls, local variable reads, or constant reads in omitted hash values.
  • YARP::Dispatcher is introduced, which provides a way for multiple objects to listen for certain events on the AST while it is being walked. This is effectively a way to implement a more efficient visitor pattern when you have many different uses for the AST.

Changed

  • BREAKING: Flags fields are now marked as private, to ensure we can change their implementation under the hood. Actually querying should be through the accessor methods.
  • BREAKING: AliasNode is now split into AliasMethodNode and AliasGlobalVariableNode.
  • Method definitions on local variables is now correctly handled.
  • Unary minus precedence has been fixed.
  • Concatenating character literals with string literals is now fixed.
  • Many more invalid syntaxes are now properly rejected.
  • BREAKING: Comments now no longer include their trailing newline.

[0.11.0] - 2023-09-08

Added

  • Node#inspect is much improved.
  • YARP::Pattern is introduced, which can construct procs to match against nodes.

... (truncated)

Commits
  • 0257121 Update CHANGELOG links
  • 3e44415 Bump version
  • e92e5a2 Merge pull request #1608 from ruby/add-type
  • 0c7d9c3 Add a type method for quick comparison
  • 81265ed Self should not be marked as static literal
  • 389f4c5 Merge pull request #1606 from ruby/static-literal
  • 80c2c93 Turn on static literal for assoc, hash, and array nodes
  • d93a391 Merge pull request #1577 from haldun/haldun/test-predicate-closed-for-elsif
  • dd3a2c6 Merge pull request #1558 from haldun/haldun/check-semicolon-after-inheritance-op
  • 0326ba6 Check for a semicolon or a newline after the inheritance operator
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Updates the requirements on [yarp](https://github.com/ruby/prism) to permit the latest version.
- [Release notes](https://github.com/ruby/prism/releases)
- [Changelog](https://github.com/ruby/prism/blob/main/CHANGELOG.md)
- [Commits](ruby/prism@v0.10.0...v0.13.0)

---
updated-dependencies:
- dependency-name: yarp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Copy link

github-actions bot commented Dec 1, 2023

This pull request is being marked as stale because there was no activity in the last 2 months

@github-actions github-actions bot added the Stale label Dec 1, 2023
@github-actions github-actions bot closed this Dec 16, 2023
Copy link
Author

dependabot bot commented on behalf of github Dec 16, 2023

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/bundler/yarp-0.13.0 branch December 16, 2023 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants