Skip to content

Instantly share code, notes, and snippets.

@ko1
Created February 29, 2024 08:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ko1/ba24938ee810793d52e462961056190c to your computer and use it in GitHub Desktop.
Save ko1/ba24938ee810793d52e462961056190c to your computer and use it in GitHub Desktop.
diff --git a/spec/ruby/core/enumerable/fixtures/classes.rb b/spec/ruby/core/enumerable/fixtures/classes.rb
index 2701c6999c..b89a7038db 100644
--- a/spec/ruby/core/enumerable/fixtures/classes.rb
+++ b/spec/ruby/core/enumerable/fixtures/classes.rb
@@ -37,13 +37,13 @@ def each(*arg)
class Empty
include Enumerable
- def each
+ def each(&_)
end
end
class EmptyWithSize
include Enumerable
- def each
+ def each(&_)
end
def size
0
@@ -52,7 +52,7 @@ def size
class ThrowingEach
include Enumerable
- def each
+ def each(&_)
raise "from each"
end
end
diff --git a/spec/ruby/core/kernel/define_singleton_method_spec.rb b/spec/ruby/core/kernel/define_singleton_method_spec.rb
index 24acec84f5..7df2122482 100644
--- a/spec/ruby/core/kernel/define_singleton_method_spec.rb
+++ b/spec/ruby/core/kernel/define_singleton_method_spec.rb
@@ -88,7 +88,7 @@ class DefineMethodByProcClass
it "does not use the caller block when no block is given" do
o = Object.new
- def o.define(name)
+ def o.define(name, &_)
define_singleton_method(name)
end
diff --git a/spec/ruby/core/kernel/fixtures/classes.rb b/spec/ruby/core/kernel/fixtures/classes.rb
index 541a4c075e..8cf7d5eab5 100644
--- a/spec/ruby/core/kernel/fixtures/classes.rb
+++ b/spec/ruby/core/kernel/fixtures/classes.rb
@@ -211,7 +211,7 @@ def get_binding
module BlockGiven
- def self.accept_block
+ def self.accept_block &_
block_given?
end
@@ -227,7 +227,7 @@ class << self
end
module SelfBlockGiven
- def self.accept_block
+ def self.accept_block &_
self.send(:block_given?)
end
@@ -243,7 +243,7 @@ class << self
end
module KernelBlockGiven
- def self.accept_block
+ def self.accept_block(&_)
Kernel.block_given?
end
diff --git a/spec/ruby/core/kernel/proc_spec.rb b/spec/ruby/core/kernel/proc_spec.rb
index 6553b8fd04..d39a593af9 100644
--- a/spec/ruby/core/kernel/proc_spec.rb
+++ b/spec/ruby/core/kernel/proc_spec.rb
@@ -36,7 +36,7 @@ def test
end
describe "Kernel#proc" do
- def some_method
+ def some_method(&_)
proc
end
diff --git a/spec/ruby/core/module/define_method_spec.rb b/spec/ruby/core/module/define_method_spec.rb
index e04bb87ceb..11e47a8b31 100644
--- a/spec/ruby/core/module/define_method_spec.rb
+++ b/spec/ruby/core/module/define_method_spec.rb
@@ -289,7 +289,7 @@ def obj.to_str() [] end
it "does not use the caller block when no block is given" do
o = Object.new
- def o.define(name)
+ def o.define(name, &_)
self.class.class_eval do
define_method(name)
end
diff --git a/spec/ruby/core/objectspace/garbage_collect_spec.rb b/spec/ruby/core/objectspace/garbage_collect_spec.rb
index 521eaa8785..c31f060944 100644
--- a/spec/ruby/core/objectspace/garbage_collect_spec.rb
+++ b/spec/ruby/core/objectspace/garbage_collect_spec.rb
@@ -11,7 +11,7 @@
end
it "ignores the supplied block" do
- -> { ObjectSpace.garbage_collect {} }.should_not raise_error
+ -> { ObjectSpace.garbage_collect {} }.should_not raise_error # TODO: memo: what is that?
end
it "always returns nil" do
diff --git a/spec/ruby/core/proc/fixtures/common.rb b/spec/ruby/core/proc/fixtures/common.rb
index 6e27a2dee7..e1653b497e 100644
--- a/spec/ruby/core/proc/fixtures/common.rb
+++ b/spec/ruby/core/proc/fixtures/common.rb
@@ -4,7 +4,7 @@ def to_ary
nil
end
end
- def self.new_proc_in_method
+ def self.new_proc_in_method(&_)
Proc.new
end
@@ -19,7 +19,7 @@ def self.proc_for_1
class ProcSubclass < Proc
end
- def self.new_proc_subclass_in_method
+ def self.new_proc_subclass_in_method &_
ProcSubclass.new
end
diff --git a/spec/ruby/core/proc/new_spec.rb b/spec/ruby/core/proc/new_spec.rb
index b2b7387756..9afe6339dd 100644
--- a/spec/ruby/core/proc/new_spec.rb
+++ b/spec/ruby/core/proc/new_spec.rb
@@ -167,7 +167,7 @@ def some_method
end
it "raises an ArgumentError when passed no block" do
- def some_method
+ def some_method &_
Proc.new
end
diff --git a/spec/ruby/fixtures/class.rb b/spec/ruby/fixtures/class.rb
index 98cb6c82a2..1f34a0ff91 100644
--- a/spec/ruby/fixtures/class.rb
+++ b/spec/ruby/fixtures/class.rb
@@ -1,6 +1,6 @@
module ClassSpecs
- def self.sclass_with_block
+ def self.sclass_with_block(&_) # TODO: yield in eval
eval <<-RUBY
class << self
yield
diff --git a/spec/ruby/language/delegation_spec.rb b/spec/ruby/language/delegation_spec.rb
index d780506421..4aa5bebe2e 100644
--- a/spec/ruby/language/delegation_spec.rb
+++ b/spec/ruby/language/delegation_spec.rb
@@ -82,8 +82,8 @@ def delegate(*)
it "delegates kwargs" do
a = Class.new(DelegationSpecs::Target)
a.class_eval(<<-RUBY)
- def delegate(**)
- target(**)
+ def delegate(**, &_) # memo: bug?
+ target(**, &_)
end
RUBY
diff --git a/spec/ruby/language/fixtures/delegation.rb b/spec/ruby/language/fixtures/delegation.rb
index 527d928390..a9d1e0110e 100644
--- a/spec/ruby/language/fixtures/delegation.rb
+++ b/spec/ruby/language/fixtures/delegation.rb
@@ -1,6 +1,6 @@
module DelegationSpecs
class Target
- def target(*args, **kwargs)
+ def target(*args, **kwargs, &_)
[args, kwargs]
end
diff --git a/spec/ruby/security/cve_2019_8322_spec.rb b/spec/ruby/security/cve_2019_8322_spec.rb
index b70d78c033..7a25b68268 100644
--- a/spec/ruby/security/cve_2019_8322_spec.rb
+++ b/spec/ruby/security/cve_2019_8322_spec.rb
@@ -8,7 +8,7 @@
describe "CVE-2019-8322 is resisted by" do
it "sanitising owner names" do
command = Gem::Commands::OwnerCommand.new
- def command.rubygems_api_request(*args)
+ def command.rubygems_api_request(*args, &_)
Struct.new(:body).new("---\n- email: \"\e]2;nyan\a\"\n handle: handle\n id: id\n")
end
def command.with_response(response)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment