| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
This reverts commit 5ebb0d50f6560b35bc03deb79341a115c5f782ee.
|
|
|
|
| |
This reverts commit 4d844cbaed518743776594fa5ae33b86fe176ad1.
|
|
|
|
| |
https://github.com/ruby/webrick/commit/6b6990ec81
|
|
|
|
|
|
|
|
|
|
| |
While the stripping of header values is required by RFC 2616 4.2 and
RFC 7230 3.2.4, the squishing is not and can break things, such as
when one header contains an HMAC of another header.
Fixes Ruby Bug 7021.
https://github.com/ruby/webrick/commit/8b96088a86
|
|
|
|
| |
https://github.com/ruby/webrick/commit/3b51f6b4d2
|
|
|
|
|
|
|
| |
Ruby 2.7 deprecates taint and it no longer has an effect.
The lack of taint support should not cause a problem in
previous Ruby versions.
https://github.com/ruby/fiddle/commit/18d6fb6915
|
|
|
|
| |
https://github.com/ruby/fiddle/commit/ea06b28db8
|
|
|
|
| |
https://github.com/ruby/fiddle/commit/a01a962342
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix a failing test
This commit fixes the following failure:
```
1) Failure:
Fiddle::TestImport#test_no_message_with_debug [/Users/mrkn/src/github.com/ruby/fiddle/test/fiddle/test_import.rb:152]:
1. [2/2] Assertion for "stderr"
| <[]> expected but was
| <["Exception `NameError' at /Users/mrkn/.rbenv/versions/2.5.1/lib/ruby/2.5.0/fiddle/import.rb:157 - uninitialized constant Fiddle::Function::STDCALL"]>.
```
* Stop using Bundler.with_clean_env
* Clear existing Ruby environment variables on test_no_message_with_debug
https://github.com/ruby/fiddle/commit/13133ddec8
|
|
|
|
| |
https://github.com/ruby/date/commit/af01edd7d8
|
|
|
|
|
|
|
|
| |
Ruby 2.7 deprecates taint and it no longer has an effect.
The lack of taint support should not cause a problem in
previous versions.
https://github.com/ruby/date/commit/519470dc3b
|
|
|
|
|
|
| |
Fixes Ruby Bug 12961
https://github.com/ruby/date/commit/7f533c2552
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the type of these arguments were not checked, leading to
NoMethodErrors in some cases, and TypeErrors in other cases, but not
showing what field was having the problems. This change makes it so
the field with the problem is included in the error message.
For the valid_*? methods, this changes them to return false if one
of the arguments that should be numeric is not.
Fixes Ruby Bug 11935
Fixes Ruby Misc 15298
https://github.com/ruby/date/commit/a2f4b665f8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, julian dates would not round trip through to_time.to_date,
because Time is always considered gregorian. This converts the Date
instance from julian to gregorian before converting to Time, ensuring
that an equal date object will be returned if converting that Time
back to Date.
This does result in julian Date objects showing different day values
if converting to Time.
Fixes Ruby Bug 8428.
https://github.com/ruby/date/commit/d8df64555e
|
|
|
|
|
|
| |
This reverts commit fa8ac91e957a076f6df1adaecad7896817138009.
Previous behavior is intentional.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fiber#transfer previously made it impossible to resume the fiber
if it was transferred to (no resuming the target of Fiber#transfer).
However, the documentation specifies that you cannot resume a fiber
that has transferred to another fiber (no resuming the source of
Fiber#transfer), unless control is transferred back.
Fix the code by setting the transferred flag on the current/source
fiber, and unsetting the transferred flag on the target fiber.
Fixes [Bug #9664]
Fixes [Bug #12555]
|
| |
|
|
|
|
|
| |
`Integer.sqrt(0xffff_ffff_ffff_ffff ** 2)` caused assertion failure
because of integer overflow. [ruby-core:95453] [Bug #16269]
|
| |
|
| |
|
| |
|
|
|
|
| |
See Ruby issue 16263
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent monitor.rb has performance problem because of interrupt
handlers. 'Monitor#synchronize' is frequently used primitive
so the performance of this method is important.
This patch rewrite 'monitor.rb' with 'monitor.so' (C-extension)
and make it faster. See [Feature #16255] for details.
Monitor class objects are normal object which include MonitorMixin.
This patch introduce a Monitor class which is implemented on C
and MonitorMixin uses Monitor object as re-entrant (recursive)
Mutex. This technique improve performance because we don't need
to care atomicity and we don't need accesses to instance variables
any more on Monitor class.
|
| |
|
| |
|
| |
|
|
|
|
| |
Instead of building messages separately.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
```
require 'optparse'
OptionParser.new do |opts|
opts.on("-f", "--foo", "foo") {|v| }
opts.on("-b", "--bar", "bar") {|v| }
opts.on("-c", "--baz", "baz") {|v| }
end.parse!
```
```
$ ruby test.rb --baa
Traceback (most recent call last):
test.rb:7:in `<main>': invalid option: --baa (OptionParser::InvalidOption)
Did you mean? baz
bar
```
|
|
|
|
|
| |
The global can go bad if the compactor runs, so we need to look up the
constant instead of caching it in a global.
|
|
|
|
|
|
| |
Suggestion from Laurence Parry.
Fixes [Bug #16030]
|
|
|
|
| |
Fixes [Bug #10314]
|
|
|
|
|
| |
File.extname now returns a dot string at a name ending with a dot.
[Bug #15267]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* {String|Symbol}#match{?} with nil returns falsy
To improve consistency with Regexp#match{?}
* String#match(nil) returns `nil` instead of TypeError
* String#match?(nil) returns `false` instead of TypeError
* Symbol#match(nil) returns `nil` instead of TypeError
* Symbol#match?(nil) returns `false` instead of TypeError
* Prefer exception
* Follow empty ENV
* Drop outdated specs
* Write ruby/spec for above
https://github.com/ruby/ruby/pull/1506/files#r183242981
* Fix merge miss
|
|
|
|
|
|
|
|
| |
My previous fix in d0ed935d5bf8c3fce9800742a36e44fb7f63dda4 was
not correct, as pointed out by cremno on GitHub.
This simplifies things by just using Kernel#to_s. Also switch to
bind_call(obj) instead of bind(obj).call for better performance.
|
|
|
|
|
|
|
|
|
| |
This rescues some exceptions that could happen with a closed or
shutdown DRb socket. This can prevent the server from
exiting if an client socket is closed directly after it is
accepted.
Fixes [Bug #8039]
|
|
|
|
|
|
|
|
|
| |
inside method
Calling these methods without an argument does not have the
desired effect inside a method.
Fixes [Bug #13249]
|
|
|
|
|
|
|
|
| |
Still some CIs are failing:
https://ci.appveyor.com/project/ruby/ruby/builds/28141041/job/v4hfc99sjefqabkk
http://ci.rvm.jp/results/trunk-vm-asserts@silicon-docker/2317313
I'll fix them later.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When ruby2_keywords is used on a method, keywords passed to the method
are flagged. When the hash is passed as the last element of an
argument splat to another method, the hash should be treated as a
keyword splat. When keyword splatting a hash, a duplicate of the
hash is made. So when auto-splatting the hash with the keyword
flag, a duplicate of the hash should also be made.
This fixes cases where the hash is later passed to another method
and would be treated as keywords there:
class Object
ruby2_keywords def foo(*a) bar(*a) end
def bar(*a) baz(*a) end
def baz(*a, **kw) [a, kw] end
end
foo(:a=>1)
Previously, this would pass the :a=>1 as keywords to bar and also as
keywords to baz. Now it only passes :a=>1 as keywords to bar, but bar
passes :a=>1 as a positional hash to baz (which in this case
generates a warning in 2.7).
|
| |
|
|
|
|
| |
of "setting Encoding.default_internal".
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/97e9768612
|