Граф коммитов

64130 Коммитов

Автор SHA1 Сообщение Дата
Hiroshi SHIBATA 658b4ff609
Fixed the test failures called WEBrick.new directly 2020-12-10 18:55:03 +09:00
Koichi Sasada 72f1c43584 ObjectSpace._id2ref should not support unshareable
ObjectSpace._id2ref(id) can return any objects even if they are
unshareable, so this patch raises RangeError if it runs on multi-ractor
mode and the found object is unshareable.
2020-12-10 18:27:44 +09:00
NARUSE, Yui 7856da5fe7 remove bz2 2020-12-10 18:24:43 +09:00
Nobuyoshi Nakada 142f154a0a
Unpoison freelist to chain 2020-12-10 18:16:22 +09:00
Lourens Naudé 9a17437558 Right size literal regular expression buffers on compile 2020-12-10 18:15:26 +09:00
Hiroshi SHIBATA e7433a3288 Added help message for gem i webrick in rdoc 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 4ccc66265c Added help message for gem i webrick in gem server command 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA b084f8abcf Completely removed webrick 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 880727f037 Added help message for gem i webrick in un.rb 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 05cc58c2eb webrick was removed from ruby repo 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 0e73b49b4c Promote webrick to bundled gems 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 087ac34fb2 Added tool/lib into test-spec loadpath 2020-12-10 18:06:25 +09:00
Hiroshi SHIBATA 5dc786bf86 Move webrick library into internal test toolchain 2020-12-10 18:06:25 +09:00
卜部昌平 46d3ea2c25
.github: reduce (#3876)
Comment out some 50-ish tests.
fix https://bugs.ruby-lang.org/issues/17376
2020-12-10 17:41:39 +09:00
Takashi Kokubun 9e8f732f39
Revert "Revert some recent JIT changes"
This reverts commit b7dc04e518.

This should be fine, rather necessary, too.
2020-12-10 00:22:57 -08:00
Takashi Kokubun 12a1a25181
Revert "Revert "Have list_node at the top of rb_mjit_unit""
This reverts commit 73b07c437e.

This was, of course, innocent.
2020-12-10 00:21:33 -08:00
Takashi Kokubun 16c765990c
Use list_for_each_safe when list_del is used inside
list_for_each seems to cause all the SEGVs we've seen.
2020-12-10 00:18:35 -08:00
Koichi Sasada da3bca513f cache free pages per ractor
Per ractor method cache (GH-#3842) only cached 1 page and this patch
caches several pages to keep at least 512 free slots if available.
If you increase the number of cached free slots, all cached slots
will be collected when the GC is invoked.
2020-12-10 13:05:43 +09:00
Koichi Sasada 554c094977 set min/maximum free slots relative to ractor cnt
A program with multiple ractors can consume more objects per
unit time, so this patch set minimum/maximum free_slots to
relative to ractors count (upto 8).
2020-12-10 13:05:43 +09:00
Koichi Sasada eafe000af3 lazy sweep tries to collect 2048 slots
Lazy sweep tries to collect free (unused) slots incrementally, and
it only collect a few pages. This patch makes lazy sweep collects
more objects (at least 2048 objects) and GC overhead of multi-ractor
execution will be reduced.
2020-12-10 13:05:43 +09:00
Kenta Murata 2544f7196e
test/ruby/test_arithmetic_sequence.rb: restore test_last_bug17218
And rename the existing `test_last_bug17218` to `test_to_a_bug17218`.
2020-12-10 00:59:00 +09:00
Kenta Murata bb489aca58
memory_view.c: Add rb_memory_view_get_item and rb_memory_view_prepare_item_desc (#3871) 2020-12-10 00:24:36 +09:00
git 549118b3e2 * 2020-12-10 [ci skip] 2020-12-10 00:17:44 +09:00
Yusuke Endoh 3156fb0f2c test/ruby/test_arithmetic_sequence.rb: remove a duplicated test
There is another "test_last_bug17218"
2020-12-10 00:16:49 +09:00
Kenta Murata fad3023e94
Fix ArithmeticSequence#last and ArithmeticSequence#each for non-integer sequences (#3870)
[Bug #17218]
[ruby-core:100312]
2020-12-09 18:48:59 +09:00
Marc-Andre Lafortune cacdf2681d [ruby/matrix] Disable Ractor test 2020-12-09 04:21:00 -05:00
Marc-Andre Lafortune 150dbb656d [ruby/matrix] v0.3.1 2020-12-09 02:15:41 -05:00
Marc-Andre Lafortune a7dccd08e7 [ruby/matrix] Make frozen matrices Ractor shareable 2020-12-09 02:15:41 -05:00
Marc-Andre Lafortune 6b264e833f [ruby/prime] Fix gemspec 2020-12-09 01:30:06 -05:00
Koichi Sasada 45b29754cf need the lock for debug checking.
Checking code (RGENGC_CHECK_MODE > 0) need a VM lock because it
refers objspace.
2020-12-09 15:15:46 +09:00
Marc-Andre Lafortune 47ff8de645 Update maintainers list [doc] [ci skip] 2020-12-09 01:03:29 -05:00
Marc-Andre Lafortune b603085d2f [ruby/prime] v0.1.2 2020-12-09 00:45:56 -05:00
Marc-Andre Lafortune 1866d483dc [ruby/prime] Optimize `Integer#prime?`
Miller Rabin algorithm can be used to test primality for integers smaller than a max value "MaxMR" (~3e24)

It can be much faster than previous implementation: ~100x faster for numbers with 13 digits, at least 5 orders of magnitude for even larger numbers (previous implementation is so slow that it requires more patience than I have for more precise estimate).

Miller Rabin test becomes faster than previous implementation at somewhere in the range 1e5-1e6. It seems that the range 62000..66000 is where Miller Rabin starts being always faster, so I picked 0xffff arbitrarily; before that, or above "MaxMR", the previous implementation remains.

I compared the `faster_prime` gem too. It is slower than previous implementation up to ~1e4. After that it becomes faster and faster compared to previous implementation, but is still slower than Miller Rabin starting at ~1e5 and up to MaxMR. Thus, after this commit, builtin `Integer#prime?` will be similar or faster than `faster_prime` up to "MaxMR".

Adapted from patch of Stephen Blackstone [Feature #16468]

Benchmark results and code: https://gist.github.com/marcandre/b263bdae488e76dabdda84daf73733b9

Co-authored-by: Stephen Blackstone <sblackstone@gmail.com>
2020-12-09 00:40:09 -05:00
Nobuyoshi Nakada dea600046a
Ad-hoc fix of test-bundler 2020-12-09 13:10:28 +09:00
Nobuyoshi Nakada b419f90a8b
Tweaked `Process::Status.wait`
* revert `rb_last_status_set`
* renamed the new function as `rb_process_status_new`
* `rb_process_status_new` always freezes the return value
* marked `Process::Status.wait` as EXPERIMENTAL, as it has not
  been discussed totally yet.
2020-12-09 11:51:57 +09:00
Nobuyoshi Nakada 4f907a80f0
Removed declaration of non-existent symbol 2020-12-09 11:32:18 +09:00
Marc-Andre Lafortune 27b6df9653 Add test that `Ractor.make_shareable` calls user defined `#freeze` 2020-12-08 17:49:14 -05:00
Samuel Williams 2553c5f94a Add support for non-blocking `Process.wait`. 2020-12-09 08:55:35 +13:00
git a4a92ae6d9 * 2020-12-09 [ci skip] 2020-12-09 01:41:06 +09:00
Koichi Sasada ee194af2aa re-layout rb_ractor_t
separate synchronization data and ractor local data.
2020-12-09 01:40:38 +09:00
Nobuyoshi Nakada 2749123e21
Supported category option in Warning#warn 2020-12-08 22:50:45 +09:00
Nobuyoshi Nakada d5ffa4e9a4
[DOC] mentioned category option 2020-12-08 22:13:04 +09:00
Kenta Murata 2427393b4d
Revert "test/fiddle/helper.rb: remove duplication (#3863)" (#3865)
This reverts commit bd47a8d660.

`libc_so` and `libm_so` are `nil` at line 124 because Big Sur doesn't have `/usr/lib/libSystem.B.dylib`.
The reassignment at line 127 is necessary in this case.
2020-12-08 21:58:08 +09:00
Hiroshi SHIBATA 30d4a7ad9a
Update rubygems.org links for publlished default gems. 2020-12-08 21:42:03 +09:00
Samuel Williams 09229c71bc Fix "Ruby is not properly fortified on armv7hl".
See <https://bugs.ruby-lang.org/issues/16762> for more details.
2020-12-08 23:37:42 +13:00
Hiroshi SHIBATA aeeaf90b7e
Added missing dependency of fileutils 2020-12-08 18:38:25 +09:00
Nobuyoshi Nakada d7a16670c3
[DOC] Fixed RDoc directives [ci skip] 2020-12-08 18:02:31 +09:00
Hiroshi SHIBATA 86332cdce9 Bump version numbers of RubyGems and Bundler on NEWS 2020-12-08 17:30:02 +09:00
Hiroshi SHIBATA 473f9d2df0 Merge prepare version of Bundler 2.2.0 2020-12-08 17:30:02 +09:00
Hiroshi SHIBATA 4aca77edde Merge prepare version of RubyGems 3.2.0 2020-12-08 17:30:02 +09:00