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

77427 Коммитов

Автор SHA1 Сообщение Дата
schneems 33cfd262fc [ruby/syntax_suggest] Handle alias already exists when debugging
When `tmp/alias` already exists, I'm now getting phantom folders in the directory pointing at older aliases which is distracting/confusing. By checking and removing that alias before symlinking we can prevent this strange behavior (possibly caused by newer Mac OS?).
2023-04-06 15:45:27 +09:00
Nobuyoshi Nakada 588dd44d41 [ruby/syntax_suggest] Remove unnecessary `--color` option
It is enabled automatically if possible.  Forcing this option makes
https://github.com/rspec/rspec-core/pull/3017 useless.

https://github.com/ruby/syntax_suggest/commit/8e7141b472
2023-04-06 15:45:27 +09:00
Marc-Andre Lafortune 061f5f4374 Add missing test for Data.initialize 2023-04-06 09:24:38 +03:00
Vít Ondruch 69460791cc
[rubygems/rubygems] Improve comment explaining the neccessity of `write_default_spec` method.
The intention is not obvious from the commit log and it might avoid
temptation to remove the method without further consideration.

https://github.com/rubygems/rubygems/commit/8e17c50f64
2023-04-06 13:07:16 +09:00
David Rodríguez f3d69bed62
[rubygems/rubygems] Fix resolver hangs when dealing with an incomplete lockfile
While working on locking multiple platforms by default, I got an
infinite resolution loop in one of our resolver specs.

The culprit ended up being that when dealing with lockfile specs with
incomplete dependencies (spec appears in lockfile, but its dependencies
don't), those specs were not being properly expired and that tripped up
resolution.

The issue for some reason only manifests when dealing with multiple
lockfile platforms, that's why it only manifested when working on
locking multiple platforms by default.

https://github.com/rubygems/rubygems/commit/4ca72913bb
2023-04-06 13:07:16 +09:00
David Rodríguez c257380965
Revert "Refactor incomplete specs handling"
This reverts commit 69580f8b72f41c58cae57d1ada4db909922b3891.
2023-04-06 13:07:16 +09:00
David Rodríguez 192a3a6bfb
[rubygems/rubygems] Revert "Reuse `SpecSet#materialize` logic"
This reverts commit https://github.com/rubygems/rubygems/commit/a20585b4512d.

https://github.com/rubygems/rubygems/commit/aa9102659e
2023-04-06 13:07:16 +09:00
Vít Ondruch b5f2432917
[rubygems/rubygems] Use TestCase#util_spec instead of custom code.
https://github.com/rubygems/rubygems/commit/74d485ff1e
2023-04-06 13:07:16 +09:00
dependabot[bot] 5d718f109d Bump github/codeql-action from 2.2.9 to 2.2.10
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.2.9 to 2.2.10.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](04df1262e6...8c8d71dde4)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-06 12:43:19 +09:00
Adam Hess 7b27ad9ad3
Add BIN as an entry in the glossary (#7667)
I initially thought this macro is referencing binary, not basic instruction name
2023-04-05 16:11:04 -07:00
Stan Lo 2f8e5c80e6 [ruby/irb] Drop Ruby 2.6 support
(https://github.com/ruby/irb/pull/555)

* Remove all Ruby 2.6 support

* Drop Ruby 2.6 specific testing conditions

* Only run Ruby 2.7+ on CI

* Bump Ruby requirement to 2.7+

https://github.com/ruby/irb/commit/3f714b616c
2023-04-05 21:40:40 +00:00
Takashi Kokubun 1587494b0b
YJIT: Add codegen for Integer methods (#7665)
* YJIT: Add codegen for Integer methods

* YJIT: Update dependencies

* YJIT: Fix Integer#[] for argc=2
2023-04-05 13:19:31 -07:00
Mike Dalessio 52e571fa72 Ensure ruby_xfree won't segfault if called after vm_destruct
[Bug #19580]

The real-world scenario motivating this change is libxml2's pthread
code which uses `pthread_key_create` to set up a destructor that is
called at thread exit to free thread-local storage.

There is a small window of time -- after ruby_vm_destruct but before
the process exits -- in which a pthread may exit and the destructor is
called, leading to a segfault.

Please note that this window of time may be relatively large if
`atexit` is being used.
2023-04-05 12:57:32 -04:00
Nobuyoshi Nakada 533423ebe4 core_assertions.rb: Prefer CPU time clocks
To prevent influence from other processes.
2023-04-06 00:19:03 +09:00
Nobuyoshi Nakada f9eb2515a3 core_assertions.rb: Extract common code block 2023-04-06 00:19:03 +09:00
Nobuyoshi Nakada f07c756494 core_assertions.rb: Tweak timeout limit
Increase the timeout limit when variance at rehearsal is small.
2023-04-06 00:19:03 +09:00
Daniel DeLorme 4b100f75d2 [DOC] Clarify behavior of abort() with no argument
Since Ruby 2.7 it prints the message and backtrace of $!

Fixes [Bug #19578]
2023-04-05 07:37:07 -07:00
Takashi Kokubun 615a1bc470
YJIT: Count the number of actually written bytes (#7658) 2023-04-05 10:32:04 -04:00
Alan Wu 3e1e09b2b7 YJIT: Smoke test on Rust 1.58.0
Since warnings might show up on older version but not newer ones.
2023-04-05 09:49:31 -04:00
Alan Wu 8f734cf93e YJIT: Eanble `unsafe_op_in_unsafe_fn` on crate::core
Encourages commenting about soundness of `unsafe` usages.
2023-04-05 09:49:31 -04:00
Alan Wu 929d55c3c7 Revert "YJIT: Suppress unnecessary `unsafe` block (GH-7634)"
This reverts commit 9e678cdbd0.

Without the `unsafe` annotations, the SAFETY comments make less sense.
I want to keep the SAFETY comments.
2023-04-05 09:49:31 -04:00
Hiroshi SHIBATA e003784fc8 [rubygems/rubygems] util/rubocop -A --only Style/RegexpLiteral
https://github.com/rubygems/rubygems/commit/9264d83421
2023-04-05 09:50:29 +00:00
Takashi Kokubun 65d27d3c0a RJIT: Skip a class guard if known to be T_STRING 2023-04-05 00:46:10 -07:00
Takashi Kokubun 9bef39de74 RJIT: Handle include_all argument of respond_to? 2023-04-05 00:38:38 -07:00
Takashi Kokubun 66fe64b269 RJIT: Remove unused variables 2023-04-04 23:55:19 -07:00
Takashi Kokubun 2ddf6079f1 RJIT: Always use guard_two_fixnums 2023-04-04 23:52:14 -07:00
Takashi Kokubun 4e9c3b4518 RJIT: Eliminate known-result guards for blockarg 2023-04-04 23:42:14 -07:00
Takashi Kokubun 4f77d1cdb8 RJIT: Eliminate known-result branches 2023-04-04 23:30:26 -07:00
Hiroshi SHIBATA 9a5d4cc80b [rubygems/rubygems] Removed unused Gem::Deprecate from Gem::TestCase
https://github.com/rubygems/rubygems/commit/d8a75a5f84
2023-04-05 05:49:26 +00:00
Hiroshi SHIBATA 8e37eb1d15 [rubygems/rubygems] Extract class method used by self.method
https://github.com/rubygems/rubygems/commit/d900453ca2
2023-04-05 05:49:26 +00:00
Hiroshi SHIBATA 7f9a5a7562 [rubygems/rubygems] We don't use process_based_port and self.process_based_port
https://github.com/rubygems/rubygems/commit/f1a20c4c69
2023-04-05 05:49:26 +00:00
Hiroshi SHIBATA 6d0caac425 [rubygems/rubygems] We don't use self.make_command
https://github.com/rubygems/rubygems/commit/241f376c32
2023-04-05 05:49:25 +00:00
Hiroshi SHIBATA a464951fc7 [rubygems/rubygems] Unify win_platform? to Gem.win_platform?
https://github.com/rubygems/rubygems/commit/b18a4ef076
2023-04-05 05:49:25 +00:00
Hiroshi SHIBATA cbeea5f3e6 [rubygems/rubygems] Unify java_platform? to Gem.java_platform?
https://github.com/rubygems/rubygems/commit/7f27ab32b8
2023-04-05 05:49:24 +00:00
Hiroshi SHIBATA bf8afe434f [rubygems/rubygems] Removed self.mingw_windows?, It's not used rubygems
https://github.com/rubygems/rubygems/commit/ba3c985701
2023-04-05 05:49:24 +00:00
lukeg 28d6c6d69b [rubygems/rubygems] add some test suites under the Gem namespace, so as not to collide
To avoid collisions especially in ruby/ruby

https://github.com/rubygems/rubygems/commit/e6b2359975
2023-04-05 14:38:20 +09:00
Takashi Kokubun e06bebff5e RJIT: Propagate argument types on method calls 2023-04-04 22:13:25 -07:00
Takashi Kokubun 6d8875b5d7 RJIT: Fix mapping offsets in stack_swap 2023-04-04 22:05:45 -07:00
dependabot[bot] f79912ea78 Bump ruby/setup-ruby from 1.144.2 to 1.146.0
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.144.2 to 1.146.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](ec02537da5...55283cc231)

---
updated-dependencies:
- dependency-name: ruby/setup-ruby
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-05 12:43:28 +09:00
Étienne Barrié 52ff2ce9da
Use `em_delete` in `key_delete` (#504)
* Test existing behavior

Typing Ctrl-D ends editing but typing <Del> does not.

Also renamed a test that is not testing ed_delete_next_char but
key_delete.

* Check if line empty first in em_delete

By distributivity of AND over OR, we can factor out this condition. This
will make the next commit simpler.

* Use em_delete in key_delete

When the editing mode is emacs, use `em_delete` in `key_delete`. We need
to add a condition though to `em_delete`, because it implements both
`delete-char` and `end-of-file`. We only want the `end-of-file` behavior
is the key is really Ctrl-D.

This matches the behavior of the <Del> key with readline, i.e. deleting
the next character if there is one, but not moving the cursor, while not
finishing the editing if there are no characters.
2023-04-05 08:59:12 +09:00
Jeremy Evans bb927acd3b [ruby/optparse] Document requires needed for Date/DateTime/Time/URI/Shellwords support
Fixes [Bug #19566]

https://github.com/ruby/optparse/commit/fb91d97c10
2023-04-04 23:43:58 +00:00
Peter Zhu 1da2e7fca3
[Feature #19579] Remove !USE_RVARGC code (#7655)
Remove !USE_RVARGC code

[Feature #19579]

The Variable Width Allocation feature was turned on by default in Ruby
3.2. Since then, we haven't received bug reports or backports to the
non-Variable Width Allocation code paths, so we assume that nobody is
using it. We also don't plan on maintaining the non-Variable Width
Allocation code, so we are going to remove it.
2023-04-04 17:30:06 -04:00
Takashi Kokubun 1190ec60cc Use a longer timeout for syntax_suggest
for CI stability
2023-04-04 14:02:04 -07:00
Maxime Chevalier-Boisvert d26d3575ca
YJIT: add stats for ratio of versions per block (#7653) 2023-04-04 16:41:52 -04:00
Aaron Patterson 8525603c72
Revert "Fix transient heap mode"
This reverts commit 87253d047c.

Revert "Implement `Process.warmup`"

This reverts commit ba6ccd8714.
2023-04-04 12:59:14 -07:00
Takashi Kokubun e5de0fe108 Remove an unused counter
I ended up not using it.
2023-04-04 11:09:09 -07:00
Takashi Kokubun 116c0f92ef Resurrect yjit-smoke-test before #7651 2023-04-04 11:07:57 -07:00
Takashi Kokubun b7717fc390
YJIT: Stack temp register allocation (#7651)
Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
2023-04-04 10:58:11 -07:00
Aaron Patterson 87253d047c Fix transient heap mode
Make sure the transient heap is in the right mode when we finish warming
the heap.  Also ensure the GC isn't allowed to run while we iterate and
mutate the heap.
2023-04-04 19:49:08 +02:00
Jean Boussier ba6ccd8714 Implement `Process.warmup`
[Feature #18885]

For now, the optimizations performed are:

  - Run a major GC
  - Compact the heap
  - Promote all surviving objects to oldgen

Other optimizations may follow.
2023-04-04 19:49:08 +02:00