Age | Commit message (Collapse) | Author |
|
https://github.com/ruby/time/commit/f9d078082f
|
|
|
|
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.1 to 4.3.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/5d5d22a31266ced268874388b861e4b58bb5c2f3...1746f4ab65b179e0ea60a494b83293b640dd5bba)
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
|
|
`RUBY_TRY_UNUSED_BLOCK_WARNING_STRICT=1 ruby ...` will enable
strict check for unused block warning.
This option is only for trial to compare the results so the
envname is not considered well.
Should be removed before Ruby 3.4.0 release.
|
|
https://github.com/rubygems/rubygems/commit/f6f79f4c37
|
|
https://github.com/rubygems/rubygems/commit/a2f43d3756
|
|
https://github.com/rubygems/rubygems/commit/e3d180620c
|
|
https://github.com/rubygems/rubygems/commit/a9d22e5f46
|
|
https://github.com/rubygems/rubygems/commit/b373b7ed0d
|
|
|
|
|
|
It has not been used since e48375c112022fa321786ccd95dd4e718efd78a3.
|
|
Not to build the rubyspec-capiext extension libraries again on the
next build after the build all extensions get built, ensure these
extensions are up to date when recursively building from exts.mk.
|
|
Remove the case `RB_IO_BUFFER_HOST_ENDIAN` is not defined.
|
|
commands/pristine_spec.rb is passed with the turbo_tests 2.2.3 because it the removed json dependency.
Related to https://github.com/ruby/ruby/pull/10496
Related to d60b2caa95b01f37d35db9ef8be1d035d14b408d
|
|
These cc's aren't managed by the garbage collector so we shouldn't try
to mark and move them.
|
|
CCS list doesn't mark CI objects, so it doesn't matter whether or not
they are markable before pushing.
|
|
ruby_coderange_type is defined in ruby/internal/encoding/coderange.h so
we need to include it.
|
|
|
|
https://github.com/ruby/prism/commit/eadb09ef36
|
|
https://github.com/ruby/prism/commit/593d637178
|
|
When we're searching for CCs, compare the argc and flags for CI rather
than comparing pointers. This means we don't need to store a reference
to the CI, and it also naturally "de-duplicates" CC objects.
We can observe the effect with the following code:
```ruby
require "objspace"
hash = {}
p ObjectSpace.memsize_of(Hash)
eval ("a".."zzz").map { |key|
"hash.merge(:#{key} => 1)"
}.join("; ")
p ObjectSpace.memsize_of(Hash)
```
On master:
```
$ ruby -v test.rb
ruby 3.4.0dev (2024-04-15T16:21:41Z master d019b3baec) [arm64-darwin23]
test.rb:3: warning: assigned but unused variable - hash
3424
527736
```
On this branch:
```
$ make runruby
compiling vm.c
linking miniruby
builtin_binary.inc updated
compiling builtin.c
linking static-library libruby.3.4-static.a
ln -sf ../../rbconfig.rb .ext/arm64-darwin23/rbconfig.rb
linking ruby
ld: warning: ignoring duplicate libraries: '-ldl', '-lobjc', '-lpthread'
RUBY_ON_BUG='gdb -x ./.gdbinit -p' ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems ./test.rb
2240
2368
```
Co-authored-by: John Hawthorn <jhawthorn@github.com>
|
|
Signed-off-by: careworry <worrycare@outlook.com>
|
|
(https://github.com/ruby/irb/pull/927)
https://github.com/ruby/irb/commit/08eee25d28
|
|
|
|
Previously, we got "We are killing the stack canary set by opt_ltlt"
from `$./miniruby --yjit-call-threshold=1 -e 'a = [].freeze; a << 1'`
Found by running ruby-spec with yjit-call-threshold=1.
|
|
(https://github.com/ruby/irb/pull/924)
https://github.com/ruby/irb/commit/c8182fa490
|
|
(https://github.com/ruby/irb/pull/926)
https://github.com/ruby/irb/commit/e8ea8f253d
|
|
[Feature #18576]
Since outright renaming `ASCII-8BIT` is deemed to backward incompatible,
the next best thing would be to only change its `#inspect`, particularly
in exception messages.
|
|
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.0 to 3.25.1.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/df5a14dc28094dc936e103b37d749c6628682b60...c7f9125735019aa87cfc361530512d50ea439c71)
---
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>
|
|
Ruby-core CI is having issues with turbo_tests 2.2.1. This version adds
json as a dependency and the `bundle install` command ruby-core uses is
not able to compile it for some reason.
I was not able to reproduce the issue locally, so this needs more
investigation.
We're already locked to 2.2.0, but ruby-core does not use a
`Gemfile.lock` so we need to lock explicitly in the Gemfile for now.
|
|
https://github.com/rubygems/rubygems/commit/e8a363713e
|
|
(https://github.com/ruby/reline/pull/684)
https://github.com/ruby/reline/commit/ce30c23730
|
|
https://github.com/ruby/optparse/commit/0aec9adfc5
|
|
https://github.com/ruby/optparse/commit/b49cb996af
|
|
https://github.com/ruby/ipaddr/commit/f5b006741f
|
|
|
|
|
|
|
|
|
|
RGENGC_CHECK_MODE >=3 fails with an incinsistency in the old object
count during ec_finalization.
This is due to inconsistency introduced to the object graph using T_DATA
finalizers.
This is explained in commit 79df14c04b452411b9d17e26a398e491bca1a811,
which disabled gc during finalization to work around this.
```
/* prohibit GC because force T_DATA finalizers can break an object graph consistency */
dont_gc_on()
```
This object graph inconsistency also seems to break RGENGC_CHECK_MODE >=
3, when it attempt to verify the object age relationships during
finalization at VM shutdown (gc_enter is called during finalization).
This commit stops the internal consistency check during gc_enter only
when RGENGC_CHECK_MODE >= 3 and when gc is disabled.
This fixes `make btest` with `-DRGENGC_CHECK_MODE=3`
|
|
* YJIT: A64: Add CBZ and CBNZ encoding functions
* YJIT: A64: Use CBZ/CBNZ to check for zero
Instead of emitting `cmp x0, #0` plus `b.z #target`, A64 offers Compare
and Branch on Zero for us to just do `cbz x0, #target`. This commit
utilizes that and the related CBNZ instruction when appropriate.
We check for zero most commonly in interrupt checks:
```diff
# Insn: 0003 leave (stack_size: 1)
# RUBY_VM_CHECK_INTS(ec)
ldur w11, [x20, #0x20]
-tst w11, w11
-b.ne #0x109002164
+cbnz w11, #0x1049021d0
```
* fix copy paste error
Co-authored-by: Randy Stauner <randy@r4s6.net>
---------
Co-authored-by: Randy Stauner <randy@r4s6.net>
|
|
|
|
|
|
|
|
(https://github.com/ruby/irb/pull/922)
* Remove internal-only methods from Command::Base
Command#ruby_args and Command#unwrap_string_literal are used for default command's argument backward compatibility.
Moved these methods to another module to avoid being used from custom commands.
* Update lib/irb/command/edit.rb
---------
https://github.com/ruby/irb/commit/7405a841e8
Co-authored-by: Stan Lo <stan001212@gmail.com>
|
|
musl vs gnu case
This case is for not locking things like `arm-darwin-23` when the
lockfile already includes `arm-darwin`, so that we don't infinitely keep
redundant versioned platforms in the lockfile when not necessary.
We detect this with `Gem::Platform#===`. For example,
`Gem::Platform.new("arm-darwin-23") === Gem::Platform.new("arm-darwin")`
but they're not `==`.
However, in the case of `-musl` vs `-gnu`, those act as the platform
"version", but `===` is not commutative for them. This is explained in
`===` docs.
We only want to exclude the local platform in situations when
`Gem::Platform#===` is actually commutative.
https://github.com/rubygems/rubygems/commit/8099c4face
|
|
|
|
|
|
https://github.com/ruby/prism/commit/f3f9950a74
|