summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-06Run method_missing in the same execution contextNobuyoshi Nakada
2020-07-06[ruby/bigdecimal] Version 2.0.1Kenta Murata
https://github.com/ruby/bigdecimal/commit/3fa4f2ac67 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Return US-ASCII string from BigDecimal#to_sKenta Murata
Fixes #159 https://github.com/ruby/bigdecimal/commit/57ee92e700 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Drop Ruby 2.3 supportKenta Murata
https://github.com/ruby/bigdecimal/commit/79a819d205 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Support Ruby < 2.6Kenta Murata
https://github.com/ruby/bigdecimal/commit/61ec452599 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Add Complex#to_dKenta Murata
https://github.com/ruby/bigdecimal/commit/97e794ac97 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Make tests pass on Ruby 2.4Jeremy Evans
https://github.com/ruby/bigdecimal/commit/9d19e842ee Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Remove definition of BigDecimal#initialize_copyJeremy Evans
This leaves the default definition, which will raise FrozenError. https://github.com/ruby/bigdecimal/commit/05e843d838 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Support a Complex in Kernel.BigDecimal()Kenta Murata
https://github.com/ruby/bigdecimal/commit/00795cb01f Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Undef BigDecimal#initialize_copyJeremy Evans
Both BigDecimal#clone and BigDecimal#dup return self, there is no reason to have initialize_copy exposed as a Ruby method. The same is true for initialize_clone and initialize_dup. https://github.com/ruby/bigdecimal/commit/aaf237fa9e Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06Removed ext/bigdecimal/util/depend unused since ↵Nobuyoshi Nakada
dd0c75fdc2104a6ba38b68d4431a572504a3bbc2
2020-07-06tool/sync_default_gems.rb: Accept multiple commit rangesNobuyoshi Nakada
2020-07-06Add operator info to `OP_ASGN2` of `RubyVM::AbstractSyntaxTree`.manga_osyo
Notes: Merged: https://github.com/ruby/ruby/pull/3294
2020-07-06* 2020-07-06 [ci skip]git
2020-07-05tool/sync_default_gems.rb: Added bigdecimalNobuyoshi Nakada
2020-07-05Removed duplicate test with test_BigDecimal_bug7522Nobuyoshi Nakada
2020-07-05Escape `#` for GNU make 3Nobuyoshi Nakada
2020-07-05Updated bundled gemsNobuyoshi Nakada
2020-07-05Skip comment and empty lines in gems/bundled_gems fileNobuyoshi Nakada
2020-07-05Prefix export symbol prefix to coroutine_transferNobuyoshi Nakada
2020-07-05Removed trailing spaces [ci skip]Nobuyoshi Nakada
2020-07-05fix up Primitive.cinit! codeKoichi Sasada
Recent changes break Primitive.cinit!(c_code) so fix it.
2020-07-04Check ROBJECT_EMBED on guards-merged ivar accessTakashi Kokubun
Fix CI failure like http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3043247 introduced by a69dd699ee630dd1086627dbca15a218a8538b6f
2020-07-04Use static variables in Range#minmaxJeremy Evans
Notes: Merged: https://github.com/ruby/ruby/pull/3286
2020-07-05* 2020-07-05 [ci skip]git
2020-07-04Fix non-numeric exclusive Range#minmax bugSam Bostock
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. Notes: Merged: https://github.com/ruby/ruby/pull/3285
2020-07-04Ignore rbenv version file, and moved dot files [ci skip]Nobuyoshi Nakada
2020-07-04support all locals for cexpr!, cstmt!Koichi Sasada
Primitve.cexpr! and .cstmt! can access Ruby's parameter and *local variables* (note that local parameters are also local variables). However recent changes only allow to access parameters. This patch fix it. For example, the following code can work: def foo a, b, k: :kw, **kwrest c = a + b d = k e = kwrest p Primitive.cstmt!(%q(rb_p(rb_ary_new_from_args(5, a, b, c, d, e)); return Qnil;)) end
2020-07-04Allow hidden files with a hyphen to be source controlledDavid Rodríguez
Latest bundler includes a file named `.gitlab-ci.yml.tt`. Because of this too specific .gitignore entry, it was failing to be properly imported. Notes: Merged: https://github.com/ruby/ruby/pull/3230
2020-07-03Make Kernel#then, #yield_self, #frozen? builtin (#3283)Takashi Kokubun
* Make Kernel#then, #yield_self, #frozen? builtin * Fix test_jit Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-07-03Merge ivar guards on JIT (#3284)Takashi Kokubun
when an ISeq has multiple ivar accesses. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-07-04* 2020-07-04 [ci skip]git
2020-07-03Rewrite Kernel#tap with Ruby (#3281)Takashi Kokubun
* Rewrite Kernel#tap with Ruby This was good for VM too, but of course my intention is to unblock JIT's inlining of a block over yield (inlining invokeyield has not been committed though). * Fix test_settracefunc About the :tap deletions, the :tap events are actually traced (we already have a TracePoint test for builtin methods), but it's filtered out by tp.path == "xyzzy" (it became "<internal:kernel>"). We could trace tp.path == "<internal:kernel>" cases too, but the lineno is impacted by kernel.rb changes and I didn't want to make it fragile for kernel.rb lineno changes. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-07-03Enhanced RDoc for Array (#3276)Burdette Lamar
*Methods: keep_if delete delete_at slice! Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2020-07-03Use ID instead of GENTRY for gvars. (#3278)Koichi Sasada
Use ID instead of GENTRY for gvars. Global variables are compiled into GENTRY (a pointer to struct rb_global_entry). This patch replace this GENTRY to ID and make the code simple. We need to search GENTRY from ID every time (st_lookup), so additional overhead will be introduced. However, the performance of accessing global variables is not important now a day and this simplicity helps Ractor development. Notes: Merged-By: ko1 <ko1@atdot.net>
2020-07-03RUBY_DEBUG_LOG: Logging debug information mechanism (#3279)Koichi Sasada
* RUBY_DEBUG_LOG: Logging debug information mechanism This feature provides a mechanism to store logging information to a file, stderr or memory space with simple macros. The following information will be stored. * (1) __FILE__, __LINE__ in C * (2) __FILE__, __LINE__ in Ruby * (3) __func__ in C (message title) * (4) given string with sprintf format * (5) Thread number (if multiple threads are running) This feature is enabled only USE_RUBY_DEBUG_LOG is enabled. Release version should not enable it. Running with the `RUBY_DEBUG_LOG` environment variable enables this feature. # logging into a file RUBY_DEBUG_LOG=/path/to/file STDERR # logging into STDERR RUBY_DEBUG_LOG=stderr # logging into memory space (check with a debugger) # It will help if the timing is important. RUBY_DEBUG_LOG=mem RUBY_DEBUG_LOG_FILTER environment variable can specify the fileter string. If "(3) __func__ in C (message title)" contains the specified string, the infomation will be stored (example: RUBY_DEBUG_LOG_FILTER=str will enable only on str related information). In a MRI source code, you can use the following macros: * RUBY_DEBUG_LOG(fmt, ...): Above (1) to (4) will be logged. * RUBY_DEBUG_LOG2(file, line, fmt, ...): Same as RUBY_DEBUG_LOG(), but (1) will be replaced with given file, line. Notes: Merged-By: ko1 <ko1@atdot.net>
2020-07-03Ignore conftest.c under the ext directories for CodeQL analysisHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3280
2020-07-03test/json/json_fixtures_test.rb: Prevent an "out of range" warningYusuke Endoh
``` /home/mame/work/ruby/.ext/common/json/common.rb:263: warning: Float 23456789012E666 out of range ```
2020-07-03* 2020-07-03 [ci skip]git
2020-07-03Reintroduce c565dfb09ad7d55fa671f65cea7088a914bf1931Yusuke Endoh
2020-07-02Expose `assert_pattern_list` for drb test with test-unit gem.Hiroshi SHIBATA
2020-07-02* 2020-07-02 [ci skip]git
2020-07-02integer.rbinc: do not generate C functions卜部昌平
This changeset changes for instance Integer#integer? from: == disasm: #<ISeq:to_i@<internal:integer>:66 (66,2)-(69,5)> (catch: FALSE) 0000 opt_invokebuiltin_delegate_leave <builtin!_bi7/0>, 0 (68)[LiCa] 0003 leave (69)[Re] to: == disasm: #<ISeq:to_i@<internal:integer>:66 (66,2)-(69,5)> (catch: FALSE) 0000 putself (68)[LiCa] 0001 leave (69)[Re] which is of course faster. Notes: Merged: https://github.com/ruby/ruby/pull/3277
2020-07-01Reduced working `Rational` object allocationsNobuyoshi Nakada
When rationalizing negative values.
2020-07-01Renamed `nurat_sub` compliant with `rb_rational_plus`Nobuyoshi Nakada
2020-07-01Added a few integer case short-circuitsNobuyoshi Nakada
2020-07-01Replaced f_odd_p with rb_int_odd_pNobuyoshi Nakada
2020-07-01* 2020-07-01 [ci skip]git
2020-07-01Merge json-2.3.1 from flori/jsonHiroshi SHIBATA
2020-07-01[flori/json] Typo fixMarc-Andre Lafortune
https://github.com/flori/json/commit/26c1769969