lemon 0.9.2 → 0.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bc4b46bb63cecf471821a2b8997ba3f2d976917775f90eb28eab9b017051a8b
4
- data.tar.gz: b55cc5338d2ed16736d51cc15e60458dd8ecca01aab1af0f9b8c6160ca6e2bef
3
+ metadata.gz: 64d9cd2a28e7ea13ff88b7470b8799bea46c63f2820815b7e671aaef2f7dbb9d
4
+ data.tar.gz: ccf45aac87c34579ea4647f9e1f2971e1ad69251f8327764593003a1691c2c35
5
5
  SHA512:
6
- metadata.gz: 49acc3b4d7778393804c67097e96f96ff7461d86dc44768d6c599982d66a03e54ae006fdd108065219fcb0ffc50d874c44336870753688b48552330577e24fc0
7
- data.tar.gz: aa0ab93ed5a3e4b6357793745f6e530ba09db52ad3ffa8034ab785577f5371807b7ef79e5495ef0829dd14b7f15f11122b1f1f87237d97e1ee4ec167dd898f3d
6
+ metadata.gz: bc68af0a2bfe806bff320bc49368e95ba61658b84dc31920c305b4d42344ef776860d334bb079aa69eb67d97be8bbe5458bce8d5ff2469a588203950c434d725
7
+ data.tar.gz: fb96f5c06b6fce006920b67f36c7c6fbad043c0ce1cff255bc18c52698727adea00fbc0d4de3c156dd3d87e0ed1f8749a8b392a40bd6493f8583e8f34bece693
data/HISTORY.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # RELEASE HISTORY
2
2
 
3
+ ## 0.9.3 / 2026-04-01
4
+
5
+ Bug fix release. Fixes Ruby 3+ compatibility issues in test method dispatch.
6
+
7
+ Changes:
8
+
9
+ * Fix keyword argument handling in method test wrapper (Ruby 3+ kwargs split).
10
+ * Separate NameError from general errors in method aliasing for clearer messages.
11
+ * Include original error message in "not tested" error reports.
12
+ * Remove Ruby 1.8/1.9 compatibility guards.
13
+
14
+
3
15
  ## 0.9.2 / 2026-03-31
4
16
 
5
17
  Maintenance release. Modernized project tooling and cleaned up documentation.
@@ -1,7 +1,2 @@
1
- if RUBY_VERSION > '1.9'
2
- require_relative 'core_ext/kernel'
3
- require_relative 'core_ext/module'
4
- else
5
- require 'lemon/core_ext/kernel'
6
- require 'lemon/core_ext/module'
7
- end
1
+ require_relative 'core_ext/kernel'
2
+ require_relative 'core_ext/module'
@@ -83,14 +83,18 @@ module Lemon
83
83
  begin
84
84
  target_class.class_eval do
85
85
  alias_method "_lemon_#{target}", target
86
- define_method(target) do |*a,&b|
86
+ define_method(target) do |*a, **kw, &b|
87
87
  test.tested = true
88
- __send__("_lemon_#{target}",*a,&b)
88
+ __send__("_lemon_#{target}", *a, **kw, &b)
89
89
  end
90
90
  end
91
+ rescue NameError
92
+ Kernel.eval <<-END, test.to_proc.binding
93
+ raise NameError, "#{target} is not defined"
94
+ END
91
95
  rescue => error
92
96
  Kernel.eval <<-END, test.to_proc.binding
93
- raise #{error.class}, "#{target} not tested"
97
+ raise #{error.class}, "#{target} not tested (#{error.message})"
94
98
  END
95
99
  end
96
100
 
@@ -111,11 +115,7 @@ module Lemon
111
115
  #
112
116
  #
113
117
  def raise_pending(procedure)
114
- if RUBY_VERSION < '1.9'
115
- Kernel.eval %[raise NotImplementedError, "#{target} not tested"], procedure
116
- else
117
- Kernel.eval %[raise NotImplementedError, "#{target} not tested"], procedure.binding
118
- end
118
+ Kernel.eval %[raise NotImplementedError, "#{target} not tested"], procedure.binding
119
119
  end
120
120
 
121
121
  #
@@ -1,8 +1,4 @@
1
- if RUBY_VERSION < '1.9'
2
- require 'lemon/ignore_callers'
3
- else
4
- require_relative 'ignore_callers'
5
- end
1
+ require_relative 'ignore_callers'
6
2
 
7
3
  module Lemon
8
4
 
@@ -13,4 +9,3 @@ module Lemon
13
9
  end
14
10
 
15
11
  end
16
-
data/lib/lemon.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Lemon
2
- VERSION = '0.9.2'
2
+ VERSION = '0.9.3'
3
3
  end
4
4
 
5
5
  # Ruby Test standard location for test objects.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lemon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Sawyer