78978 Commits

Author SHA1 Message Date
Takashi Kokubun
2046e054bc Use {$(VPATH)} for OpenBSD
Scratch build on OpenBSD has been failing since 67b5f63e97.
`make; make` works though. (`make` alone doesn't work)

I have no idea what I'm doing, but I do know that this patch fixes
scratch build on an OpenBSD machine.

My best guess is that BSD make isn't capable of distinguishing foo.c vs
./foo.c in dependencies, and {$(VPATH)} becomes empty when it needs to be.
2023-08-18 00:20:11 -07:00
Takashi Kokubun
6a6dacb0d1 Attempt to recover from YARP sync failures 2023-08-17 22:12:38 -07:00
Takashi Kokubun
7a2aeadb78 Attempt to explain what sync_default_gems_with_commits does [ci skip] 2023-08-17 21:47:55 -07:00
Nobuyoshi Nakada
412defc7ad [ruby/io-console] Get rid of address of an rvalue on TruffleRuby
https://github.com/ruby/io-console/commit/653c1cd33f
2023-08-18 03:55:05 +00:00
Nobuyoshi Nakada
818ba30ee9 [ruby/io-console] Avoid the influence of special variable $/
https://github.com/ruby/io-console/commit/5f71354332
2023-08-18 03:55:04 +00:00
Nobuyoshi Nakada
cff8058701 [ruby/io-console] Ensure to put a newline after password
https://github.com/ruby/io-console/commit/15e36af171
2023-08-18 03:55:04 +00:00
Nobuyoshi Nakada
528da4347c [ruby/io-console] Flush after prompt
https://github.com/ruby/io-console/commit/040a1d6259
2023-08-18 03:55:03 +00:00
Nobuyoshi Nakada
540cf43205 [ruby/io-console] Enable getpass methods always
https://github.com/ruby/io-console/commit/57f9649df4
2023-08-18 03:55:02 +00:00
Nobuyoshi Nakada
1bbce42964 [ruby/io-console] [DOC] Remove a trailing space from the prompt too
https://github.com/ruby/io-console/commit/85a155f25f
2023-08-18 01:17:03 +00:00
Nobuyoshi Nakada
1107cfd077 [ruby/io-console] * remove trailing spaces [ci skip]
https://github.com/ruby/io-console/commit/a0544eb74f
2023-08-18 01:15:00 +00:00
Olivier Lacan
43802a088e [ruby/io-console] [DOC] IO::console.getpass usage example
There were no clear example of this very useful method's usage anywhere
in the IO or IO::Console docs, which was a shame.

https://github.com/ruby/io-console/commit/4d324586a8
2023-08-18 01:02:42 +00:00
Takashi Kokubun
ad2bad4ab4 Fix the scope of rubygems conflict resolution
The `git reset` and `rm_rf` are not necessary because `bundler/` is
considered as a `toplevels` and removed from the commit when there's
no conflict.

For conflict cases, it's useful to remove them from the conflict targets
before moving on to fix other paths.
2023-08-17 17:58:36 -07:00
Takashi Kokubun
434cbc05f3 Document the existence of sync_default_gems.rb -a [ci skip] 2023-08-17 17:55:11 -07:00
Kevin Newton
995fd11bde [ruby/yarp] Remove strange :"#arg_rest" local
https://github.com/ruby/yarp/commit/66ecec218d
2023-08-18 00:06:57 +00:00
Martin Emde
e913431687 [rubygems/rubygems] Raise Gem::Package::FormatError on EOF, indicating corrupt gem
Gem::Package::TarReader::Entry now raises EOFError or returns nil
appropriately based on Ruby core IO.read and IO.readpartial behavior.

Zlib will respond accordingly by raising Zlib::GzipFile::Error on EOF.

When verifying a gem or extracting contents, raise FormatError similar
to other cases of corrupt gems.

Addresses a bug where Gem::Package would attempt to call size on nil
instead of raising a more descriptive and useful error, leading users
to assume the problem is internal to rubygems.

Remove unused error class TarReader::UnexpectedEOF that was never raised
since the NoMethodError on nil would happen first. Use EOFError instead.

https://github.com/rubygems/rubygems/commit/dc6129644b
2023-08-17 23:16:57 +00:00
Takashi Kokubun
e504c36894 Remove obsoleted yp_-renaming logic
This has not been relevant since https://github.com/ruby/yarp/pull/1199.
2023-08-17 15:06:57 -07:00
Takashi Kokubun
78e7fd7b49 Include YARP templated files in snapshots
Those files should be part of CRuby distributions.
2023-08-17 15:04:14 -07:00
Takashi Kokubun
72a16c61dc Move the dependency of node.rb and serialize.rb
to `main`.

This is what lib/ruby_vm/rjit/instruction.rb currently does. Letting
.time depend on those files was just a workaround.
2023-08-17 14:52:23 -07:00
Takashi Kokubun
67b5f63e97
Render YARP templates in the build process (#8228) 2023-08-17 14:39:04 -07:00
Alan Wu
5d48825d55 YJIT: Fix String#<< return type
We previously falsely asserted that String#<< always returns a ::String
instance. Issue was discovered on CI with `--yjit-verify-ctx`.

https://github.com/ruby/ruby/actions/runs/5893760435/job/15986002531
2023-08-17 17:17:31 -04:00
Alan Wu
518d5ab5c8 Add note about rb_f_notimplement [ci skip]
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
2023-08-17 17:14:46 -04:00
Alan Wu
9683eb06cf YJIT: Fix Kernel#respond_to? handling of rb_f_notimplement
We should return false for this type of special methods but wasn't
previously. Was reproducible with:

    make test-all TESTS=../test/-ext-/test_notimplement.rb RUN_OPTS='--yjit-call-threshold=1'
2023-08-17 17:14:46 -04:00
Takashi Kokubun
57ec167306 YARP: Ignore Rust sync failures 2023-08-17 13:57:11 -07:00
Peter Zhu
5db8b9b366 Move total_freed_objects to size pool
This commit moves the `total_freed_objects` statistic to the size pool
which allows for `total_freed_objects` key in `GC.stat_heap`.
2023-08-17 15:53:00 -04:00
Peter Zhu
52506cbf51 Move total_allocated_objects to size pool
This commit moves the `total_allocated_objects` statistic to the size
pool which allows for `total_allocated_objects` key in `GC.stat_heap`.
2023-08-17 15:53:00 -04:00
Takashi Kokubun
818998b41b Refactor YARP_IGNORE_FILE_PATTERN
`.git.*` covers those two cases.

Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2023-08-17 10:27:33 -07:00
Takashi Kokubun
f50e814dae Resync YARP to https://github.com/ruby/yarp/commit/11ad3fb590 2023-08-17 10:01:57 -07:00
Takashi Kokubun
40002dd7dc Resync YARP 2023-08-17 09:58:56 -07:00
Kevin Newton
81d715099c [ruby/yarp] Treat yp_buffer_t as an opaque pointer
Right now, we have to keep the buffer FFI object in sync with the
definition of yp_buffer_t because we access its fields directly. If
we add more fields or change the order, things will get out of sync.

Instead, let's treat yp_buffer_t as an opaque pointer and access
its fields through accessor functions directly. This is more
consistent with how we handle strings anyway.

https://github.com/ruby/yarp/commit/878d845eff
2023-08-17 09:58:56 -07:00
Ngan Pham
75a4767525 [rubygems/rubygems] Add file option to ruby method in Gemfile
https://github.com/rubygems/rubygems/commit/fb9354b7bf
2023-08-17 16:07:54 +00:00
Maxime Chevalier-Boisvert
30a5b94517
YJIT: implement side chain fallback for setlocal to avoid exiting (#8227)
* YJIT: implement side chain fallback for setlocal to avoid exiting

* Update yjit/src/codegen.rs

Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

---------

Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
2023-08-17 10:11:17 -04:00
Manu
7433c8f7dd [rubygems/rubygems] Clarify that bundle info takes a gem name
https://github.com/rubygems/rubygems/commit/09ef74ef73
2023-08-17 10:39:31 +00:00
yui-knk
8c447cffe4 Lrama v0.5.4 2023-08-17 19:29:36 +09:00
Nobuyoshi Nakada
d26b015e83 [Bug #19831] Remove duplicate library options
`$(LIBRUBYARG_SHARED)` is included in `$(LIBS)` in extension
libraries.
2023-08-17 16:30:01 +09:00
Takashi Kokubun
e210b899dc
Move the PC regardless of the leaf flag (#8232)
Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
2023-08-16 20:28:33 -07:00
Nobuyoshi Nakada
5bb9462285 [Bug #19831] Remove duplicate library options
`$(MAINLIBS)` should be included in `$(LIBRUBYARG)` in cases it is
needed.
2023-08-17 10:57:09 +09:00
Kevin Newton
48b241e53f [ruby/yarp] Fix errors on locals test caused by LANG=C
https://github.com/ruby/yarp/commit/8fae286bc9
2023-08-17 01:16:00 +00:00
Takashi Kokubun
1c53e64c51 Fix a regexp error 2023-08-16 17:55:56 -07:00
Takashi Kokubun
cdb757f817 Avoid synchronizing GitHub Actions from YARP 2023-08-16 17:55:32 -07:00
Takashi Kokubun
7183cf53f8 Revert an unintended revert 2023-08-16 17:51:52 -07:00
git
f1778870bd Update default gems list at 45740e7a248b4b995644646e38d94b [ci skip] 2023-08-17 00:48:19 +00:00
Jemma Issroff
45740e7a24 [ruby/yarp] Use _snprintf when using Windows versions prior to 2015 (< 1900)
Ruby CI has informed us that snprintf is not available on Windows
versions, but _sprintf is supported. This commit allows us to use
_sprintf where applicable

https://github.com/ruby/yarp/commit/818cc96afe
2023-08-16 17:47:32 -07:00
Jemma Issroff
c989c1b068 [ruby/yarp] Omit locals test if running on a 32 bit machine
https://github.com/ruby/yarp/commit/809d046f36
2023-08-16 17:47:32 -07:00
Takashi Kokubun
87f74a349e Update dependencies 2023-08-16 17:47:32 -07:00
Takashi Kokubun
f20dfd0803 Fix the YARP init path 2023-08-16 17:47:32 -07:00
Takashi Kokubun
3873b1eb39 Resync YARP 2023-08-16 17:47:32 -07:00
Kevin Newton
957cd369fa [ruby/yarp] Add test for empty heredoc
https://github.com/ruby/yarp/commit/e49b63a79e
2023-08-16 17:47:32 -07:00
Benoit Daloze
3536cad902 [ruby/yarp] Fixes so bundle exec rake can run on JRuby and TruffleRuby
https://github.com/ruby/yarp/commit/e6cea4fa08
2023-08-16 17:47:32 -07:00
Benoit Daloze
958ac8d586 [ruby/yarp] Test all methods of the YARP Ruby API
https://github.com/ruby/yarp/commit/a723f40baf
2023-08-16 17:47:32 -07:00
HParker
a8c70ed2b4 [ruby/yarp] add a diagnostic for *rest in order after optional state
https://github.com/ruby/yarp/commit/908244ba12
2023-08-16 17:47:32 -07:00