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

71974 Коммитов

Автор SHA1 Сообщение Дата
BurdetteLamar dde9db64e0 [ruby/fileutils] Enhanced RDoc for FileUtils
https://github.com/ruby/fileutils/commit/7b60f2d63b
2022-05-11 23:00:03 +09:00
git 6758b76bd1 * 2022-05-11 [ci skip] 2022-05-11 16:56:06 +09:00
David Rodríguez 8f1a8e68ba [rubygems/rubygems] Fix error message on metadata mismatches
Previously we were removing not installable specs. However, if those are
the only ones, that would result in a bad error message. If we still
choose them as a last resort, Bundler will later check metadata right
before installing a give a proper error.

This is a regression of https://github.com/rubygems/rubygems/commit/565549260be5 and the
fix is to revert that commit.

https://github.com/rubygems/rubygems/commit/bc18912257
2022-05-11 16:55:49 +09:00
David Rodríguez c582d9862a [rubygems/rubygems] Tweak negative expectations
The follow a tweak on the yank message.

https://github.com/rubygems/rubygems/commit/f6817bfe58
2022-05-11 16:55:48 +09:00
David Rodríguez 54b1548760 [rubygems/rubygems] Extract a `next_ruby_minor` helper method for specs
https://github.com/rubygems/rubygems/commit/66eae0ef1d
2022-05-11 16:55:47 +09:00
Kaíque Kandy Koga a85cdb5a6e
Write have instead of have have [ci skip 2022-05-10 13:07:16 +09:00
Nobuyoshi Nakada d0983af61c
Fix the order of assert_eqaul and remove unused variables 2022-05-10 10:15:27 +09:00
Nobuyoshi Nakada c7d2247e35
Honor --with-thread option to enable pthread 2022-05-10 09:24:28 +09:00
git 2999eb8846 * 2022-05-10 [ci skip] 2022-05-10 03:20:49 +09:00
MSP-Greg 40be4d4263 [ruby/psych] tr is typically 4 to 5 times faster than gsub
https://github.com/ruby/psych/commit/8533be8fe7
2022-05-10 03:20:34 +09:00
Peter Zhu 85479b34f7 Don't allocate new page on finish sweeping
We don't need to allocate a new page in gc_sweep_finish_size_pool.
It can be allocated when needed.
2022-05-09 08:45:24 -04:00
Peter Zhu e28e9c63c6 Fix heap_extend_pages when total_slots is 0
Some size pools may not have any pages/slots, so total_slots is 0. This
causes a divide-by-zero in the calculation. This commit adds a special
case to catch the case when total_slots is 0 and returns the number of
pages for heap_init_slots.
2022-05-09 08:45:24 -04:00
Peter Zhu f7d480378a Grow size pools with no or few slots
If the size pool has no or few pages/slots, then min_free_slots will
be a very small number (or even 0). Then the heap won't be eligible to
grow, causing GC thrashing or infinite loops.
2022-05-09 08:45:24 -04:00
Peter Zhu b3f3cb0c38 Call gc_sweep_finish_size_pool on size pools with no pages
Size pools with no pages won't be swept so gc_sweep_finish_size_pool
will never be called on it, but gc_sweep_finish_size_pool must be called
to grow the size pool.
2022-05-09 08:45:24 -04:00
Peter Zhu 033e58cf2c Fix gc_page_sweep when last bitmap plane is not used
Depending on alignment, the last bitmap plane may not used. Then it will
appear as if all of the objects on that plane is unmarked, which will
cause a buffer overrun when we try to free the object. This commit
changes the loop to calculate the number of planes used
(bitmap_plane_count).
2022-05-09 08:45:24 -04:00
Peter Zhu a41fbc2c95 Increase SIZE_POOL_COUNT to 5
Having more size pools will allow us to allocate larger objects
through Variable Width Allocation.

I have attached some benchmark results below.

Discourse:
  On Discourse, we don't see much change in response times. We do see
  a small reduction in RSS.

  Branch RSS: 377.8 MB
  Master RSS: 396.3 MB

railsbench:
  On railsbench, we don't see a big change in RPS or p99 performance.
  We see a small increase in RSS.

  Branch RPS: 815.38
  Master RPS: 811.73

  Branch p99: 1.69 ms
  Master p99: 1.68 ms

  Branch RSS: 90.6 MB
  Master RSS: 89.4 MB

liquid:
  We don't see a significant change in liquid performance.

  Branch parse & render: 29.041 I/s
  Master parse & render: 29.211 I/s
2022-05-09 08:45:24 -04:00
David Rodríguez 00e5e827b1 [rubygems/rubygems] Cleanup old legacy code
https://github.com/rubygems/rubygems/commit/531d6b5fee
2022-05-09 21:25:23 +09:00
git 0161dc3edc Update default gems list at ecf32dbfc0 [ci skip] 2022-05-09 09:21:02 +00:00
Hiroshi SHIBATA ecf32dbfc0 [ruby/net-http] Bump version to 0.2.2
https://github.com/ruby/net-http/commit/992d07cb41
2022-05-09 18:20:31 +09:00
git 95bb7e0a25 Update default gems list at a370eb5a63 [ci skip] 2022-05-09 09:19:47 +00:00
Hiroshi SHIBATA a370eb5a63 [ruby/io-wait] bump up to 0.2.3
https://github.com/ruby/io-wait/commit/f59d1d12e0
2022-05-09 18:19:06 +09:00
git 99f490475f Update default gems list at 30632efeaa [ci skip] 2022-05-09 07:48:37 +00:00
Sutou Kouhei 30632efeaa [ruby/stringio] bump up to 3.0.3
https://github.com/ruby/stringio/commit/64f225bf00
2022-05-09 16:47:28 +09:00
git 546f6ce432 Update default gems list at fbbe7ac7e3 [ci skip] 2022-05-09 07:36:53 +00:00
Sutou Kouhei fbbe7ac7e3 [ruby/stringio] Bump version
https://github.com/ruby/stringio/commit/b79152d08f
2022-05-09 16:36:01 +09:00
Samuel Williams cea34bd808
Add basic binary operators (and, or, xor, not) to `IO::Buffer`. (#5893) 2022-05-09 17:19:01 +12:00
Yusuke Endoh df0bcb3385 test/fiber/test_scheduler.rb: Remove the test file from $LOADED_FEATURES
to prevent the following failure on `make test-all --repeat-count=2`

http://ci.rvm.jp/results/trunk-repeat20-asserts@phosphorus-docker/3957774
```
  1) Error:
TestFiberScheduler#test_autoload:
NameError: uninitialized constant TestFiberSchedulerAutoload
          Object.const_get(:TestFiberSchedulerAutoload)
                ^^^^^^^^^^
```
2022-05-09 10:20:25 +09:00
Kazuhiro NISHIYAMA dc9a13abee
Fix rdoc of IO::Buffer [ci skip] 2022-05-09 09:09:29 +09:00
Samuel Williams ef525b012a
Explicit handling of frozen strings in `IO::Buffer#for`. (#5892) 2022-05-09 11:03:04 +12:00
Hiroshi SHIBATA 563f0d0a48
Ignore rubyspec_temp fot Git 2022-05-09 07:29:37 +09:00
Hiroshi SHIBATA e2c143abf4 [ruby/getoptlong] Fixup https://github.com/ruby/getoptlong/commit/39faa7b390f0
https://github.com/ruby/getoptlong/commit/c8b3c0c00d
2022-05-09 07:26:29 +09:00
git bb9b6afd0d * 2022-05-09 [ci skip] 2022-05-09 07:14:11 +09:00
Hiroshi SHIBATA f7539d5758 [ruby/getoptlong] ruby/ruby used sample, not examples
https://github.com/ruby/getoptlong/commit/39faa7b390
2022-05-09 07:13:55 +09:00
git 98e3fdb444 Update bundled gems list at 25eb63fa7f [ci skip] 2022-05-08 14:05:55 +00:00
Soutaro Matsumoto 25eb63fa7f
Bundle RBS 2.4.0 (#5894) 2022-05-08 23:04:25 +09:00
git 6fa7d010c8 * 2022-05-08 [ci skip] 2022-05-08 07:23:16 +09:00
Samuel Williams fd6cef79f5
Use a proper mutex for autoloading features. (#5788)
Object#autoload implements a custom per-thread "mutex" for blocking
threads waiting on autoloading a feature. This causes problems when used
with the fiber scheduler. We swap the implementation to use a Ruby mutex
which is fiber aware.
2022-05-08 10:22:58 +12:00
git 679b6e43c7 * 2022-05-07 [ci skip] 2022-05-07 18:31:35 +09:00
Kazuhiro NISHIYAMA 2a6f79364a
Replace with https://github.com [ci skip] 2022-05-07 18:30:56 +09:00
Kazuhiro NISHIYAMA 67950a4c0a
Fix missing paren [ci skip] 2022-05-06 18:13:22 +09:00
Dominik Bauernfeind d79e0832a5 [rubygems/rubygems] Fix typo in documentation
https://github.com/rubygems/rubygems/commit/800a973e00
2022-05-06 18:03:00 +09:00
nobuyo 7d6de74abe [rubygems/rubygems] Update man page for `require` option in `bundle add` command
https://github.com/rubygems/rubygems/commit/08a0a5b7d1
2022-05-06 18:02:35 +09:00
Alan Wu cae85c528c Mark RCLASS_INCLUDER
Since 4d8f76286b, we need to dereference
the includer field on iclasses, so we need to mark it to make sure
it's alive.

Sometimes during compaction we crash because the field is dangling,
though I have a hard time constructing such a situation. See
http://ci.rvm.jp/results/trunk@ruby-iga/3947725
2022-05-05 17:37:07 -04:00
Alan Wu 7448afccb3 Fix potential GC issue while iterating over weak refs
While walking over the list of subclasses for `include` and friends, we
check whether the subclass is a garbage object. After the check, we
allocate objects which might trigger GC and make the subclass garbage,
even though before the allocation the subclass was not garbage. This is
a sort of time-of-check-time-of-use issue.

Fix this by saving the weak reference to a local variable, upgrading it
to a strong reference while we do the allocation. It makes the code look
slightly nicer even if it doesn't fix any runtime issues.
2022-05-05 17:37:07 -04:00
git 4acafdf632 * 2022-05-06 [ci skip] 2022-05-06 05:03:10 +09:00
Burdette Lamar ae96ef9cfb
File rdoc (#5888)
Treats:
    ::pipe?
    ::symlink?
    ::socket?
    ::blockdev?
    ::chardev?
2022-05-05 15:02:54 -05:00
Burdette Lamar ac75c710cc
Link from printf methods to format spec doc (#5886) 2022-05-05 09:01:12 -05:00
Akira Matsuda 0b62535219 [ruby/logger] Prefer String#[0, 1] over [0..0]
[0..0] internally creates an extra Array object, and so is slower and much more memory consuming

https://github.com/ruby/logger/commit/20616ad34a
2022-05-05 19:09:49 +09:00
git 4f25971f05 * remove trailing spaces. [ci skip] 2022-05-05 05:05:04 +09:00
Burdette Lamar 197f9e9d42
[DOC] More on format specs (#5877)
* Update doc/format_specifications.rdoc

Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-04 15:04:36 -05:00