summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-20YJIT: Skip setlocal WB check for immediate values (#6122)John Hawthorn
Write barriers may be required when VM_ENV_FLAG_WB_REQUIRED is set, however write barriers only affect heap objects being written. If we know an immediate value is being written we can skip this check. Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-07-20Match +YJIT in Ruby desc when testing segv (#6141)Noah Gibbs
In test_bug_reporter and test_rubyoptions we intentionally test child processes that cause SEGV. We run them with YJIT if the parent uses YJIT so that the text description matches the parent RUBY_DESCRIPTION. Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2022-07-20[Bug #18928] Fix crash in WeakMapPeter Zhu
In wmap_live_p, if is_pointer_to_heap returns false, then the page is either in the tomb or has already been freed, so the object is dead. In this case, wmap_live_p should return false. Notes: Merged: https://github.com/ruby/ruby/pull/6152
2022-07-20[rubygems/rubygems] Fix `ruby setup.rb --destdir /foo` modifying global specsDavid Rodríguez
Running a command like that is actually removing any previous default bundler specs in the default RubyGems installation (outside of destdir). It should instead only modify destdir. https://github.com/rubygems/rubygems/commit/5ed275383c
2022-07-20[rubygems/rubygems] Refactor destdir checksDavid Rodríguez
https://github.com/rubygems/rubygems/commit/ca956c0de2
2022-07-20[rubygems/rubygems] More cleanupDavid Rodríguez
https://github.com/rubygems/rubygems/commit/6012800a20
2022-07-20[rubygems/rubygems] Unify common logicDavid Rodríguez
https://github.com/rubygems/rubygems/commit/e5434be14c
2022-07-20[rubygems/rubygems] Bundler: update primary source in man 5 gemfileTakuya Noguchi
Specifying multiple primary sources in top-level was deprecated in Bundler 1.13. As Bundler CLI uses primary source instead of global, "global source" is replaced with "primary source". Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/1dd1753f6e
2022-07-20Fix free objects count conditionNobuyoshi Nakada
Free objects have `T_NONE` as the builtin type. A pointer to a valid array element will never be `NULL`. Notes: Merged: https://github.com/ruby/ruby/pull/6153 Merged-By: nobu <nobu@ruby-lang.org>
2022-07-20Mark ruby scripts in YAML [ci skip]Nobuyoshi Nakada
```elisp (mmm-ify-by-regexp 'ruby-mode "^ *#!.*ruby" 0 "^ *shell: *ruby.*{0}" 0 0) ```
2022-07-20[rubygems/rubygems] Fix casing typo when resetting ↵David Rodríguez
`RbConfig::CONFIG["ENABLE_SHARED"]` https://github.com/rubygems/rubygems/commit/3d1ae0050b
2022-07-20* 2022-07-20 [ci skip]git
2022-07-20[Bug #18905] Check symbol name types more strictlyNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6149
2022-07-19[rubygems/rubygems] Bundler: change error/warning message for multiple ↵Takuya Noguchi
global sources Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/316564b8fc
2022-07-19str_buf_cat: preserve coderange when going through fastpathJean Boussier
rb_str_modify clear the coderange, which in this case isn't necessary. ``` compare-ruby: ruby 3.2.0dev (2022-07-12T15:01:11Z master 71aec68566) [arm64-darwin21] built-ruby: ruby 3.2.0dev (2022-07-19T07:17:01Z faster-buffer-conc.. 3cad62aab4) [arm64-darwin21] warming up... | |compare-ruby|built-ruby| |:---------------------|-----------:|---------:| |binary_concat_utf8 | 360.617k| 605.091k| | | -| 1.68x| |binary_concat_binary | 446.650k| 605.053k| | | -| 1.35x| |utf8_concat_utf8 | 454.166k| 597.311k| | | -| 1.32x| ``` ``` | |compare-ruby|built-ruby| |:-----------|-----------:|---------:| |erb_render | 1.790M| 2.045M| | | -| 1.14x| ``` Notes: Merged: https://github.com/ruby/ruby/pull/6120
2022-07-19rb_str_buf_append: fastpath to str_buf_catJean Boussier
If the LHS is ASCII compatible and the RHS is 7BIT we can directly concat without being concerned about anything else. Benchmark: ``` compare-ruby: ruby 3.2.0dev (2022-07-12T15:01:11Z master 71aec68566) [arm64-darwin21] built-ruby: ruby 3.2.0dev (2022-07-13T10:13:53Z faster-buffer-conc.. a04c10476d) [arm64-darwin21] warming up... | |compare-ruby|built-ruby| |:---------------------|-----------:|---------:| |binary_append_utf8 | 385.315k| 573.663k| | | -| 1.49x| |binary_append_binary | 446.579k| 574.898k| | | -| 1.29x| |utf8_append_utf8 | 430.936k| 573.394k| | | -| 1.33x| ``` Note that in the benchmark, the RHS always have a precomputed coderange. So the benchmark never enter the slowpath of having to scan the RHS. However it's extremly likely that we'll end up scanning it anyway in rb_enc_cr_str_buf_cat Notes: Merged: https://github.com/ruby/ruby/pull/6120
2022-07-19[ruby/fileutils] Add an octal prefix to clarify to be octalNobuyoshi Nakada
https://github.com/ruby/fileutils/commit/332025bc02 Co-Authored-By: David Rodríguez <deivid.rodriguez@riseup.net>
2022-07-19Rename ENCINDEX_ASCII to ENCINDEX_ASCII_8BITJean Boussier
Otherwise it's way too easy to confuse it with US_ASCII. Notes: Merged: https://github.com/ruby/ruby/pull/6127
2022-07-18Separate TS_IVC and TS_ICVARC in is_entries buffersJemma Issroff
This allows us to treat cvar caches differently than ivar caches. Notes: Merged: https://github.com/ruby/ruby/pull/6148
2022-07-19[rubygems/rubygems] Bump rb-sys in ↵dependabot[bot]
/test/rubygems/test_gem_ext_cargo_builder/custom_name Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.19 to 0.9.20. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.19...v0.9.20) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/2689b6b940
2022-07-18Extract vm_ic_entry API to mimic vm_cc behaviorJemma Issroff
Notes: Merged: https://github.com/ruby/ruby/pull/5978
2022-07-19* 2022-07-19 [ci skip]git
2022-07-19[rubygems/rubygems] Bump rb-sysdependabot[bot]
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.19 to 0.9.20. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.19...v0.9.20) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/ee2facb8f2
2022-07-18Remove unused variable in array.cPeter Zhu
vshared is no longer used.
2022-07-18[rubygems/rubygems] Move fileutils require to be even more lazyDavid Rodríguez
If directories are already created (the common case), fileutils won't be required at all. https://github.com/rubygems/rubygems/commit/63a9b94fc9
2022-07-18[ruby/rdoc] Fix call-seq for aliased method with similar namesPeter Zhu
deduplicate_call_seq has a bug that skips call-seq for methods where the alias is a prefix of the method name. For example, if the alias name is "each" and the current method name is "each_line", then deduplicate_call_seq will skip all call-seq for "each_line" since it will believe that it is for the alias. https://github.com/ruby/rdoc/commit/1148988ccc
2022-07-18[rubygems/rubygems] Fix upgrading RubyGems with a customized `Gem.default_dir`David Rodríguez
https://github.com/rubygems/rubygems/commit/16d01f9486
2022-07-18[rubygems/rubygems] Improve error message when gems cannot be foundDavid Rodríguez
Include the source of each gem. https://github.com/rubygems/rubygems/commit/a0bed2fb79
2022-07-18* 2022-07-18 [ci skip]git
2022-07-18[Bug #18922] Normalize time at 24:00:00 UTCNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6146 Merged-By: nobu <nobu@ruby-lang.org>
2022-07-17`Gem.unpack` extracts gems so able to executeNobuyoshi Nakada
Creates simple bin stubs to load the extracted executable files. After only extracted under `gems` directory, the gems are considered installed but the executable scripts are not found. Also the second argument is now the parent of the previous second and third arguments. Notes: Merged: https://github.com/ruby/ruby/pull/6145
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