| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Patch by darkphnx (Dan Wentworth) . Thanks!
[Feature #15964]
|
| |
|
|
|
|
|
|
|
|
| |
Since 50f5a0a8d6e7ad89d6caff695a08dbd38edb7a6e, some C++ extensions
needed fixes like https://github.com/eagletmt/faml/pull/49 to make their
build succeed.
Thus it's worth noting that C API declarations are changed.
|
|
|
|
| |
A follow up for 16c6984bb9..b5b3afadfa. [Feature #14183]
|
|
|
|
| |
Related to [Feature #15955].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`umethod.bind_call(obj, ...)` is semantically equivalent to
`umethod.bind(obj).call(...)`. This idiom is used in some libraries to
call a method that is overridden. The added method does the same
without allocation of intermediate Method object. [Feature #15955]
```
class Foo
def add_1(x)
x + 1
end
end
class Bar < Foo
def add_1(x) # override
x + 2
end
end
obj = Bar.new
p obj.add_1(1) #=> 3
p Foo.instance_method(:add_1).bind(obj).call(1) #=> 2
p Foo.instance_method(:add_1).bind_call(obj, 1) #=> 2
```
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commits:
* d365fd5a024254d7c105a62a015a7ea29ccf3e5d
* d780c3662484d6072b3a6945b840049de72c2096
* aa7211836b769231a2a8ef6b6ec2fd0ec882ef29
* 043f010c28e82ea38978bf8ed885416f133b5b75
* bb4dd7c6af05c7821d572e2592ea3d0cc748d81f
* 043f010c28e82ea38978bf8ed885416f133b5b75
* f169043d81524b5b529f2c1e9c35437ba5bc3a7a
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/94645
|
|
|
|
| |
pushing a trivial commit for testing post-receive hook
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Thanks for the patch gareth (Gareth Adams). [Bug #15933]
-------
Combines two small, but very related changes
1: Treat HTTPS the same as HTTP
Previously, OpenURI followed guidance in RFC2616/3.7.1:
> When no explicit charset parameter is provided by the sender, media
> subtypes of the "text" type are defined to have a default charset
> value of "ISO-8859-1" when received via HTTP.
However this RFC was written before TLS was established and OpenURI was
never updated to treat HTTPS traffic the same way. So, HTTPS documents
received a different default to HTTP documents.
This commit removes the scheme check so that all text/* documents
processed by OpenURI are treated the same way.
In theory this processing gets applied to FTP URIs too, but there's no
mechanism in OpenURI for FTP documents to have Content-Type metadata
appended to them, so this ends up being a no-op.
2: Change default charset for text/* to UTF-8
Replaces the default ISO-8859-1 charset previously defined in RFC2616 (now
obsoleted) with a UTF-8 charset as defined in RFC6838.
Fixes: https://bugs.ruby-lang.org/issues/15933
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- Add note regarding IA64 removal.
- Add note about Thread allocation performance improvements.
|
|
|
|
| |
[Feature #10771]
|
|
|
|
|
|
| |
[Feature #15777]
Closes: https://github.com/ruby/ruby/pull/2173
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Implement Complex#<=> so that it is usable as an argument when
calling <=> on objects of other classes (since #coerce will coerce
such numbers to Complex). If the complex number has a zero imaginary
part, and the other argument is a real number (or complex number with
zero imaginary part), return -1, 0, or 1. Otherwise, return nil,
indicating the objects are not comparable.
Fixes [Bug #15857]
|
| |
|
| |
|
|
|
|
|
| |
* io.c (rb_io_set_encoding_by_bom): IO#set_encoding_by_bom to set
the encoding by BOM if exists. [Bug #15210]
|
|
|
|
| |
See https://github.com/ruby/ruby/pull/2226 for benchmark results.
|
|
|
|
| |
From "Implementation improvements" to "Core classes updates".
|
| |
|
|
|
|
|
|
|
|
| |
[ruby-dev:50790]
* https://www.meti.go.jp/press/2019/05/20190520006/20190520006.html
* https://www.meti.go.jp/press/2019/05/20190520006/20190520006-2.pdf
[ci skip]
|
|
|
|
|
|
|
|
|
|
| |
Methods that return classes often module_eval the given block
(e.g. Class.new and Struct.new). This allows DelegateClass to
work similarly. This makes it easier to use DelegateClass
directly without subclassing, so as not to create an unnecessary
subclass.
Implements [Feature #15842]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Similar to NameError#receiver, this returns the object on which
the modification was attempted. This is useful as it can pinpoint
exactly what is frozen. In many cases when a FrozenError is
raised, you cannot determine from the context which object is
frozen that you attempted to modify.
Users of the current rb_error_frozen C function will have to switch
to using rb_error_frozen_object or the new rb_frozen_error_raise
in order to set the receiver of the FrozenError.
To allow the receiver to be set from Ruby, support an optional
second argument to FrozenError#initialize.
Implements [Feature #15751]
|
|
|
|
| |
Closes: https://github.com/ruby/ruby/pull/2202
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* parse.y (heredoc_identifier): quoted here-document identifier
must end within the same line.
the only corner case that here-document identifier can contain a
newline is that the closing qoute is placed at the beginning of
the next line, and has been warned since 2.4.
```ruby
<<"EOS
" # warning: here document identifier ends with a newline
EOS
```
|
| |
|
| |
|
| |
|