summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-12* 2020-09-12 [ci skip]git
2020-09-12Promote time.rb to default gemsHiroshi SHIBATA
2020-09-11Promote resolv-replace to default gemsHiroshi SHIBATA
2020-09-11Promote resolv to default gemsHiroshi SHIBATA
2020-09-11Promote securerandom to default gemsHiroshi SHIBATA
2020-09-11Promote open-uri to default gemsHiroshi SHIBATA
2020-09-11Let String#slice! return nil (#3533)Soutaro Matsumoto
Returns `nil` instead of an empty string when non-integer number is given (to make it 2.7 compatible). Notes: Merged-By: soutaro <matsumoto@soutaro.com>
2020-09-11rbinstall.rb: OpenStruct has not been needed for yearsNobuyoshi Nakada
Since 6f3e8df133c7785ff6bb6f18d1faec81fefb3999 in 2014.
2020-09-11Add missing breakKazuhiro NISHIYAMA
pointed out by Coverity Scan
2020-09-11Removed DRb.default_safe_level and DRb#safe_levelHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3531
2020-09-11Removed Thread#safe_levelHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3531
2020-09-11* 2020-09-11 [ci skip]git
2020-09-10If the GC runs before the Mutex's are initialised then we get a crash in ↵Matt Valentine-House
pthread_mutex_lock. It is possible for GC to run during initialisation due to objects being allocated Notes: Merged: https://github.com/ruby/ruby/pull/3510
2020-09-10Promote syslog to default gemsHiroshi SHIBATA
2020-09-10Promote base64 to default gemsHiroshi SHIBATA
2020-09-10Promote shellwords to default gemsHiroshi SHIBATA
2020-09-10Promote abbrev to default gemsHiroshi SHIBATA
2020-09-10sync callable_method_entry()Koichi Sasada
callable_method_entry() read/write method table structures so that this function should be synchronized between Ractors. Notes: Merged: https://github.com/ruby/ruby/pull/3529
2020-09-09Make SecureRandom support RactorAaron Patterson
SecureRandom lazily defines `get_random`. Accessing the mutex to define the `get_random` method is not supported inside a Ractor. This commit defines `gen_random` when `securerandom` is required and makes it suppore Ractor (as well as thread safe). Here is a test program: ```ruby require "securerandom" r = Ractor.new do loop do Ractor.yield SecureRandom.hex end end p r.take ``` Before this commit: ``` $ make runruby ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems ./test.rb <internal:ractor>:38: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. /Users/aaron/git/ruby/lib/securerandom.rb:94:in `gen_random': can not access instance variables of classes/modules from non-main Ractors (RuntimeError) <internal:ractor>:124:in `take': thrown by remote Ractor. (Ractor::RemoteError) from ./test.rb:9:in `<main>' /Users/aaron/git/ruby/lib/securerandom.rb:94:in `gen_random': can not access instance variables of classes/modules from non-main Ractors (RuntimeError) from /Users/aaron/git/ruby/lib/securerandom.rb:155:in `random_bytes' from /Users/aaron/git/ruby/lib/securerandom.rb:176:in `hex' from ./test.rb:5:in `block (2 levels) in <main>' from ./test.rb:4:in `loop' from ./test.rb:4:in `block in <main>' make: *** [runruby] Error ``` After this commit: ``` $ make runruby ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems ./test.rb <internal:ractor>:38: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. "3fc8885157e3911bab4b5d7619bb0308" ``` Notes: Merged: https://github.com/ruby/ruby/pull/3518
2020-09-09Optimize ObjectSpace.dump_allJean Boussier
The two main optimization are: - buffer writes for improved performance - avoid formatting functions when possible ``` | |compare-ruby|built-ruby| |:------------------|-----------:|---------:| |dump_all_string | 1.038| 195.925| | | -| 188.77x| |dump_all_file | 33.453| 139.645| | | -| 4.17x| |dump_all_dev_null | 44.030| 278.552| | | -| 6.33x| ``` Notes: Merged: https://github.com/ruby/ruby/pull/3420
2020-09-10* 2020-09-10 [ci skip]git
2020-09-09Add a :since option to dump_allJean Boussier
This is useful to see what a block of code allocated, e.g. ``` GC.start GC.disable ObjectSpace.trace_object_allocations do # run some code end gc_gen = GC.count allocations = ObjectSpace.dump_all(output: :file, since: gc_gen) GC.enable GC.start retentions = ObjectSpace.dump_all(output: :file, since: gc_gen) ``` Notes: Merged: https://github.com/ruby/ruby/pull/3368
2020-09-09Promote tsort to default gemsHiroshi SHIBATA
2020-09-09Revert the related commits about `Tempfile.open` change.Hiroshi SHIBATA
Start with https://github.com/ruby/ruby/commit/fa21985a7a2f8f52a8bd82bd12a724e9dca74934 to https://github.com/ruby/ruby/commit/d7492a0be885ea9f2b9f71e3e95582f9a859c439
2020-09-09[ruby/tempfile] Revert Tempfile.open unlinking the fileJeremy Evans
Document difference in behavior between Tempfile.open and Tempfile.create. https://github.com/ruby/tempfile/commit/426d6f887f
2020-09-09* 2020-09-09 [ci skip]git
2020-09-08Use size_t for MJIT's max_ivar_indexTakashi Kokubun
iseq_inline_iv_cache_entry's index is also size_t. %"PRIuSIZE" seems to print warnings against st_index_t in some environments.
2020-09-08Workaroud for macOS Big Sur(11.0)Hiroshi SHIBATA
2020-09-08libSystem.dylib is also symlink. Use libSystem.B.dylibHiroshi SHIBATA
2020-09-08Use libSystem.dylib instead of libm.dylib and libc.dylibHiroshi SHIBATA
Because macOS 11.0(Big Sur) was removed libc and libm from `/usr/lib`.
2020-09-08* 2020-09-08 [ci skip]git
2020-09-08Add FALLTHROUGHKazuhiro NISHIYAMA
Pointed out by Coverity Scan ``` ** CID 1466646: Control flow issues (MISSING_BREAK) /ext/-test-/random/loop.c: 63 in loop_get_bytes() ```
2020-09-07Added `rb_random_base_init`Nobuyoshi Nakada
To enclose the initialization of Random::Base part. Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07Added WITH_REAL macrosNobuyoshi Nakada
Added `WITH_REAL` versions to `RB_RANDOM_INTERFACE` macros. Also these macros including "without real" versions no longer contain the terminator (semicolon and comma). Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07Added `get_real` interfaceNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07Added rb_int_pair_to_realNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07separate rb_random_tNobuyoshi Nakada
* random.c: separate abstract rb_random_t and rb_random_mt_t for Mersenne Twister implementation. * include/ruby/random.h: the interface for extensions of Random class. * DLL imported symbol reference is not constant on Windows. * check if properly initialized. Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07Random::BaseNobuyoshi Nakada
* random.c (InitVM_Random): introduce abstract super class Random::Base. Notes: Merged: https://github.com/ruby/ruby/pull/3024
2020-09-07.github: try GitHub Container Registry卜部昌平
It is natural for a CI running on GitHub to use GitHub's facility. See also https://github.blog/2020-09-01-introducing-github-container-registry/ Notes: Merged: https://github.com/ruby/ruby/pull/3524
2020-09-07* 2020-09-07 [ci skip]git
2020-09-07[Feature #17157] removed -T command line optionNobuyoshi Nakada
2020-09-06Increase timeout for GitHub Actions.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3523
2020-09-06Add `*.md` to doc/.document [ci skip]Kazuhiro NISHIYAMA
2020-09-06Make it possible to dump and load an exception objectYusuke Endoh
A backtrace object in an exception had never supported marshalling correctly: `Marshal.load(Marshal.dump(exc)).backtrace_locations` dumped core. An Exception object has two hidden instance varibles for backtrace data: one is "bt", which has an Array of Strings, and the other is "bt_locations", which has an Array of Thread::Backtrace::Locations. However, Exception's dump outputs data so that the two variables are the same Array of Strings. Thus, "bt_locations" had a wrong-type object. For the compatibility, it is difficult to change the dump format. This changeset fixes the issue by ignoring data for "bt_locations" at the loading phase if "bt_locations" refers to the same object as "bt". Future work: Exception's dump should output "bt_locations" appropriately. https://bugs.ruby-lang.org/issues/17150 Notes: Merged: https://github.com/ruby/ruby/pull/3521
2020-09-06Add `RB_` prefix for size_t to number conversion.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/3519
2020-09-05Fixed some typos in ractor.md (#3522)Ashwin Elangovan
Notes: Merged-By: marcandre <github@marc-andre.ca>
2020-09-06* 2020-09-06 [ci skip]git
2020-09-06Fix typos [ci skip]Kazuhiro NISHIYAMA
2020-09-05common.mk: UNALIGNED_MEMBER_ACCESS needs internal/warnings.h on some platformsNobuyoshi Nakada
2020-09-05update-deps: ruby-runner is not a targetNobuyoshi Nakada