summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-08-01Split test_defined_methodNobuyoshi Nakada
2020-08-01Fix typo in test namePeter Zhu
2020-08-01Test for [Bug #16669]Nobuyoshi Nakada
2020-08-01Split test_definedNobuyoshi Nakada
2020-08-01bump up patchlevel for a332e8a0ddad90c540c6c52f0db2a45e5955a23dnagachika
2020-08-01ruby_2_7 update MinGW Actions workflowMSP-Greg
2020-07-26merge revision(s) 1b4d406e3a04032b6d01e92b6d184a16945c6ac3: [Backport ↵nagachika
#16498] [Backport #16914] Hash#transform_values should return a plain new Hash [Bug #16498]
2020-07-26partially merge revision adf709a78534c1483ba851ccb0490464ca31503c: [Backport ↵nagachika
#16801] Classes made from Struct should have default new singleton method. Co-authored-by: Yusuke Endoh mame@ruby-lang.org Co-authored-by: John Hawthorn john@hawthorn.email Co-authored-by: Adam Hess HParker@github.com Co-authored-by: Jose Cortinas jacortinas@gmail.com Co-authored-by: Jean Boussier jean.boussier@gmail.com
2020-07-26merge revision(s) ↵nagachika
a0bc3f2a1c2c98f225612101cb4e1ea1a6813546,75a0447c15a7ab017bd4240c2a9cc69b134b80b9,f1699314147bad2cf5550cc582693424fdbc2510: [Backport #16846] Suppress C4267 "possible loss of data" warnings Suppress C4267 "possible loss of data" warnings Just cast down explicitly. win32ole: separate global variable declarations and definitions https://gcc.gnu.org/gcc-10/changes.html#c > * GCC now defaults to `-fno-common`. As a result, global > variable accesses are more efficient on various targets. In > C, global variables with multiple tentative definitions now > result in linker errors. With `-fcommon` such definitions are > silently merged during linking.
2020-07-25merge revision(s) 5e81e8675a020ecd493620a4ff38db8fcf4b972a: [Backport #16780]nagachika
Ignore exceptions when closing data connections [Bug #16780] Patch by koshigoe (Masataka SUZUKI). Thanks!
2020-07-25merge revision(s) cbe4f75ef802f13d05f94e42274b65a062bd3666: [Backport #16834]nagachika
Fix rb_profile_frame_classpath to handle module singletons Right now `SomeClass.method` is properly named, but `SomeModule.method` is displayed as `#<Module:0x000055eb5d95adc8>.method` which makes profiling annoying.
2020-07-25merge revision(s) 71c166e11e761dcaaa943f9b94da38f86ada1bdb: [Backport #16854]nagachika
Fixed argument forwarding in reserved word method [Bug #16854]
2020-07-25merge revision(s) 08529a61153e5c40f57a65272211357511d6e6db: [Backport #16798]nagachika
Compare environment variable names in those manor [Bug #16798]
2020-07-25merge revision(s) 2f1895fa15386fb3cdc91c5604171290828b9da8: [Backport #16767]nagachika
Fixed formatted substring expansion [Bug #16767]
2020-07-23merge revision(s) 927308108cced69cae478798004524b9a5d2f252: [Backport #16764]nagachika
Fix source location of autoloaded constant [Bug #16764]
2020-07-23merge revision(s) da05c1552ee519d8f180b48d97148d28501acb35: [Backport #16749]nagachika
Update to ruby/spec@cc7b9e5
2020-07-23merge revision(s) 72c02aa4b79731c7f25c9267f74b347f1946c704: [Backport #16662]nagachika
Moved not-implemented method tests [Bug #16662] Test not-implemented method with the dedicated methods, instead of platform dependent features.
2020-07-23merge revision(s) b23fd59cbb3f097bcd559d0c85a86ff7a1eeeb7e: [Backport #16501]nagachika
marshal.c: Support dump and load of a Hash with the ruby2_keywords flag It is useful for a program that dumps and load arguments (like drb). In future, they should deal with both positional arguments and keyword ones explicitly, but until ruby2_keywords is deprecated, it is good to support the flag in marshal. The implementation is similar to String's encoding; it is dumped as a hidden instance variable. [Feature #16501]
2020-07-23Get rid of use of magic number 'E'Nobuyoshi Nakada
2020-07-23merge revision(s) e04418bb16cd99b4a4402e7457d3bdc967284f98: [Backport #16830]nagachika
[ruby/uri] Check if DN exists https://bugs.ruby-lang.org/issues/16830 https://github.com/ruby/uri/commit/b4bf8c1217
2020-07-23merge revision(s) a2be428c5fec31b8adbd5ac087e7637ddf7e54d0: [Backport #16826]nagachika
Fix ObjectSpace::WeakMap#key? to work if the value is nil * Fixes [Bug #16826]
2020-07-23merge revision(s) 579645d9f870fa4116dcd3200bbbb6e2c0b7f400: [Backport #17033]nagachika
Fixed infinite loop at error in printing cause [Bug #17033]
2020-07-23merge revision(s) 99a9c3fe2eaab8157765d792dc871da6daea0327: [Backport #17024]nagachika
Fixed yday and wday with timezone [Bug #17024]
2020-07-23merge revision(s) 2ecfb88ee50510955acd3ae9fc94a5f109e7f109: [Backport #16918]nagachika
Correctly remove temporary directory if path yielded is mutated Another approach would be to freeze the string, but that could cause backwards compatibility issues. Fixes [Bug #16918]
2020-07-23merge revision(s) ↵nagachika
5a79d8e0507cd143100bf928a88a59a8b5a5bca6,160511d851375f7cb922faae3a9310633187f51f: [Backport #16925] Fix error raised by Net::HTTPResponse#inflater if the block raises * See https://bugs.ruby-lang.org/issues/13882#note-6 Quarantine specs which fail frequently with CHECK_LEAKS=true
2020-07-19merge revision(s) ↵nagachika
bf1a6771f305ea286a3ae575676924551c03e857,c1463625555b061a2b94c3b6c5581730b482a285: [Backport #17012] [Backport #17014] Fix non-numeric exclusive Range#minmax bug The implementation of Range#minmax added in d5c60214c45 causes the following incorrect behaviour: ('a'...'c').minmax => ["a", ["a", "b"]] instead of ('a'...'c').minmax => ["a", "b"] This is because the C implementation of Range#minmax (range_minmax) directly delegates to the C implementation of Range#min (range_min) and Range#max (range_max), without changing the execution context. Range#max's C implementation (range_max), when given a non-numeric exclusive range, delegates to super, which is meant to call Enumerable#max. However, because range_max is called directly by range_minmax, super calls Enumerable#minmax instead, causing the incorrect nesting. Perhaps it is possible to change the execution context in an optimized manner, but the simplest solution seems to be to just explicitly delegate from Range#minmax to Range#min and Range#max. Use static variables in Range#minmax
2020-07-19merge revision(s) 0ba27259d390e902139c0e2e94b9d18ef227748e: [Backport #16940]nagachika
Fix crashes in the peephole optimizer on OpenBSD/sparc64 These crashes are due to alignment issues, casting ADJUST to INSN and then accessing after the end of the ADJUST. These patches come from Stefan Sperling <stsp@apache.org>, who reported the issue.
2020-07-19merge revision(s) 6e7e7c1e577d6c2276e9a8cc85c28c55c46c2618: [Backport #17023]nagachika
Only marked objects should be considered movable Ruby's GC is incremental, meaning that during the mark phase (and also the sweep phase) programs are allowed to run. This means that programs can allocate objects before the mark or sweep phase have actually completed. Those objects may not have had a chance to be marked, so we can't know if they are movable or not. Something that references the newly created object might have called the pinning function during the mark phase, but since the mark phase hasn't run we can't know if there is a "pinning" relationship. To be conservative, we must only allow objects that are not pinned but also marked to move.
2020-07-19merge revision(s) 26c179d7e7e7ae0eb21050659c3e8778358230ab: [Backport #17026]nagachika
Check argument to ObjectSpace._id2ref Ensure that the argument is an Integer or implicitly convert to, before dereferencing as a Bignum. Addressed a regression in b99833baec2. Reported by u75615 at https://hackerone.com/reports/898614
2020-07-18bump patchlevel to 93nagachika
2020-07-18Update some syslog tests to absurb the format change of FreeBSD syslogYusuke Endoh
FreeBSD ``` $ ruby -rsyslog -e 'Syslog.open("rubyspec", Syslog::LOG_PERROR) {|s| s.log(Syslog::LOG_ALERT, "Hello") }' rubyspec 78462 - - Hello ``` Linux ``` $ ruby -rsyslog -e 'Syslog.open("rubyspec", Syslog::LOG_PERROR) {|s| s.log(Syslog::LOG_ALERT, "Hello") }' rubyspec: Hello ``` https://github.com/freebsd/freebsd/commit/591ef7c8076109cff3c41f9bb50da996a34121e9
2020-07-18test/openssl/test_ssl: skip test_fallback_scsv if necessaryKazuki Yamaguchi
Run the test case only when the OpenSSL supports both TLS 1.1 and TLS 1.2. Note that the fallback SCSV mechanism is for TLS 1.2 or older and not for 1.3. Fixes: https://github.com/ruby/openssl/issues/336
2020-07-11test/lib/jit_support.rb: Let JIT tests skip on centos8Yusuke Endoh
It has the same issue as RHEL 8. k0kubun said he will fix later
2020-07-11OpenSSL 1.1.1 introduces a new '.include' directive. Update our confignagachika
parser to support that. As mentioned in the referenced GitHub issue, we should use the OpenSSL API instead of implementing the parsing logic ourselves, but it will need backwards-incompatible changes which we can't backport to stable versions. So continue to use the Ruby implementation for now. References: https://github.com/ruby/openssl/issues/208 https://github.com/ruby/openssl/pull/216 The original patch was written by Kazuki Yamaguchi <k@rhe.jp> and the patch for ruby_2_7 branch was prepared by Vít Ondruch.
2020-07-10bump patchlevel: merge commits: 5c2508060b79b4299a18d05511d3530ad14b1b7a ↵nagachika
2480ef904c66812cf366e5d9bc8a9c3c20bbf271 47720e2255f34ecad49763c66a7ea02a55a3f60a
2020-07-10Bison 3.59.1 folds yydestruct function headerNobuyoshi Nakada
2020-07-10pure_parser.rb: get rid of an error at localed messagesNobuyoshi Nakada
2020-07-10Bison 3.5.91 now defaults parse.error to "simple"Nobuyoshi Nakada
2020-07-09merge revision(s) ↵nagachika
87ad5ea729735ff6b8f1ac0bb3aad2aedd6f716e,9745e90197f129708986803e8913fb151862478a: Skip jit_test on some new RubyCI envs for now Propagate JIT skip to all tests
2020-07-09merge revision(s) 21d8e6924844d592ff2d5a2e7309457eb92e66f6:nagachika
disable to show the maximum number of threads. On Deiban 9 environment, the thread tests failed and this maximum threads information can finish up the machine resources. To check it, I turned-off showing this information.
2020-07-05merge revision(s) 75802bcff1b941818832f0145071f7ce9c843d8d:nagachika
configure: suppress icc warnings Every time a pointer to/from VALUE conversion happens, these two warnings are issued: - warning #1684: conversion from pointer to same-sized integral type (potential portability problem) - warning #2312: pointer cast involving 64-bit pointed-to type Thank you, but we are well aware of the "potential portability problem". Let us ignore them all.
2020-06-27merge revision(s) a19228f878d955eaf2cce086bcf53f46fdf894b9: [Backport #16979]nagachika
brace the fact that lchmod(2) can EOPNOTSUPP Musl libc has this function as a tiny wrapper of fchmodat(3posix). On the other hand Linux kernel does not support changing modes of a symlink. The operation always fails with EOPNOTSUPP. This fchmodat behaviour is defined in POSIX. We have to take care of such exceptions.
2020-06-27merge revision(s) 263b941321c3de6afc8f9dafbc2625f866b7437e: [Backport #16981]nagachika
[ripper] fix mismatched indentations warning [Bug #16981] The scanner location has to be set from `lex.ptok` before it is flushed by dispatching the scanner event.
2020-06-13merge revision(s) 7e289cdf3fed588b2d5a6973e29f9ff95cb8d76c: [Backport #16949]nagachika
[ruby/psych] Fixing compatibility with libyaml 0.2.5 The main issue is that commas aren't allowed in local tags. libyaml was updated to follow the spec, and our tests were out of date. See: https://github.com/yaml/libyaml/issues/196 https://github.com/ruby/psych/commit/3f5e520fd3
2020-06-08* 2020-06-08 [ci skip]git
2020-06-07merge revision(s) ↵nagachika
ac2106acc276854ae2ac8cc5fa6859aa28362f2f,cf90df22c74da2f87421749e8d065cfbd3812afd: [Backport #16813] [DOC] Fixed explanation for Method#>> [Bug #16813] [ci skip] [DOC] Separated Method#[] from Method#call [Bug #16813] [ci skip]
2020-03-31v2.7.1p83v2_7_1NARUSE, Yui
2020-03-31ext/socket/init.c: do not return uninitialized bufferNARUSE, Yui
BasicSocket#read_nonblock and some methods changes the size of a buffer string, but when no data is available, the buffer is returned as uninitialized. Co-Authored-By: Samuel Williams <samuel.williams@oriontransfer.co.nz>
2020-03-31* 2020-03-31 [ci skip]git
2020-03-31Fix pp when passed a empty ruby2_keywords-flagged hash as array element (#2966)Jeremy Evans
This causes problems because the hash is passed to a block not accepting keywords. Because the hash is empty and keyword flagged, it is removed before calling the block. This doesn't cause an ArgumentError because it is a block and not a lambda. Just like any other block not passed required arguments, arguments not passed are set to nil. Issues like this are a strong reason not to have ruby2_keywords by default. Fixes [Bug #16519] This backports 28d31ead34baff1c4abc0d7d902ef4bc1d576fb2 and 0ea759eac9234afc47e8fb1bcacfe9ee12c8ffb6, but needed to be modified for 2.7 as 2.7 will perform empty keyword to positional hash conversion for required arguments, which will happen if "v" in the seplist method is empty when yielded. Co-authored-by: NARUSE, Yui <nurse@users.noreply.github.com>