78978 Commits

Author SHA1 Message Date
Peter Zhu
2498140777 [DOC] Improve docs for GC.start 2023-08-15 08:54:27 -04:00
Peter Zhu
300bc14589 [DOC] Improve some GC docs 2023-08-15 08:54:27 -04:00
Nobuyoshi Nakada
a11b907745
Add description to the empty test file [ci skip] 2023-08-15 12:49:05 +09:00
git
b554198572 * append newline at EOF. [ci skip] 2023-08-15 02:37:12 +00:00
Nobuyoshi Nakada
542424fc56
An empty test file for satisfy chkbuild [ci skip] 2023-08-15 11:19:05 +09:00
Nobuyoshi Nakada
b1f6c4b568
Remove a misplaced and duplicate file [ci skip] 2023-08-15 11:07:53 +09:00
Peter Zhu
52837fcec2 [DOC] Remove Document-class from trace_point.rb 2023-08-14 11:48:39 -04:00
Takashi Kokubun
75c9487a98
YJIT: Chain guard classes on instance_of (#8209) 2023-08-14 10:18:19 -04:00
Nobuyoshi Nakada
2a3acbc420
Fix test and precheck order for old GNU Make 2023-08-14 11:30:05 +09:00
Burdette Lamar
d33555eeae
[DOC] RDoc for numeric.rb (#8216) 2023-08-13 21:23:41 -04:00
BurdetteLamar
3080cf3dec [DOC] Don't suppress autolinks 2023-08-13 15:47:12 -04:00
Stan Lo
7f8f62c93b [ruby/irb] Support seamless integration with ruby/debug
(https://github.com/ruby/irb/pull/575)

* Support native integration with ruby/debug

* Prevent using multi-irb and activating debugger at the same time

Multi-irb makes a few assumptions:

- IRB will manage all threads that host sub-irb sessions
- All IRB sessions will be run on the threads created by IRB itself

However, when using the debugger these assumptions are broken:

- `debug` will freeze ALL threads when it suspends the session (e.g. when
  hitting a breakpoint, or performing step-debugging).
- Since the irb-debug integration runs IRB as the debugger's interface,
  it will be run on the debugger's thread, which is not managed by IRB.

So we should prevent the 2 features from being used at the same time.
To do that, we check if the other feature is already activated when
executing the commands that would activate the other feature.

https://github.com/ruby/irb/commit/d8fb3246be
2023-08-13 18:30:34 +00:00
Stan Lo
9099d62ac7 [ruby/irb] Move IO configuration to IRB::Irb
(https://github.com/ruby/irb/pull/681)

It shouldn't be `RubyLex`'s responsibility to handle IO. So this moves
the configuration to `IRB::Irb`.

https://github.com/ruby/irb/commit/daff750076
2023-08-13 15:23:04 +00:00
Nobuyoshi Nakada
3af5badae8 [ruby/irb] Remove useless begin/end [ci skip]
(https://github.com/ruby/irb/pull/680)

The `rescue` was removed at https://github.com/ruby/irb/commit/420e7d227011.

https://github.com/ruby/irb/commit/8fa688e9c0
2023-08-13 15:02:29 +00:00
Nobuyoshi Nakada
eb221a3734
Prohibit copying to fixtures and dot-direcotry just under test
Do not add directories which would let chkbuild fires accidentally, to
just under `test`.  The "fixtures" directory is often used to place
test stuffs.
2023-08-13 15:30:58 +09:00
Nobuyoshi Nakada
83718b6bb2
Move test files of ruby/set under test/set
Chkbuild fires accidentally on `test/fixtures` directory.
2023-08-13 15:24:58 +09:00
Nobuyoshi Nakada
efc9127790
Prefix excludes with a dot to prevent chkbuild from firing wrongly
Chkbuild runs for each directories just under `test` directory when
`test-all` failed.  `test/excludes` itself should not be a target.
2023-08-13 15:23:54 +09:00
Nobuyoshi Nakada
b56e5c6b94 Fix the precedence of --backtrace-limit option
In general, if the same option specifying a single value is given
multiple times at the same level, the last one overrides the earlier
ones, unless prohibited.
2023-08-13 02:26:49 +09:00
BurdetteLamar
546c5cfe4c [DOC] Don't suppress autolinks 2023-08-12 13:04:04 -04:00
BurdetteLamar
b18462c14b [DOC] Don't suppress autolinks 2023-08-12 10:04:39 -04:00
tomoya ishida
e1683b4958 [ruby/irb] Drop showing indent level number in DEFAULT prompt and
INF_RUBY prompt
(https://github.com/ruby/irb/pull/679)

* Drop showing indent level number in DEFAULT prompt and INF_RUBY prompt

* Update prompt part of test_rendering's expected result

https://github.com/ruby/irb/commit/3847532e54
2023-08-12 10:19:24 +00:00
Stan Lo
680835085d [ruby/irb] Reline/ReadlineInputMethod should inherit
StdioInputMethod
(https://github.com/ruby/irb/pull/671)

They are both built on top of stdio and are basically extended version
of StdioInputMethod. They also share several attributes and methods with
StdioInputMethod.

https://github.com/ruby/irb/commit/c5f5abdbde
2023-08-12 10:17:52 +00:00
git
d1b1e4a3ff Update bundled gems list at 2023-08-12 2023-08-12 07:00:20 +00:00
Nobuyoshi Nakada
6ebde04202
[DOC] Update to use SPECOPTS instead of MSPECOPT 2023-08-12 12:33:05 +09:00
Nobuyoshi Nakada
0eb2108214
Use the default test-spec formatter on Travis 2023-08-12 12:32:31 +09:00
Nobuyoshi Nakada
46c428a926
Make test-spec on Windows silent a little 2023-08-12 11:19:10 +09:00
Nobuyoshi Nakada
2c9fbc5100
Add dotted counts 2023-08-12 11:19:10 +09:00
Nobuyoshi Nakada
2373feade5
For parallel test 2023-08-12 11:19:10 +09:00
Nobuyoshi Nakada
b377793b6e
Fold dotted outputs from test-spec 2023-08-12 11:19:09 +09:00
Takashi Kokubun
7740526b1c Reorder bp_check and jit_return in cfp
It's the actual cfp[6] in the default build, so it's confusing to say
otherwise in the comment.
2023-08-11 17:57:04 -07:00
Burdette Lamar
0e162457d6
[DOC] Don't suppress autolinks (#8208) 2023-08-11 19:22:21 -04:00
Burdette Lamar
6ccc660d85
[DOC] Don't suppress autolinks (#8207) 2023-08-11 17:53:53 -04:00
Takashi Kokubun
58424787fc Extend the CI timeout for macOS
https://github.com/ruby/ruby/actions/runs/5836610844/job/15830549311
2023-08-11 14:06:09 -07:00
Takashi Kokubun
02e5095108
YJIT: Implement GET_BLOCK_HANDLER() for invokesuper (#8206) 2023-08-11 13:07:16 -07:00
tomoya ishida
d42891079f [ruby/irb] Remove needless removal of trailing whitespace in
check_code_state
(https://github.com/ruby/irb/pull/678)

https://github.com/ruby/irb/commit/4a6af7d1ed
2023-08-11 18:51:25 +00:00
Stan Lo
0781e55206 [ruby/irb] Move assignment check to RubyLex
(https://github.com/ruby/irb/pull/670)

Since assignment check relies on tokenization with `Ripper`, it feels like
the responsibility of `RubyLex`. `Irb#eval_input` should simply get the result
when calling `each_top_level_statement` on `RubyLex`.

https://github.com/ruby/irb/commit/89d1adb3fd
2023-08-11 18:44:52 +00:00
Stan Lo
c173c637ab [ruby/irb] Skip integration tests in core CI
(https://github.com/ruby/irb/pull/677)

We already skipped history integration tests in core CI in #675 due to
suspicion on nested IRB sessions don't work on certain operating systems.

But after #669, the evaluation integration test also started to fail on
some Core CI suites. So, it looks like the integration test setup may not
work in Core CI, at least in some suites.

Consider `ruby/irb` already has rather sophisticated test suite, I think
it's better to skip the integration tests in core CI for now.

https://github.com/ruby/irb/commit/6f49b4c108
2023-08-11 18:27:17 +00:00
Maxime Chevalier-Boisvert
b6c66604d8
YJIT: increase max chain depth for expandarray (#8205) 2023-08-11 14:08:45 -04:00
Stan Lo
43721b1d4a [ruby/irb] Don't echo an expression's result when it ends with a
semicolon
(https://github.com/ruby/irb/pull/669)

https://github.com/ruby/irb/commit/50185c2833
2023-08-11 16:18:58 +00:00
Stan Lo
d3311e5cc3 [ruby/irb] Add black and white color to IRB::Color
(https://github.com/ruby/irb/pull/676)

https://github.com/ruby/irb/commit/a2763acade
2023-08-11 16:03:11 +00:00
Maxime Chevalier-Boisvert
a8cd18f08d
YJIT: implement codegen for rb_int_lshift (#8201)
* YJIT: implement codegen for rb_int_lshift

* Update yjit/src/asm/x86_64/mod.rs

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

---------

Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
2023-08-11 11:01:16 -04:00
Nobuyoshi Nakada
475241ee91
Group test-syntax-suggest and leaked-globals [ci skip] 2023-08-11 16:22:18 +09:00
Nobuyoshi Nakada
907560f5dc
Fix test-bundler dependencies 2023-08-11 15:23:48 +09:00
Nobuyoshi Nakada
8fbb79f49e
Fix order of test-syntax-suggest-prepare for old GNU Make 2023-08-11 14:47:20 +09:00
S-H-GAMELINKS
a792890e9b Remove uneeded fix2int and rational_raw property for Universal Parser 2023-08-11 13:50:00 +09:00
Takashi Kokubun
654b648223
YJIT: Implement checkmatch instruction (#8203) 2023-08-10 23:08:29 -04:00
Nobuyoshi Nakada
b7453b91dc
[Bug #19831] Remove duplicate library options
`$(MAINLIBS)` should include `$(LIBS)` already.
2023-08-11 09:46:46 +09:00
Takashi Kokubun
d7c0fec40b Update an outdated YJIT binding 2023-08-10 17:44:08 -07:00
Takashi Kokubun
f25e7eac04 Fix the yjit-bindgen job
`YJIT_BINDGEN_DIFF_OPTS=--exit-code make yjit-bindgen` is not the same
as `make yjit-bindgen YJIT_BINDGEN_DIFF_OPTS=--exit-code`, of course.
2023-08-10 17:43:10 -07:00
Sorah Fukumori
d2864ca330 [ruby/zlib] Zlib.gunzip should not fail with utf-8 strings
(https://github.com/ruby/zlib/pull/55)

zstream_discard_input was encoding and character-aware when given input is user-provided, so this discards `len` chars instead of `len` bytes.

Also Zlib.gunzip explains in its rdoc that it is equivalent with the following code, but this doesn't fail for UTF-8 String.

```ruby
string = %w[1f8b0800c28000000003cb48cdc9c9070086a6103605000000].pack("H*").force_encoding('UTF-8')
sio = StringIO.new(string)
p gz.read #=> "hello"
gz&.close
p Zlib.gunzip(string) #=> Zlib::DataError
```

Reported and discovered by eagletmt at https://twitter.com/eagletmt/status/1689692467929694209

https://github.com/ruby/zlib/commit/c5e58bc62a
2023-08-10 20:12:21 +00:00