Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-rubocop-ast for 
openSUSE:Factory checked in at 2021-06-01 10:39:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rubocop-ast (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rubocop-ast.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rubocop-ast"

Tue Jun  1 10:39:59 2021 rev:10 rq:896522 version:1.7.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rubocop-ast/rubygem-rubocop-ast.changes  
2021-05-16 23:40:59.937858348 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-rubocop-ast.new.1898/rubygem-rubocop-ast.changes
        2021-06-01 10:41:35.649235177 +0200
@@ -1,0 +2,18 @@
+Tue Jun  1 03:42:13 UTC 2021 - Manuel Schnitzer <mschnit...@suse.com>
+
+- updated to version 1.7.0
+
+  ## 1.7.0 (2021-05-28)
+
+  ### New features
+
+  * [#171](https://github.com/rubocop-hq/rubocop-ast/pull/171): Add 
`SendNode#def_modifier` that returns the `def` node it modifies, or `nil`. 
([@marcandre][])
+  * [#186](https://github.com/rubocop-hq/rubocop-ast/pull/186): Add `pattern` 
method for `AST::InPatternNode` node. ([@koic][])
+
+  ## 1.6.0 (2021-05-26)
+
+  ### New features
+
+  * [#183](https://github.com/rubocop-hq/rubocop-ast/pull/183): Add 
`AST::InPatternNode` node. ([@koic][])
+
+-------------------------------------------------------------------

Old:
----
  rubocop-ast-1.5.0.gem

New:
----
  rubocop-ast-1.7.0.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-rubocop-ast.spec ++++++
--- /var/tmp/diff_new_pack.eGkiuk/_old  2021-06-01 10:41:36.237236178 +0200
+++ /var/tmp/diff_new_pack.eGkiuk/_new  2021-06-01 10:41:36.245236191 +0200
@@ -16,29 +16,31 @@
 #
 
 
-%define mod_name rubocop-ast
-%define mod_full_name %{mod_name}-%{version}
 #
 # This file was generated with a gem2rpm.yml and not just plain gem2rpm.
 # All sections marked as MANUAL, license headers, summaries and descriptions
 # can be maintained in that file. Please consult this file before editing any
 # of those fields
 #
+
 Name:           rubygem-rubocop-ast
-Version:        1.5.0
+Version:        1.7.0
 Release:        0
-Summary:        RuboCop tools to deal with Ruby code AST
-License:        MIT
-Group:          Development/Languages/Ruby
-URL:            https://github.com/rubocop-hq/rubocop-ast
-Source:         https://rubygems.org/gems/%{mod_full_name}.gem
-Source1:        gem2rpm.yml
-BuildRequires:  %{ruby >= 2.5.0}
-BuildRequires:  %{rubygem gem2rpm}
-BuildRequires:  ruby-macros >= 5
+%define mod_name rubocop-ast
+%define mod_full_name %{mod_name}-%{version}
 # MANUAL
 BuildRequires:  fdupes
 # /MANUAL
+BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+BuildRequires:  %{ruby >= 2.5.0}
+BuildRequires:  %{rubygem gem2rpm}
+BuildRequires:  ruby-macros >= 5
+URL:            https://github.com/rubocop-hq/rubocop-ast
+Source:         https://rubygems.org/gems/%{mod_full_name}.gem
+Source1:        gem2rpm.yml
+Summary:        RuboCop tools to deal with Ruby code AST
+License:        MIT
+Group:          Development/Languages/Ruby
 
 %description
 RuboCop's Node and NodePattern classes.

++++++ rubocop-ast-1.5.0.gem -> rubocop-ast-1.7.0.gem ++++++
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast/builder.rb 
new/lib/rubocop/ast/builder.rb
--- old/lib/rubocop/ast/builder.rb      2021-05-02 12:42:39.000000000 +0200
+++ new/lib/rubocop/ast/builder.rb      2021-05-28 18:57:48.000000000 +0200
@@ -49,6 +49,7 @@
         float:        FloatNode,
         hash:         HashNode,
         if:           IfNode,
+        in_pattern:   InPatternNode,
         int:          IntNode,
         index:        IndexNode,
         indexasgn:    IndexasgnNode,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast/node/case_match_node.rb 
new/lib/rubocop/ast/node/case_match_node.rb
--- old/lib/rubocop/ast/node/case_match_node.rb 2021-05-02 12:42:39.000000000 
+0200
+++ new/lib/rubocop/ast/node/case_match_node.rb 2021-05-28 18:57:48.000000000 
+0200
@@ -24,9 +24,9 @@
         self
       end
 
-      # Returns an array of all the when branches in the `case` statement.
+      # Returns an array of all the `in` pattern branches in the `case` 
statement.
       #
-      # @return [Array<Node>] an array of `in_pattern` nodes
+      # @return [Array<InPatternNode>] an array of `in_pattern` nodes
       def in_pattern_branches
         node_parts[1...-1]
       end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast/node/in_pattern_node.rb 
new/lib/rubocop/ast/node/in_pattern_node.rb
--- old/lib/rubocop/ast/node/in_pattern_node.rb 1970-01-01 01:00:00.000000000 
+0100
+++ new/lib/rubocop/ast/node/in_pattern_node.rb 2021-05-28 18:57:48.000000000 
+0200
@@ -0,0 +1,38 @@
+# frozen_string_literal: true
+
+module RuboCop
+  module AST
+    # A node extension for `in` nodes. This will be used in place of a plain
+    # node when the builder constructs the AST, making its methods available
+    # to all `in` nodes within RuboCop.
+    class InPatternNode < Node
+      # Returns a node of the pattern in the `in` branch.
+      #
+      # @return [Node] a pattern node
+      def pattern
+        node_parts.first
+      end
+
+      # Returns the index of the `in` branch within the `case` statement.
+      #
+      # @return [Integer] the index of the `in` branch
+      def branch_index
+        parent.in_pattern_branches.index(self)
+      end
+
+      # Checks whether the `in` node has a `then` keyword.
+      #
+      # @return [Boolean] whether the `in` node has a `then` keyword
+      def then?
+        loc.begin&.is?('then')
+      end
+
+      # Returns the body of the `in` node.
+      #
+      # @return [Node, nil] the body of the `in` node
+      def body
+        node_parts[-1]
+      end
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast/node/mixin/method_dispatch_node.rb 
new/lib/rubocop/ast/node/mixin/method_dispatch_node.rb
--- old/lib/rubocop/ast/node/mixin/method_dispatch_node.rb      2021-05-02 
12:42:39.000000000 +0200
+++ new/lib/rubocop/ast/node/mixin/method_dispatch_node.rb      2021-05-28 
18:57:48.000000000 +0200
@@ -165,16 +165,34 @@
         ARITHMETIC_OPERATORS.include?(method_name)
       end
 
-      # Checks if this node is part of a chain of `def` modifiers.
+      # Checks if this node is part of a chain of `def` or `defs` modifiers.
       #
       # @example
       #
       #   private def foo; end
       #
-      # @return [Boolean] whether the dispatched method is a `def` modifier
-      def def_modifier?
-        send_type? &&
-          adjacent_def_modifier? || 
each_child_node(:send).any?(&:def_modifier?)
+      # @return wether the `def|defs` node is a modifier or not.
+      # See also `def_modifier` that returns the node or `nil`
+      def def_modifier?(node = self)
+        !!def_modifier(node)
+      end
+
+      # Checks if this node is part of a chain of `def` or `defs` modifiers.
+      #
+      # @example
+      #
+      #   private def foo; end
+      #
+      # @return [Node | nil] returns the `def|defs` node this is a modifier 
for,
+      # or `nil` if it isn't a def modifier
+      def def_modifier(node = self)
+        arg = node.children[2]
+
+        return unless node.send_type? && node.receiver.nil? && 
arg.is_a?(::AST::Node)
+
+        return arg if arg.def_type? || arg.defs_type?
+
+        def_modifier(arg)
       end
 
       # Checks whether this is a lambda. Some versions of parser parses
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast/version.rb 
new/lib/rubocop/ast/version.rb
--- old/lib/rubocop/ast/version.rb      2021-05-02 12:42:39.000000000 +0200
+++ new/lib/rubocop/ast/version.rb      2021-05-28 18:57:48.000000000 +0200
@@ -3,7 +3,7 @@
 module RuboCop
   module AST
     module Version
-      STRING = '1.5.0'
+      STRING = '1.7.0'
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rubocop/ast.rb new/lib/rubocop/ast.rb
--- old/lib/rubocop/ast.rb      2021-05-02 12:42:39.000000000 +0200
+++ new/lib/rubocop/ast.rb      2021-05-28 18:57:48.000000000 +0200
@@ -53,6 +53,7 @@
 require_relative 'ast/node/float_node'
 require_relative 'ast/node/hash_node'
 require_relative 'ast/node/if_node'
+require_relative 'ast/node/in_pattern_node'
 require_relative 'ast/node/index_node'
 require_relative 'ast/node/indexasgn_node'
 require_relative 'ast/node/int_node'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2021-05-02 12:42:39.000000000 +0200
+++ new/metadata        2021-05-28 18:57:48.000000000 +0200
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: rubocop-ast
 version: !ruby/object:Gem::Version
-  version: 1.5.0
+  version: 1.7.0
 platform: ruby
 authors:
 - Bozhidar Batsov
@@ -10,7 +10,7 @@
 autorequire:
 bindir: bin
 cert_chain: []
-date: 2021-05-02 00:00:00.000000000 Z
+date: 2021-05-28 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: parser
@@ -82,6 +82,7 @@
 - lib/rubocop/ast/node/forward_args_node.rb
 - lib/rubocop/ast/node/hash_node.rb
 - lib/rubocop/ast/node/if_node.rb
+- lib/rubocop/ast/node/in_pattern_node.rb
 - lib/rubocop/ast/node/index_node.rb
 - lib/rubocop/ast/node/indexasgn_node.rb
 - lib/rubocop/ast/node/int_node.rb

Reply via email to