79211 Commits

Author SHA1 Message Date
Samuel Williams
901b6d9c50
Validate the typed data before dereferencing the internal struct. (#8315) 2023-08-29 20:04:14 +12:00
Hiroshi SHIBATA
141102b0b0 Expose Test.filter_backtrace for the default gems. 2023-08-29 15:05:30 +09:00
Hiroshi SHIBATA
589cd0e511
[DOC] Mention about https://bugs.ruby-lang.org/issues/19776 2023-08-29 14:17:23 +09:00
Nobuyoshi Nakada
c0e913ae88
[DOC] Link method name references 2023-08-29 13:52:18 +09:00
Nobuyoshi Nakada
7e5c662a6f
[Feature #18183] Add chars: option to Random#alphanumeric 2023-08-29 10:56:56 +09:00
Nobuyoshi Nakada
c4fc9477aa
sync_default_gems.rb: Continue if files added to the toplevel removed 2023-08-29 10:20:52 +09:00
Nobuyoshi Nakada
a6db6b150f
sync_default_gems.rb: Split sync_default_gems_with_commits 2023-08-29 09:22:28 +09:00
yui-knk
c02f978fd5 Lrama v0.5.5 2023-08-29 08:26:18 +09:00
Peter Zhu
fd0df1f8c6 Fix growth in minor GC when we have initial slots
If initial slots is set, then during a minor GC, if we have allocatable
pages but the heap is mostly full, then we will set `grow_heap` to true
since `total_slots` does not count allocatable pages so it will be less
than `init_slots`. This can cause `allocatable_pages` to grow to much
higher than desired since it will appear that the heap is mostly full.
2023-08-28 18:01:29 -04:00
Peter Zhu
5485680244 Expose RVALUE_OLD_AGE in GC::INTERNAL_CONSTANTS 2023-08-28 18:01:29 -04:00
Alan Wu
85aa28e8a6 RJIT: Remove Type::CArray and limit use of Type::CString
See previous similar YJIT commit.
2023-08-28 17:14:33 -04:00
Alan Wu
23c83d172c YJIT: Remove Type::CArray and limit use of Type::CString
These types are essentially claims about what `RBASIC_CLASS(obj)`
returns. The field changes with singleton class creation, but we didn't
consider so previously and elided guards where we actually needed them.

Found running ruby/spec with --yjit-verify-ctx. The assertion interface
makes extensive use of singleton classes.
2023-08-28 17:14:33 -04:00
Jemma Issroff
3b815ed7da
Add yarp/yarp_compiler.c (#8042)
* Add yarp/yarp_compiler.c as stencil for compiling YARP

This commit adds yarp/yarp_compiler.c, and changes the sync script
to ensure that yarp/yarp_compiler.c will not get overwritten

* [Misc #119772] Create and expose RubyVM::InstructionSequence.compile_yarp

This commit creates the stencil for a compile_yarp function, which
we will continue to fill out. It allows us to check the output
of compiled YARP code against compiled code without using YARP.
2023-08-28 13:55:58 -07:00
Nathan Froyd
f726ad9740 [ruby/yarp] use memcmp for block memory comparison
https://github.com/ruby/yarp/commit/3563e5c5d5
2023-08-28 20:00:25 +00:00
Nathan Froyd
325240d0b6 [ruby/yarp] make node.c generated code more readable
https://github.com/ruby/yarp/commit/0ffd61c87a
2023-08-28 20:00:15 +00:00
Peter Zhu
91de37c23e Remove --disable-gems in assert_in_out_err
assert_in_out_err adds --disable=gems so we don't need to add
--disable-gems in the args list.
2023-08-28 15:05:19 -04:00
Samuel Williams
caf48487ca
Restore HAVE_RB_IO_T macro for compatibility with kgio, unicorn, etc. (#8286) 2023-08-28 21:50:05 +09:00
Mike Dalessio
9b87518ea0 [ruby/yarp] fix: %I list spanning a heredoc
Similar to the previous %W fix, we accept a symbol node and
concatenate it onto an interpolated symbol.

https://github.com/ruby/yarp/commit/6b5911b95e
2023-08-28 12:37:31 +00:00
Mike Dalessio
29c5b85128 [ruby/yarp] fix: %i list spanning a heredoc
The fix here is similar to what we did in a previous commit for %w, to
accept two consecutive string tokens without a separator.

https://github.com/ruby/yarp/commit/f869fbdbe5
2023-08-28 12:37:30 +00:00
Mike Dalessio
74812df496 [ruby/yarp] fix: %W list spanning a heredoc
Primarily this fix is to accept a string node and concatenate it onto
an interpolated string.

https://github.com/ruby/yarp/commit/6df729fe72
2023-08-28 12:37:30 +00:00
Mike Dalessio
77e971b6ec [ruby/yarp] fix: %w list spanning a heredoc
Two fixes were necessary:

- ensure we are handling newlines correctly
- accept two consecutive string tokens without a separator

https://github.com/ruby/yarp/commit/4e707937cb

Co-authored-by: Kevin Newton <kddnewton@gmail.com>
2023-08-28 12:37:29 +00:00
Mike Dalessio
8926fd20f6 [ruby/yarp] test: backfill tests for %q/%Q spanning a heredoc
Also rename the fixture file

https://github.com/ruby/yarp/commit/c148d955fd
2023-08-28 12:37:28 +00:00
Mike Dalessio
2b9a053740 [ruby/yarp] fix: yp_interpolated_symbol_node_append
Made this function's behavior match the interpolated_string
implementation.

Previously, the start location was not set and left as 0.

https://github.com/ruby/yarp/commit/87f348889f
2023-08-28 12:37:28 +00:00
Mike Dalessio
06f5d8f3a0 [ruby/yarp] Improve how we declare ripper exceptions in parse_test.rb
Specific files are named earlier in the block, and we now have the
ability to skip just the lex matching, or skip ripper entirely (for
files that don't parse).

https://github.com/ruby/yarp/commit/dcd3806dca
2023-08-28 12:37:28 +00:00
Nobuyoshi Nakada
00439dbdb4
sync_default_gems.rb: convert keys of REPOSITORIES to strings
Referencing always after conversion to a symbol, and yielded gem name
is always converted to a string.
2023-08-28 17:52:50 +09:00
Takashi Kokubun
4963dd6b64 Revert racc auto-sync support
It's no longer a default gem actually.
Fixed the webhook side instead
3c27d860b4.
2023-08-28 01:14:58 -07:00
Takashi Kokubun
f5da7c379b Ignore test/regress/ for racc 2023-08-28 01:10:24 -07:00
Takashi Kokubun
94275d96a8 Add missing racc support to sync_default_gems 2023-08-28 00:50:49 -07:00
Takashi Kokubun
4221d9695d Sort repository names in sync_default_gems 2023-08-28 00:50:19 -07:00
Imir Kiyamov
23eb13d49d [rubygems/rubygems] Fixed malformed lockfile version on installing
https://github.com/rubygems/rubygems/commit/c969a192bf
2023-08-28 07:41:51 +00:00
Jun Aruga
b0ec1db8a7 [ruby/openssl] ossl_pkey.c: Workaround: Decode with non-zero selections.
This is a workaround for the decoding issue in ossl_pkey_read_generic().
The issue happens in the case that a key management provider is different from
a decoding provider.

Try all the non-zero selections in order, instead of selection 0 for OpenSSL 3
to avoid the issue.

https://github.com/ruby/openssl/commit/db688fa739
2023-08-28 12:05:33 +09:00
Jun Aruga
69d9fda9f5 [ruby/openssl] Remove the pending logics by the pend_on_openssl_issue_21493.
Because we will add a workaround to avoid this issue.

https://github.com/ruby/openssl/commit/d157ba1d3b
2023-08-28 12:05:32 +09:00
David Rodríguez
80f35d96ae [rubygems/rubygems] Don't check for circular deps on full index sources
https://github.com/rubygems/rubygems/commit/d275cdccb1
2023-08-28 11:15:34 +09:00
David Rodríguez
2edf9fa23a [rubygems/rubygems] Remove redundant checks
https://github.com/rubygems/rubygems/commit/d66815633b
2023-08-28 11:15:34 +09:00
David Rodríguez
279dcfab7a [rubygems/rubygems] Fix standalone install crashing when using legacy multi remote gemfiles
If a legacy multi remote Gemfile depends transitively on a default gem,
then in standalone mode we'd fail to fetch the proper version from the
source that includes it, since we were adding it to `specs` (instead of
`remote_specs`), which was already including the default version of the
gem, and thus preventing the remote version from "overwriting that" and
being added to the index. We should add it to the `remote_specs` index
directly instead.

https://github.com/rubygems/rubygems/commit/05f4f9dfc0
2023-08-28 11:15:33 +09:00
Martin Emde
7bf5f78028 [rubygems/rubygems] Refactor Fetcher#api_fetcher? and fetcher loading logic
https://github.com/rubygems/rubygems/commit/f664d60114
2023-08-28 11:15:32 +09:00
Nobuyoshi Nakada
0c9d0684e1
YARP: generated files using from templates depend on config.yml 2023-08-28 09:51:55 +09:00
Burdette Lamar
1cc700907d
[DOC] More on method exec (#8302) 2023-08-27 13:39:18 -04:00
Benoit Daloze
5937d01f7f [ruby/yarp] Rename constant pool fields to name or operator
* `constant_id` and `operator_id` are confusing.
* See https://github.com/ruby/yarp/issues/1296

https://github.com/ruby/yarp/commit/09d0a144df
2023-08-27 16:18:15 +00:00
Benoit Daloze
412e586afe [ruby/yarp] Fix paths in library_symbols_test.rb
https://github.com/ruby/yarp/commit/b5fba6d63f
2023-08-27 16:18:15 +00:00
Nobuyoshi Nakada
78c5bb1136
Remove duplicate #include <string.h> [ci skip] 2023-08-27 23:21:20 +09:00
Peter Zhu
b7237e3bbd Free all empty heap pages in Process.warmup
This commit adds `free_empty_pages` which frees all empty heap pages and
moves the number of pages freed to the allocatable pages counter. This
is used in Process.warmup to improve performance because page
invalidation from copy-on-write is slower than allocating a new page.
2023-08-27 09:39:29 -04:00
Nobuyoshi Nakada
5c98ee02d2
Define bounds-checking interfaces macro for each file 2023-08-27 00:12:03 +09:00
Peter Zhu
a97dedf761 [ruby/irb] Fix deprecation test when ran multiple times
(https://github.com/ruby/irb/pull/695)

https://github.com/ruby/irb/commit/ae0e5bb80f
2023-08-26 13:56:51 +00:00
Peter Zhu
9ea9f99248 [Feature #19785] Deprecate RUBY_GC_HEAP_INIT_SLOTS
This environment variable is replaced by
`RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS`, so it doesn't make sense to keep it.
2023-08-25 21:50:56 -04:00
git
487d91fde1 Update default gems list at e2b8eac767d41734520377b5cf6f44 [ci skip] 2023-08-26 00:22:09 +00:00
Kevin Newton
e2b8eac767 [ruby/yarp] Bump to version 0.9.0
https://github.com/ruby/yarp/commit/b327e39527
2023-08-26 00:20:44 +00:00
Nobuyoshi Nakada
b054c2fe06 [Bug #19784] Fix behaviors against prefix with broken encoding
- String#start_with?
- String#delete_prefix
- String#delete_prefix!
2023-08-26 08:58:02 +09:00
Nobuyoshi Nakada
808b067088 Split string tests 2023-08-26 08:58:02 +09:00
Nobuyoshi Nakada
00ac3a64ba Introduce at_char_boundary function 2023-08-26 08:58:02 +09:00