summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-17[rubygems/rubygems] Stop using `/dev/null` for silent ui for WASI platformYuta Saito
WASI doesn't guarantee that `/dev/null` is present. So without this patch, we needed to mount host's `/dev` directory to WASI guest process to avoid `ENOTCAPABLE` error while `require "bundler/setup"` https://github.com/rubygems/rubygems/commit/e9187ab61f
2022-07-17[rubygems/rubygems] bundler: fix typo in inline RuboCop configTakuya Noguchi
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/e11f5a143b
2022-07-17[rubygems/rubygems] Show a proper error if extension dir is not writableDavid Rodríguez
Instead of showing the bug report template. https://github.com/rubygems/rubygems/commit/0c8b6f7dd5
2022-07-17[rubygems/rubygems] Unify some common codeDavid Rodríguez
https://github.com/rubygems/rubygems/commit/972e8ff965
2022-07-17[rubygems/rubygems] Don't call `#build_extensions` at all if there are no ↵David Rodríguez
extensions https://github.com/rubygems/rubygems/commit/5ecc0e0b31
2022-07-17Create build-only gemspec files only if having an extensionNobuyoshi Nakada
2022-07-17Fix tests for ABI incompatible binary error messagsNobuyoshi Nakada
2022-07-17* 2022-07-17 [ci skip]git
2022-07-17Show ABI incompatible binary pathNobuyoshi Nakada
2022-07-16[rubygems/rubygems] Drop support for old `Gem::Specification` versionsNobuyoshi Nakada
`specification_version` method was added before RubyGems 1.0, and `add_runtime_dependency` method was before 1.2. These seem aged enough to remove. https://github.com/rubygems/rubygems/commit/92770c5cd9
2022-07-16Fix conversion from absolute path to relative pathNobuyoshi Nakada
2022-07-16Avoid to symlink under symlinkNobuyoshi Nakada
2022-07-16Disable parallel built in test-bundled-gemsNobuyoshi Nakada
2022-07-16test-bundled-gems.rb needs `+` with GNU makeNobuyoshi Nakada
This script runs `make` internally, and sub-`make`s need the environment variable for the job server when compiling in parallel.
2022-07-16Move copying/linking extra files to Makefile so removed by `clean`Nobuyoshi Nakada
2022-07-15Add benchmarks for setting / getting ivars on genericsJemma Issroff
Notes: Merged: https://github.com/ruby/ruby/pull/6144
2022-07-15YJIT: Add send unit tests (#6143)Noah Gibbs
Add send unit tests for YJIT Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-07-16* 2022-07-16 [ci skip]git
2022-07-16[ruby/reline] Use color name instead of code (integer) in dialog color APIsst0012
As pointed out in the [comment](https://github.com/ruby/reline/pull/413#issuecomment-1168033973), the code is actually a control sequence and not only for colors. To make the dialog color APIs safer to use, we should restrict its usages and extract away the bg/fg concept from the input. So in this commit, I made these changes: 1. The dialog_*_bg/fg_color APIs only takes and returns color names (symbol): - :black - :red - :green - :yellow - :blue - :magenta - :cyan - :white 2. Add additional dialog_*_bg/fg_color_sequence APIs to access the raw code. https://github.com/ruby/reline/commit/b32a977766
2022-07-15[DOC] Fix documentation for ARGF#readlinesPeter Zhu
[Bug #18909] Notes: Merged: https://github.com/ruby/ruby/pull/6137
2022-07-15Fixes ivar benchmarks to not depend on object allocationJemma Issroff
Prior to this change, we were measuring object allocation as well as setting instance variables within ivar benchmarks. With this change, we now only measure setting instance variables within ivar benchmarks. Notes: Merged: https://github.com/ruby/ruby/pull/6142
2022-07-15Implement Objects on VWAPeter Zhu
This commit implements Objects on Variable Width Allocation. This allows Objects with more ivars to be embedded (i.e. contents directly follow the object header) which improves performance through better cache locality. Notes: Merged: https://github.com/ruby/ruby/pull/6117
2022-07-15[rubygems/rubygems] Use https protocol for URLs for config mirrorTakuya Noguchi
example.org is used mirror URL as an example, not to make access to a (potential) third-party domain. Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/31230f850c
2022-07-15[rubygems/rubygems] Fix wrong information about default RubyGems sourceTakuya Noguchi
Also fix regression from rubygems/rubygems PR 3056 https://my.diffend.io/gems/rubygems-update/1.3.5/1.3.6/page/4#d2h-514986 https://my.diffend.io/gems/rubygems-update/2.0.0/2.0.2/page/2#d2h-514986 Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/06b1e9ebc5
2022-07-14MJIT: Share rb_mjit_unit through mjit_unit.hTakashi Kokubun
mjit_compile.c should be able to access this more easily. Notes: Merged: https://github.com/ruby/ruby/pull/6140
2022-07-15Ensure symlinks to bundled gem with exts have parent dirYuta Saito
When configuring with `--disable-rpath` and `--static-linked-ext` (e.g. building for WASI), `extmk.rb` doesn't build exts under bundled gems, and `.bundle/gems/#{gemname}-#{ver}` are not created due to no call of `extmake`. b2491783986084770f6f97552f27b868622730cf starts creating symlink at `.bundle/gems/#{gemname}-#{ver}/lib`, but the parent dir is not created, so configuration aginst debug and rbs gems were failed. Notes: Merged: https://github.com/ruby/ruby/pull/6136
2022-07-14MJIT: Merge mjit_worker.c back to mjit.c (#6138)Takashi Kokubun
Since #6006, we no longer avoid executing GC on mjit_worker.c and thus there's no need to carefully change how we write code whether you're in mjit.c or mjit_worker.c anymore. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-07-14Avoid SEGV on capture_cc_entriesTakashi Kokubun
2022-07-14[DOC] Fix typo in documentation for IO#readlinesPeter Zhu
2022-07-14Fix language describing protected methodsJeremy Evans
Fixes [Bug #18887]
2022-07-14Correct comment explaining env flags [ci skip]John Hawthorn
We use 4 values for env flags now, which also shifted over the frame flags by one bit.
2022-07-15[ruby/psych] Fix infinite loop bug after YAML_MEMORY_ERROR (psych issue #440)Karl Anderson
https://github.com/ruby/psych/commit/6c56700fb2
2022-07-15* 2022-07-15 [ci skip]git
2022-07-14Get the insns_address_table from the vm_exec_core module table...Matt Valentine-House
Notes: Merged: https://github.com/ruby/ruby/pull/6134
2022-07-14[ruby/bigdecimal] Remove checks for `struct RRational` and `struct RComplex`Nobuyoshi Nakada
These are used to see only if `RRATIONAL` and `RCOMPLEX` are available, however, these two are macros and can be checked with `#ifdef` directly. https://github.com/ruby/bigdecimal/commit/175bbacd43
2022-07-14[ruby/set] Get rid of use of `Gem::Version`Nobuyoshi Nakada
When retrying in ruby's test, it seems possible that `Gem` is not loaded. ``` 1) Error: TC_Set_Builtin#test_to_set: NameError: uninitialized constant TC_Set_Builtin::Gem /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:844:in `should_omit?' /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:869:in `test_to_set' 2) Error: TC_Set_Builtin#test_Set: NameError: uninitialized constant TC_Set_Builtin::Gem /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:844:in `should_omit?' /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:849:in `test_Set' ``` This is by `Gem::Version` only, just compare as array of integers instead. https://github.com/ruby/set/commit/cde0a4bbc7
2022-07-14[ruby/un] Support `FileUtils.cp_lr`Nobuyoshi Nakada
https://github.com/ruby/un/commit/e976ad8a7c
2022-07-14[ruby/timeout] gemspec: Drop unused directives "executables"Olle Jonsson
This gem exposes no executables. https://github.com/ruby/timeout/commit/70be2bd48a
2022-07-14[rubygems/rubygems] Fix misleading error if compact index cannot be copiedDavid Rodríguez
Previously if `~/.bundle/cache/compact_index/rubygems.org.*/version` were owned by root with read-only access, `bundle install` would fail with a misleading error message. For example: ``` There was an error while trying to write to `/tmp/bundler-compact-index-20220711-1823-npllre/versions`. It is likely that you need to grant write permissions for that path. ``` This happened because the EACCESS error was caught by `SharedHelpers.filesystem_access`, which makes it look like the target directory is at fault instead of the source. We can't simply drop this guard because that causes the opposite problem: the permission error appears to come from the source instead of the target, since `CompactIndexClient::Cache#lines` also wraps read access errors. Instead, bring a minimal implementation of `FileUtils.cp` and nest calls to `SharedHelpers.filesystem_access` properly. https://github.com/rubygems/rubygems/commit/320822c070 Co-authored-by: Stan Hu <stanhu@gmail.com>
2022-07-14Set `GEM_PATH` environment variable in runruby.rbNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6130
2022-07-14Try to install also gemspec files under gem directoriesNobuyoshi Nakada
Gemspec files having extension libraries are placed under each gem directories now. Notes: Merged: https://github.com/ruby/ruby/pull/6130
2022-07-14Install gems `lib` directory to build pathNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6130
2022-07-14Make dependency-free gemspec filesNobuyoshi Nakada
The default gems have not been installed yet in the build directory, bundled gems depending on them can not work. As those dependencies should be usable there even without rubygems, make temporary gemspec files without the dependencies, and use them in the build directory. Notes: Merged: https://github.com/ruby/ruby/pull/6130
2022-07-14Extract gemspec files to each gem directoriesNobuyoshi Nakada
Since extension libraries can not be built in the source directory, rubygems warns gems have extension libraries as the extensions are not built. To order to suppress this warnings, extract such gemspec files under each gem directories instead of the common `specifications` directory. Notes: Merged: https://github.com/ruby/ruby/pull/6130
2022-07-14[rubygems/rubygems] Fix `gem update --system` crash while regenerating binstubsDavid Rodríguez
Since a few commits ago, we no longer call `Gem::Specification.reset` after each invocation of `Gem::Installer#install`. This means we don't call it when the default Bundler is installed during `gem update --system`. This causes no issues until the end of the upgrade process when: * The previous default Bundler spec is removed from disk. * All specification stubs are turned into real specifications by loading them from disk. But the one for Bundler no longer exists so materializes to `nil` and regenerating binstubs crashes like this: ``` Bundler 2.4.0.dev installed RubyGems 3.4.0.dev installed Regenerating binstubs ERROR: While executing gem ... (NoMethodError) undefined method `platform' for nil:NilClass /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `block in execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:981:in `block in each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `map' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `select' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:301:in `invoke' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:604:in `regenerate_binstubs' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:183:in `execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:185:in `process_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:149:in `run' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/gem_runner.rb:51:in `run' setup.rb:33:in `<main>' ``` We fix it by more carefully managing the removal of the previous default Bundler gem. https://github.com/rubygems/rubygems/commit/9989f6d5af
2022-07-13GVL Instrumentation: remove the EXITED count assertionJean Boussier
It's very flaky for some unknown reason. Something we have an extra EXITED event. I suspect some other test is causing this. Notes: Merged: https://github.com/ruby/ruby/pull/6133
2022-07-14* 2022-07-14 [ci skip]git
2022-07-13[DOC] Correct call-seq directive in string.c (#6131)Burdette Lamar
Correct call-seq directive in string.c Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-07-13Bundled gem extensions are out of scope of update-depsNobuyoshi Nakada
2022-07-13[ruby/timeout] Give a name to the background threadJean Boussier
https://github.com/ruby/timeout/commit/5594ae2f4d