<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby.git/lib/delegate.rb, branch ruby_3_2</title>
<subtitle>github.com: ruby/ruby.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/'/>
<entry>
<title>[ruby/delegate] Bump version to 0.3.0</title>
<updated>2022-12-05T05:47:54+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2022-12-05T05:46:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c4d22d47f8bd019ae6df98fafb9db7c20c33d30c'/>
<id>c4d22d47f8bd019ae6df98fafb9db7c20c33d30c</id>
<content type='text'>
https://github.com/ruby/delegate/commit/420637be45
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/delegate/commit/420637be45
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/delegate] Revert "Fix `DelegateClass` block "method redefined" warning"</title>
<updated>2022-12-01T08:08:02+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2022-12-01T05:11:50+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=a1d341efaf0b357e7aad3700ed7551559b4fcdf8'/>
<id>a1d341efaf0b357e7aad3700ed7551559b4fcdf8</id>
<content type='text'>
https://github.com/ruby/delegate/commit/2a91436284
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/delegate/commit/2a91436284
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/delegate] Fix DelegateClass block "method redefined" warning</title>
<updated>2022-10-14T15:08:44+00:00</updated>
<author>
<name>Jonathan Hefner</name>
<email>jonathan@hefner.pro</email>
</author>
<published>2022-10-11T17:02:15+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=60610031009e60bdfe5775b0316df251ee36a973'/>
<id>60610031009e60bdfe5775b0316df251ee36a973</id>
<content type='text'>
This commit prevents "method redefined" warnings when overriding methods
within a `DelegateClass` block, such as in the following example:

  ```ruby
  Base = Class.new do
    def foo
      "foo"
    end
  end

  Overridden = DelegateClass(Base) do
    def foo
      super + "!"
    end
  end
  ```

Fixes https://bugs.ruby-lang.org/issues/19047.

https://github.com/ruby/delegate/commit/214fae86de
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit prevents "method redefined" warnings when overriding methods
within a `DelegateClass` block, such as in the following example:

  ```ruby
  Base = Class.new do
    def foo
      "foo"
    end
  end

  Overridden = DelegateClass(Base) do
    def foo
      super + "!"
    end
  end
  ```

Fixes https://bugs.ruby-lang.org/issues/19047.

https://github.com/ruby/delegate/commit/214fae86de
</pre>
</div>
</content>
</entry>
<entry>
<title>Kernel#=~: delete</title>
<updated>2022-01-03T13:33:38+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2020-07-27T05:54:46+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=980bf94f022116308fb7f95f697a85dc24f5884a'/>
<id>980bf94f022116308fb7f95f697a85dc24f5884a</id>
<content type='text'>
Has been deprecated since ebff9dc10e6e72239c23e50acc7d3cbfdc659e7a.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Has been deprecated since ebff9dc10e6e72239c23e50acc7d3cbfdc659e7a.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update library versions of the default gems.</title>
<updated>2020-12-22T12:45:28+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2020-12-22T12:43:30+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=9b9cbbbc17bb5840581c7da37fd0feb0a7d4c1f3'/>
<id>9b9cbbbc17bb5840581c7da37fd0feb0a7d4c1f3</id>
<content type='text'>
  They are followed up with
  https://github.com/ruby/ruby/commit/8fb02b7a97317090e3946e6f2d4a7d034f9699f1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  They are followed up with
  https://github.com/ruby/ruby/commit/8fb02b7a97317090e3946e6f2d4a7d034f9699f1
</pre>
</div>
</content>
</entry>
<entry>
<title>Extract version number from the source</title>
<updated>2020-07-30T10:03:18+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2020-07-28T15:31:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=b2d96abb42abbe2e01f010ffc9ac51f0f9a50002'/>
<id>b2d96abb42abbe2e01f010ffc9ac51f0f9a50002</id>
<content type='text'>
"requiring version.rb" strategy has some issues.

- cannot work when cross-compiling
- often introduces wrong namespace
- must know the superclasses
- costs at each runtime than at build-time

etc.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
"requiring version.rb" strategy has some issues.

- cannot work when cross-compiling
- often introduces wrong namespace
- must know the superclasses
- costs at each runtime than at build-time

etc.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add instance_methods to class generated by DelegateClass</title>
<updated>2020-07-09T22:01:10+00:00</updated>
<author>
<name>Masataka Pocke Kuwabara</name>
<email>kuwabara@pocke.me</email>
</author>
<published>2020-07-09T22:01:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=ba81bc24e62d03cc0f4c05cf4e2b378696631568'/>
<id>ba81bc24e62d03cc0f4c05cf4e2b378696631568</id>
<content type='text'>
Also, make DelegateClass.instance_method fallback to superclass.

Fixes [Bug #16982]</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also, make DelegateClass.instance_method fallback to superclass.

Fixes [Bug #16982]</pre>
</div>
</content>
</entry>
<entry>
<title>Add require to Delegator examples</title>
<updated>2020-06-25T15:21:13+00:00</updated>
<author>
<name>Richard Schneeman</name>
<email>richard.schneeman+foo@gmail.com</email>
</author>
<published>2020-06-25T14:34:11+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=2d89af45ea8b3f521102c05694f419ecd8254e69'/>
<id>2d89af45ea8b3f521102c05694f419ecd8254e69</id>
<content type='text'>
In Ruby 2.7.1 SimpeDelegator cannot be used without requiring `delegate` this PR adds the require to the first example for each class so that devs don't have to hunt for what require to use.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In Ruby 2.7.1 SimpeDelegator cannot be used without requiring `delegate` this PR adds the require to the first example for each class so that devs don't have to hunt for what require to use.</pre>
</div>
</content>
</entry>
<entry>
<title>Support obj.clone(freeze: true) for freezing clone</title>
<updated>2020-03-22T16:30:07+00:00</updated>
<author>
<name>Jeremy Evans</name>
<email>code@jeremyevans.net</email>
</author>
<published>2019-09-23T23:03:15+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=4f7b435c955792af780fe9e94f98d3dde839e056'/>
<id>4f7b435c955792af780fe9e94f98d3dde839e056</id>
<content type='text'>
This freezes the clone even if the receiver is not frozen.  It
is only for consistency with freeze: false not freezing the clone
even if the receiver is frozen.

Because Object#clone is now partially implemented in Ruby and
not fully implemented in C, freeze: nil must be supported to
provide the default behavior of only freezing the clone if the
receiver is frozen.

This requires modifying delegate and set, to set freeze: nil
instead of freeze: true as the keyword parameter for
initialize_clone.  Those are the two libraries in stdlib that
override initialize_clone.

Implements [Feature #16175]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This freezes the clone even if the receiver is not frozen.  It
is only for consistency with freeze: false not freezing the clone
even if the receiver is frozen.

Because Object#clone is now partially implemented in Ruby and
not fully implemented in C, freeze: nil must be supported to
provide the default behavior of only freezing the clone if the
receiver is frozen.

This requires modifying delegate and set, to set freeze: nil
instead of freeze: true as the keyword parameter for
initialize_clone.  Those are the two libraries in stdlib that
override initialize_clone.

Implements [Feature #16175]
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix SimpleDelegator respond_to? regression</title>
<updated>2020-02-03T16:16:22+00:00</updated>
<author>
<name>Jean Boussier</name>
<email>jean.boussier@gmail.com</email>
</author>
<published>2020-02-03T11:29:37+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=f2552216d43040cd42bbb9fd484eab6c70856fe6'/>
<id>f2552216d43040cd42bbb9fd484eab6c70856fe6</id>
<content type='text'>
In 2.6, SimpleDelegator would always use the target `respond_to?`

In 2.7.0 it doesn't if the target does not inherit from Object.

This breaks compatibility for delegated objects that inherit
from BasicObject and redefine `respond_to?`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In 2.6, SimpleDelegator would always use the target `respond_to?`

In 2.7.0 it doesn't if the target does not inherit from Object.

This breaks compatibility for delegated objects that inherit
from BasicObject and redefine `respond_to?`.
</pre>
</div>
</content>
</entry>
</feed>
