Age | Commit message (Collapse) | Author |
|
Previously this was being incorrectly swapped with TAG_RAISE in the next
line. This would end up checking the T_IMEMO throw_data to the exception
handling (which calls Module#===). This happened to not break existing
tests because Module#=== returned false when klass is NULL.
This commit handles throw from require correctly by jumping to the tag
retaining the TAG_THROW state.
Notes:
Merged: https://github.com/ruby/ruby/pull/5513
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5520
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5523
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5523
|
|
RFC 6066, section 3, explicitly disallows the use of an IP address
as an SNI server name. So check if the connection is being made
to an IP address using the resolv regexps, and do not set an SNI
hostname in that case.
Recent changes to LibreSSL make it more strictly follow RFC 6066,
resulting an s.hostname= raising an error if passed an IP address.
When such verions of LibreSSL are used, this change not only fixes
the net/http tests, it also fixes tests for webrick and open-uri,
which both make SSL connections to 127.0.0.1 using net/http in
their tests.
Avoid warning in the openssl extension by unsetting
@ssl_context.verify_hostname if connecting to an IP address.
Make changes so that the post_connection_check still happens
when connecting to an IP address, which is necessary to keep
checking that the certificate returned includes the IP address,
which one of the tests depends on.
Revert the previous change that modified the regexp used for
checking the error message.
https://github.com/ruby/net-http/commit/fa68e64bee
|
|
Add a new macro BASE_SLOT_SIZE that determines the slot size.
For Variable Width Allocation (compiled with USE_RVARGC=1), all slot
sizes are powers-of-2 multiples of BASE_SLOT_SIZE.
For USE_RVARGC=0, BASE_SLOT_SIZE is set to sizeof(RVALUE).
Notes:
Merged: https://github.com/ruby/ruby/pull/5517
|
|
encironment
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5512
|
|
ISeqs from ISeq#to_binary/load do not support `keep_script_lines`
now so some tests should be pending tests with
`RUBY_ISEQ_DUMP_DEBUG=to_binary`
Notes:
Merged: https://github.com/ruby/ruby/pull/5508
|
|
Something seems changed on FreeBSD 13.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5436
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5436
|
|
`@s1.set_len(3)` will raise so the `assert_equal` will never be ran.
|
|
When aliasing a method to the same name method, set a separate bit
flag on that method definition, instead of the reference count
increment. Although this kind of alias has no actual effect at
runtime, is used as the hack to suppress the method re-definition
warning.
Notes:
Merged: https://github.com/ruby/ruby/pull/5493
|
|
|
|
Issue only occurs in JRuby 9.3.0.0 and Windows and the full
console output is:
log rotation inter-process lock failed. D:\log.txt -> D:\log.txt.0: The process cannot access the file because it is being used by another process.
log writing failed. closed stream
log writing failed. closed stream
...
https://github.com/ruby/logger/commit/19fc734638
|
|
WebAssembly doesn't support signals so we can't use read
barriers so we can't use compaction.
Notes:
Merged: https://github.com/ruby/ruby/pull/5475
|
|
Fixes https://github.com/ruby/bigdecimal/pull/220
https://github.com/ruby/bigdecimal/commit/127a1b5a31
|
|
https://github.com/ruby/bigdecimal/commit/79c09b4dac
|
|
Authored-by: Seth Boyles <sethboyles@gmail.com>
https://github.com/ruby/psych/commit/75bebb37b8
|
|
Two tests abort intentionally and they create core files if
possible. In these case, we don't need to see core files
so disable by `"Process.setrlimit(Process::RLIMIT_CORE, 0)` for
those cases.
Notes:
Merged: https://github.com/ruby/ruby/pull/5466
|
|
In a forked process from a fiber, the fiber becomes the only
fiber, `fiber_switch` does nothing as there is no other fibers,
`rb_fiber_terminate` does not terminate the fiber. In that case,
reaches the end of `fiber_entry` finaly, which is declared as
"COROUTINE" and should never return.
Notes:
Merged: https://github.com/ruby/ruby/pull/5468
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5468
|
|
search, and query commands
It's deprecated functionality.
https://github.com/rubygems/rubygems/commit/13d3eb6cb0
|
|
Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a
Notes:
Merged: https://github.com/ruby/ruby/pull/5462
|
|
```
/home/chkbuild/chkbuild/tmp/build/20220119T003004Z/ruby/test/ruby/test_assignment.rb:727: warning: assigned but unused variable - m
```
http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20220119T003004Z.log.html.gz
|
|
https://github.com/rubygems/rubygems/commit/f7f504b24c
|
|
(https://github.com/ruby/erb/pull/7)"
This reverts commit https://github.com/ruby/erb/commit/5133efa06f0603ae79292f3b2b942957bc8a442e.
While we already handled this deprecation in many libraries, we noticed
that some (e.g. sprockets) relied on the format of `ERB.version` and
https://github.com/ruby/erb/commit/2b4182eb108b9e42fa30bcfa41931896132f88b8 broke such handling.
Given that the `ERB.version` change was released at 3.1 and it's
obviously new, I'll skip this removal in 3.2 and postpone this to a
future version.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5455
|
|
ref https://github.com/ruby/ruby/commit/da0f67c0383f57129c7a76255964b1ee739d8db8
https://github.com/ruby/net-http/commit/dbeb5f1c8f
|
|
|
|
https://github.com/ruby/reline/commit/492bee257a
|
|
https://github.com/ruby/reline/commit/21d75f6d4c
|
|
https://github.com/ruby/reline/commit/0c76631132
|
|
https://github.com/ruby/reline/commit/da4a7aa932
|
|
https://github.com/ruby/reline/commit/7d38454327
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5453
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5453
|
|
(https://github.com/ruby/erb/pull/7)
[Feature #14256]
https://github.com/ruby/erb/commit/5133efa06f
|
|
of rubygems-update
https://github.com/rubygems/rubygems/commit/c167d513a7
|
|
Add a visibility member to struct METHOD storing the original
method visibility, and use that, instead of taking the visibility
from the stored method entry (which may have different visibility
for ZSUPER methods).
Consider Method/UnboundMethod objects different if they have
different visibilities.
Fixes [Bug #18435]
Notes:
Merged: https://github.com/ruby/ruby/pull/5356
|
|
Fixes [Bug #16908]
Notes:
Merged: https://github.com/ruby/ruby/pull/5360
|
|
Previously, the right hand side was always evaluated before the
left hand side for constant assignments. For the following:
```ruby
lhs::C = rhs
```
rhs was evaluated before lhs, which is inconsistant with attribute
assignment (lhs.m = rhs), and apparently also does not conform to
JIS 3017:2013 11.4.2.2.3.
Fix this by changing evaluation order. Previously, the above
compiled to:
```
0000 putself ( 1)[Li]
0001 opt_send_without_block <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 dup
0004 putself
0005 opt_send_without_block <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0007 setconstant :C
0009 leave
```
After this change:
```
0000 putself ( 1)[Li]
0001 opt_send_without_block <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 putself
0004 opt_send_without_block <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0006 swap
0007 topn 1
0009 swap
0010 setconstant :C
0012 leave
```
Note that if expr is not a module/class, then a TypeError is not
raised until after the evaluation of rhs. This is because that
error is raised by setconstant. If we wanted to raise TypeError
before evaluation of rhs, we would have to add a VM instruction
for calling vm_check_if_namespace.
Changing assignment order for single assignments caused problems
in the multiple assignment code, revealing that the issue also
affected multiple assignment. Fix the multiple assignment code
so left-to-right evaluation also works for constant assignments.
Do some refactoring of the multiple assignment code to reduce
duplication after adding support for constants. Rename struct
masgn_attrasgn to masgn_lhs_node, since it now handles both
constants and attributes. Add add_masgn_lhs_node static function
for adding data for lhs attribute and constant setting.
Fixes [Bug #15928]
Notes:
Merged: https://github.com/ruby/ruby/pull/4450
|
|
https://github.com/rubygems/rubygems/commit/32a5e9057a
|
|
https://github.com/rubygems/rubygems/commit/386b3b85ca
|
|
See https://github.com/rubygems/rubygems/pull/5210#discussion_r784807168
https://github.com/rubygems/rubygems/commit/cd0e961e81
|
|
[Feature #17881]
Works similarly to `method_added` but for constants.
```ruby
Foo::BAR = 42 # call Foo.const_added(:FOO)
class Foo::Baz; end # call Foo.const_added(:Baz)
Foo.autoload(:Something, "path") # call Foo.const_added(:Something)
```
Notes:
Merged: https://github.com/ruby/ruby/pull/4521
|
|
Use `include?` instead.
https://github.com/ruby/net-http/commit/05022744a9
|
|
With this patch, handwriting version comparisons become a little bit easier.
before:
SomeGem.version <=> Gem::Version.new('1.3')
after:
SomeGem.version <=> '1.3'
https://github.com/rubygems/rubygems/commit/7e0dbb79f2
|
|
T#dup (T < Proc) returns Proc object (not T) from Ruby 1.9.
[Bug #17545]
Notes:
Merged: https://github.com/ruby/ruby/pull/4197
|