Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-dry-logic for 
openSUSE:Factory checked in at 2021-01-21 21:55:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-dry-logic (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-dry-logic.new.28504 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-dry-logic"

Thu Jan 21 21:55:34 2021 rev:3 rq:865186 version:1.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-dry-logic/rubygem-dry-logic.changes      
2020-10-05 19:31:12.180715266 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-dry-logic.new.28504/rubygem-dry-logic.changes
   2021-01-21 21:55:35.249803628 +0100
@@ -1,0 +2,28 @@
+Wed Jan 20 12:33:46 UTC 2021 - Stephan Kulow <[email protected]>
+
+updated to version 1.1.0
+ see installed CHANGELOG.md
+
+  <!--- DO NOT EDIT THIS FILE - IT'S AUTOMATICALLY GENERATED VIA DEVTOOLS --->
+  
+  ## 1.1.0 2020-12-26
+  
+  
+  ### Changed
+  
+  - Switched to equalizer from dry-core (@solnic)
+  
+  [Compare 
v1.0.8...v1.1.0](https://github.com/dry-rb/dry-logic/compare/v1.0.8...v1.1.0)
+  
+  ## 1.0.8 2020-09-28
+  
+  
+  ### Fixed
+  
+  - Better Ruby 3 support with fixed specialization for rules of negative 
arity (@flash-gordon)
+  
+  
+  [Compare 
v1.0.7...v1.0.8](https://github.com/dry-rb/dry-logic/compare/v1.0.7...v1.0.8)
+  
+
+-------------------------------------------------------------------

Old:
----
  dry-logic-1.0.7.gem

New:
----
  dry-logic-1.1.0.gem

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

Other differences:
------------------
++++++ rubygem-dry-logic.spec ++++++
--- /var/tmp/diff_new_pack.WKbe2b/_old  2021-01-21 21:55:35.769803991 +0100
+++ /var/tmp/diff_new_pack.WKbe2b/_new  2021-01-21 21:55:35.773803994 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-dry-logic
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,12 +24,12 @@
 #
 
 Name:           rubygem-dry-logic
-Version:        1.0.7
+Version:        1.1.0
 Release:        0
 %define mod_name dry-logic
 %define mod_full_name %{mod_name}-%{version}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-BuildRequires:  %{ruby >= 2.4.0}
+BuildRequires:  %{ruby >= 2.5.0}
 BuildRequires:  %{rubygem gem2rpm}
 BuildRequires:  ruby-macros >= 5
 URL:            https://dry-rb.org/gems/dry-logic

++++++ dry-logic-1.0.7.gem -> dry-logic-1.1.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md    2020-08-13 12:34:32.000000000 +0200
+++ new/CHANGELOG.md    2020-12-26 18:06:48.000000000 +0100
@@ -1,3 +1,24 @@
+<!--- DO NOT EDIT THIS FILE - IT'S AUTOMATICALLY GENERATED VIA DEVTOOLS --->
+
+## 1.1.0 2020-12-26
+
+
+### Changed
+
+- Switched to equalizer from dry-core (@solnic)
+
+[Compare 
v1.0.8...v1.1.0](https://github.com/dry-rb/dry-logic/compare/v1.0.8...v1.1.0)
+
+## 1.0.8 2020-09-28
+
+
+### Fixed
+
+- Better Ruby 3 support with fixed specialization for rules of negative arity 
(@flash-gordon)
+
+
+[Compare 
v1.0.7...v1.0.8](https://github.com/dry-rb/dry-logic/compare/v1.0.7...v1.0.8)
+
 ## 1.0.7 2020-08-13
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2020-08-13 12:34:32.000000000 +0200
+++ new/README.md       2020-12-26 18:06:48.000000000 +0100
@@ -21,7 +21,7 @@
 
 This library officially supports the following Ruby versions:
 
-* MRI >= `2.4`
+* MRI >= `2.5`
 * jruby >= `9.2`
 
 ## License
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dry-logic.gemspec new/dry-logic.gemspec
--- old/dry-logic.gemspec       2020-08-13 12:34:32.000000000 +0200
+++ new/dry-logic.gemspec       2020-12-26 18:06:48.000000000 +0100
@@ -25,12 +25,11 @@
   spec.metadata['source_code_uri']   = 'https://github.com/dry-rb/dry-logic'
   spec.metadata['bug_tracker_uri']   = 
'https://github.com/dry-rb/dry-logic/issues'
 
-  spec.required_ruby_version = ">= 2.4.0"
+  spec.required_ruby_version = ">= 2.5.0"
 
   # to update dependencies edit project.yml
   spec.add_runtime_dependency "concurrent-ruby", "~> 1.0"
-  spec.add_runtime_dependency "dry-core", "~> 0.2"
-  spec.add_runtime_dependency "dry-equalizer", "~> 0.2"
+  spec.add_runtime_dependency "dry-core", "~> 0.5", ">= 0.5"
 
   spec.add_development_dependency "bundler"
   spec.add_development_dependency "rake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/dry/logic/evaluator.rb 
new/lib/dry/logic/evaluator.rb
--- old/lib/dry/logic/evaluator.rb      2020-08-13 12:34:32.000000000 +0200
+++ new/lib/dry/logic/evaluator.rb      2020-12-26 18:06:48.000000000 +0100
@@ -1,6 +1,6 @@
 # frozen_string_literal: true
 
-require "dry/equalizer"
+require "dry/core/equalizer"
 
 module Dry
   module Logic
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/dry/logic/operations/abstract.rb 
new/lib/dry/logic/operations/abstract.rb
--- old/lib/dry/logic/operations/abstract.rb    2020-08-13 12:34:32.000000000 
+0200
+++ new/lib/dry/logic/operations/abstract.rb    2020-12-26 18:06:48.000000000 
+0100
@@ -1,7 +1,7 @@
 # frozen_string_literal: true
 
 require "dry/core/constants"
-require "dry/equalizer"
+require "dry/core/equalizer"
 require "dry/logic/operators"
 
 module Dry
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/dry/logic/rule/interface.rb 
new/lib/dry/logic/rule/interface.rb
--- old/lib/dry/logic/rule/interface.rb 2020-08-13 12:34:32.000000000 +0200
+++ new/lib/dry/logic/rule/interface.rb 2020-12-26 18:06:48.000000000 +0100
@@ -4,6 +4,8 @@
   module Logic
     class Rule
       class Interface < ::Module
+        SPLAT = ["*rest"].freeze
+
         attr_reader :arity
 
         attr_reader :curried
@@ -18,12 +20,10 @@
 
           define_constructor if curried?
 
-          if variable_arity?
-            define_splat_application
-          elsif constant?
+          if constant?
             define_constant_application
           else
-            define_fixed_application
+            define_application
           end
         end
 
@@ -32,7 +32,7 @@
         end
 
         def variable_arity?
-          arity.equal?(-1)
+          arity.negative?
         end
 
         def curried?
@@ -41,7 +41,13 @@
 
         def unapplied
           if variable_arity?
-            -1
+            unapplied = arity.abs - 1 - curried
+
+            if unapplied.negative?
+              0
+            else
+              unapplied
+            end
           else
             arity - curried
           end
@@ -51,8 +57,19 @@
           if constant?
             "Constant"
           else
-            arity_str = variable_arity? ? "VariableArity" : "#{arity}Arity"
-            curried_str = curried? ? "#{curried}Curried" : EMPTY_STRING
+            arity_str =
+              if variable_arity?
+                "Variable#{arity.abs - 1}Arity"
+              else
+                "#{arity}Arity"
+              end
+
+            curried_str =
+              if curried?
+                "#{curried}Curried"
+              else
+                EMPTY_STRING
+              end
 
             "#{arity_str}#{curried_str}"
           end
@@ -91,32 +108,10 @@
           end
         end
 
-        def define_splat_application
-          application =
-            if curried?
-              "@predicate[#{curried_args.join(", ")}, *input]"
-            else
-              "@predicate[*input]"
-            end
-
-          module_eval(<<~RUBY, __FILE__, __LINE__ + 1)
-            def call(*input)
-              if #{application}
-                Result::SUCCESS
-              else
-                Result.new(false, id) { ast(*input) }
-              end
-            end
-
-            def [](*input)
-              #{application}
-            end
-          RUBY
-        end
-
-        def define_fixed_application
-          parameters = unapplied_args.join(", ")
-          application = "@predicate[#{(curried_args + unapplied_args).join(", 
")}]"
+        def define_application
+          splat = variable_arity? ? SPLAT : EMPTY_ARRAY
+          parameters = (unapplied_args + splat).join(", ")
+          application = "@predicate[#{(curried_args + unapplied_args + 
splat).join(", ")}]"
 
           module_eval(<<~RUBY, __FILE__, __LINE__ + 1)
             def call(#{parameters})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/dry/logic/rule.rb new/lib/dry/logic/rule.rb
--- old/lib/dry/logic/rule.rb   2020-08-13 12:34:32.000000000 +0200
+++ new/lib/dry/logic/rule.rb   2020-12-26 18:06:48.000000000 +0100
@@ -2,7 +2,7 @@
 
 require "concurrent/map"
 require "dry/core/constants"
-require "dry/equalizer"
+require "dry/core/equalizer"
 require "dry/logic/operations"
 require "dry/logic/result"
 require "dry/logic/rule/interface"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/dry/logic/version.rb new/lib/dry/logic/version.rb
--- old/lib/dry/logic/version.rb        2020-08-13 12:34:32.000000000 +0200
+++ new/lib/dry/logic/version.rb        2020-12-26 18:06:48.000000000 +0100
@@ -2,6 +2,6 @@
 
 module Dry
   module Logic
-    VERSION = "1.0.7"
+    VERSION = "1.1.0"
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2020-08-13 12:34:32.000000000 +0200
+++ new/metadata        2020-12-26 18:06:48.000000000 +0100
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: dry-logic
 version: !ruby/object:Gem::Version
-  version: 1.0.7
+  version: 1.1.0
 platform: ruby
 authors:
 - Piotr Solnica
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2020-08-13 00:00:00.000000000 Z
+date: 2020-12-26 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: concurrent-ruby
@@ -30,28 +30,20 @@
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '0.2'
-  type: :runtime
-  prerelease: false
-  version_requirements: !ruby/object:Gem::Requirement
-    requirements:
-    - - "~>"
-      - !ruby/object:Gem::Version
-        version: '0.2'
-- !ruby/object:Gem::Dependency
-  name: dry-equalizer
-  requirement: !ruby/object:Gem::Requirement
-    requirements:
-    - - "~>"
+        version: '0.5'
+    - - ">="
       - !ruby/object:Gem::Version
-        version: '0.2'
+        version: '0.5'
   type: :runtime
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '0.2'
+        version: '0.5'
+    - - ">="
+      - !ruby/object:Gem::Version
+        version: '0.5'
 - !ruby/object:Gem::Dependency
   name: bundler
   requirement: !ruby/object:Gem::Requirement
@@ -147,14 +139,14 @@
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
-      version: 2.4.0
+      version: 2.5.0
 required_rubygems_version: !ruby/object:Gem::Requirement
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
       version: '0'
 requirements: []
-rubygems_version: 3.0.3
+rubygems_version: 3.1.4
 signing_key: 
 specification_version: 4
 summary: Predicate logic with rule composition

Reply via email to