A summary of data about the Ruby ecosystem.

Recent Releases of https://github.com/rubocop/rubocop-ast

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.50.0

Bug fixes

  • #412: Fix Node#argument? returning true for receivers that are structurally equal to an argument (e.g. the receiver in foo.bar(foo)). (@bbatsov)
  • #401: Avoid intermediate array allocations in HashNode#each_key/each_value. (@bbatsov)
  • #409: Fix Node#chained? and MethodDispatchNode#block_literal? returning true for nodes that are merely structurally equal to the receiver or send node (e.g. the argument in foo.bar(foo)). (@bbatsov)
  • #407: Fix the blockless form of the deprecated each_when, each_in_pattern, each_condition, and each_branch methods, which returned an unusable Enumerator. (@bbatsov)
  • #401: Fix force_encoding being a no-op for frozen string inputs. (@bbatsov)
  • #408: Fix ProcessedSource#preceding_line returning the last line of the file for tokens on the first line. (@bbatsov)

Changes

  • #411: Speed up filtered node traversals (each_descendant(:send) etc.) by not allocating an array per visited node, and add the non-splatting Node#type_in? predicate. (@bbatsov)
  • #404: Improve parser_prism performance by building tokens only when they are first accessed. (@bbatsov)
  • #408: Memoize ProcessedSource#checksum and skip the token sort when the tokens are already in order. (@bbatsov)
  • #410: Reduce allocations in keyword? and the method-name predicates (predicate_method?, bang_method?, etc.). (@bbatsov)
  • #405: Use Prism by default when analyzing Ruby 3.3 code. (@bbatsov)

- Ruby
Published by koic about 1 month ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.49.1

Bug fixes

  • #399: Fix unification variables not persisting in any-order nodes. (@marcandre)

- Ruby
Published by koic 5 months ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.49.0

New features

  • #394: Support Ruby 4.1 (experimental). (@koic)

- Ruby
Published by github-actions[bot] 8 months ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.48.0

New features

  • #391: Support Ruby 4.0 (experimental). (@koic)

- Ruby
Published by github-actions[bot] 9 months ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.46.0

New features

  • #379: Support RuboCop::AST::ComplexNode. ([@koic][])

Bug fixes

  • #380: Fix RuboCop::AST::NumericNode#sign? to return boolean. ([@viralpraxis][])

- Ruby
Published by koic about 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST 1.45.1

Bug fixes

  • #382: Fix an error when using Parser gem with prism_result. (@koic)

- Ruby
Published by koic about 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.45.0

New features

  • #381: Support AST::Node#any_match_pattern_type? method. (@koic)

- Ruby
Published by koic about 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.44.1

Bug fixes

- Ruby
Published by koic over 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.44.0

New features

  • #377: Support RuboCop::AST::Node#any_def_type? method. (@koic)

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.43.0

Changes

  • #374: Use the prism translation layer to analyze Ruby 3.4 by default. ([@earlopain])
  • #373: Add prism as a runtime dependency. ([@earlopain])

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.42.0

New features

  • #370: Support Prism::Translation::Parser35 for Ruby 3.5 parser (experimental). (@earlopain, @koic)

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.41.0

New features

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/rubocop/rubocop-ast - RuboCop AST v1.40.0

Changes

  • #354: Use Prism::Translation::Parser::Builder when parsing with prism. (@earlopain)

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/rubocop/rubocop-ast - rubocop-ast 0.1.0

New features

  • #36: Add post_condition_loop? and loop_keyword? for Node. (@fatkodima)
  • #38: Add helpers allowing to check whether the method is a nonmutating operator method or a nonmutating method of several core classes. (@fatkodima)
  • #37: Add enumerable_method? for MethodIdentifierPredicates. (@fatkodima)
  • #4: Add interpolation? for RegexpNode. (@tejasbubane)
  • #20: Add option predicates for RegexpNode. (@owst)
  • #11: Add argument_type? method to make it easy to recognize argument nodes. (@tejasbubane)
  • #31: NodePattern now uses param === node to match params, which allows Regexp, Proc, Set in addition to Nodes and literals. (@marcandre)
  • #41: Add delimiters and related predicates for RegexpNode. (@owst)
  • #46: Basic support for non-legacy AST output from parser. Note that there is no support (yet) in main RuboCop gem. Expect emit_forward_arg to be set to true in v1.0 (@marcandre)
  • #48: Support Parser::Ruby28 for Ruby 2.8 (3.0) parser (experimental). (@koic)
  • #35: NodePattern now accepts %named_param and %CONST. The macros def_node_pattern and def_node_search accept default named parameters. (@marcandre)

- Ruby
Published by bbatsov about 6 years ago

https://github.com/rubocop/rubocop-ast - rubocop-ast 0.0.3

Changes

  • Classes NodePattern, ProcessedSource and Token moved to AST::NodePattern, etc.
    The rubocop gem has aliases to ensure compatibility. [#7]
  • AST::ProcessedSource.from_file now raises a Errno::ENOENT instead of a RuboCop::Error [#7]

- Ruby
Published by bbatsov about 6 years ago

https://github.com/rubocop/rubocop-ast - rubocop-ast 0.0.2

Bug fixes

  • Perf #106: Fix RegexpNode#to_regexp where option is 'o' + any other (@marcandre)
  • Define RuboCop::AST::Version::STRING.

- Ruby
Published by bbatsov about 6 years ago

https://github.com/rubocop/rubocop-ast - rubocop-ast 0.0.1

- Ruby
Published by bbatsov about 6 years ago