summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-09-22What's Here for Range (#4881)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2021-09-23* 2021-09-23 [ci skip]git
2021-09-23Check the encoding of `ruby2_keywords_flag` [Bug #18184]Nobuyoshi Nakada
2021-09-22[ruby/reline] Use `unpack1` instead of `unpack(template)[0]`Kazuhiro NISHIYAMA
https://github.com/ruby/reline/commit/45aa367616
2021-09-22[ruby/irb] Use typed spaces when the line is inside the here documentsKaíque Kandy Koga
Use first method instead of square brackets to support 2.5 and 2.6 versions Use tokens Clear check_newline_depth_difference https://github.com/ruby/irb/commit/6fec2a5d46
2021-09-22Check the entire name as `ruby2_keywords_flag` [Bug #18184]Nobuyoshi Nakada
2021-09-22add NEWS entry for https://github.com/ruby/ruby/pull/4815卜部昌平
2021-09-22RBIMPL_ATTR_NOALIAS: not until LLVM 12卜部昌平
I observed CI failures. https://github.com/ruby/ruby/actions/runs/1240165911 It turns out that RBIMPL_ATTR_NOALIAS was not mature before. Skip using it for old clang, and everything work as expected. Notes: Merged: https://github.com/ruby/ruby/pull/4848
2021-09-22include/ruby/atomic.h: rework卜部昌平
Reduce macros to do the same things in inline functions instead. This way assertions can be made granular. Notes: Merged: https://github.com/ruby/ruby/pull/4848
2021-09-22.cirrus.yml: Add Cirrus CI for Arm64 tests.fedor
Co-authored-by: fedor <fedor@cirruslabs.org> Notes: Merged: https://github.com/ruby/ruby/pull/4875
2021-09-22Rework order of operations to better handle last_status.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4595
2021-09-22Add support for non-blocking `Kernel.system`.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4595
2021-09-22[DOC] Additional to Array#sample [ci skip]Nobuyoshi Nakada
* The requirement to the +n+ argument. * The order of the result array. [Misc #14147]
2021-09-22[rubygems/rubygems] Fix bug where redacted credentials are sent to serverJonathan
Implement deep cloning for `Gem::Uri` class to fix a bug where redacting credentials modifies the URI string in place instead of returning a modified copy. https://github.com/rubygems/rubygems/commit/eafb5a279b
2021-09-22[rubygems/rubygems] Update gem request tests to pass a Gem::Uri into the ↵Jonathan
Gem::Request class https://github.com/rubygems/rubygems/commit/e8e7c2078f
2021-09-22[rubygems/rubygems] Fix an issue causing nested Gem::Uri instancesJonathan
https://github.com/rubygems/rubygems/commit/6589f7bcc7
2021-09-22[rubygems/rubygems] Fix possible malicious website to example.comfiveNinePlusR
example.com is the canonical stand in for domain examples and will never have a backing website. via https://www.rfc-editor.org/rfc/rfc2606.html https://github.com/rubygems/rubygems/commit/26622c81c2
2021-09-22[rubygems/rubygems] Only check if descriptions *start with* FIXME/TODOEllen Marie Dash
It doesn't make much sense to just forbid certain words in descriptions. https://github.com/rubygems/rubygems/commit/7890c98415
2021-09-22[rubygems/rubygems] Avoid loading URI unnecessarily when activating gemsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/ef5f30cba7
2021-09-22* 2021-09-22 [ci skip]git
2021-09-21Explicit the target of do-install-all as the same as dont-install-allNobuyoshi Nakada
2021-09-21[ruby/irb] Sort shortest files in each load pathsNobuyoshi Nakada
There are two directories where csv*/**/*.rb exist, lib/ and test/, and depending on the order of tests, test/ may be placed before lib/. In that case, as "shortest" names were not sorted, csv/helper.rb will be the first candidate for "csv". https://github.com/ruby/irb/commit/2af7c6bf71
2021-09-21[ruby/irb] Check if Gem::Specification is definedNobuyoshi Nakada
https://github.com/ruby/irb/commit/005ade74dd
2021-09-21[ruby/irb] Fix argument orderNobuyoshi Nakada
https://github.com/ruby/irb/commit/05c65858a0
2021-09-21Ripper source on mswinNobuyoshi Nakada
* Get rid of command substitution for cmd.exe. * Separate RM1 command to remove single file sans directory.
2021-09-20Enhanced RDoc for Enumerable#inject (#4876)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2021-09-20Enhanced RDoc for Range (#4870)Burdette Lamar
Introductory material revised. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2021-09-21* 2021-09-21 [ci skip]git
2021-09-20Enhance documentation on GC.stat (#4843)Jemma Issroff
Notes: Merged-By: peterzhu2118 <peter@peterzhu.ca>
2021-09-20Fix malloc_increase is not correctly calculatedPeter Zhu
Commit 123eeb1c1a904923754ce65148dbef045b56e083 added incremental GC which moved resetting malloc_increase, oldmalloc_increase to before marking. However, during_minor_gc is not set until gc_marks_start. So the value will be from the last GC run, rather than the current one. Before the incremental GC commit, this code was in gc_before_sweep which ran before sweep (after marking) so the value during_minor_gc was correct. Notes: Merged: https://github.com/ruby/ruby/pull/4860
2021-09-20Add gvl and fiber assertions to scheduler interface to catch invalid usage.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4656
2021-09-20Add alternative optional hook for `scheduler_close` to allow public usage of ↵Samuel Williams
close. Notes: Merged: https://github.com/ruby/ruby/pull/4658
2021-09-20Don't describe C function that does not exist in prior versions.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4871
2021-09-20Add C interface spec.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4649
2021-09-20Expose `rb_fiber_raise` and tidy up the internal implementation.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4649
2021-09-20Allow to include uninitialized modules [Bug #18177]Nobuyoshi Nakada
The module that is about to be included is considered initialized. Notes: Merged: https://github.com/ruby/ruby/pull/4868
2021-09-20* 2021-09-20 [ci skip]git
2021-09-20MINGW-UCRT: Set CONFIG['arch'] and RUBY_PLATFORM to "x64-mingw-ucrt"Lars Kanis
This allows easy differentiation between ABI incompatible platforms like MSWIN64 and MSVCRT-based MINGW32. This also implicates a distinct rubygem platform which is also "x64-mingw-ucrt". Although the term "mingw32" is the OS-part for 64 bit systems as well, the "32" is misleading and confusing for many users. Therefore the new platform string drops the "32" from the OS part to just "mingw". This conforms to the common practice of windows platform testing per RUBY_PLATFORM=~/mswin|mingw/ . Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20CI: Enable MINGW-UCRT build and test in github actionsLars Kanis
This enables a temporary branch on ruby/setup-ruby and MSP-Greg/setup-ruby-pkgs for UCRT-capable action setup. They set correct PATH and MINGW_PACKAGE_PREFIX for UCRT, if a UCRT based ruby is used. See here for more details: https://github.com/ruby/setup-ruby/issues/193 To enable correct UCRT settings this therefore uses rubyinstaller-head as base ruby, since it is already UCRT based. Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20Adjust test to set+get big values on all platforms and add MINGW-UCRTLars Kanis
Previously the test verified on MSWIN that huge values can not be stored in environment variables but that they can on others. IMHO the intention of the test should not change between platforms. Therefore this adjusts the test to have the same intention - that is to store a big value. This also fixes compatibility with MINGW-UCRT, which previously failed with: <Errno::EINVAL: Invalid argument - ruby_setenv(foo)> test/ruby/test_env.rb:512:in `[]=' test/ruby/test_env.rb:512:in `block in test_huge_value' Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20MINGW: _WIN64 is not defined on i386-mingw32 + ucrt.xtkoba (Tee KOBAYASHI)
Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20MINGW: More permissive pattern matching for coroutinextkoba (Tee KOBAYASHI)
Pattern matching for target_os in configure script should be permissive if we consider suffixing something onto "mingw32". Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20MINGW: set rb_cv_msvcrt=ucrt and RT_VER=140 when UCRT is usedxtkoba (Tee KOBAYASHI)
Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-20MINGW: Fix build error on Windows UCRTxtkoba (Tee KOBAYASHI)
Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-09-19Fix a typo [Bug #17048]Nobuyoshi Nakada
2021-09-19Enable shallow clone on appveyorNobuyoshi Nakada
https://www.appveyor.com/docs/how-to/repository-shallow-clone/
2021-09-19Extract hook macro for attributesNobuyoshi Nakada
2021-09-18Revert "Do not load file with same realpath twice when requiring"Jeremy Evans
This reverts commit ddb85c5d2bdf75a83eb163856508691a7436b446. This commit causes unexpected warnings in TestTranscode#test_loading_race occasionally in CI.
2021-09-19* 2021-09-19 [ci skip]git
2021-09-18Do not load file with same realpath twice when requiringJeremy Evans
This fixes issues with paths being loaded twice in certain cases when symlinks are used. It took me multiple attempts to get this working. My original attempt tried to convert paths to realpaths before adding them to $LOADED_FEATURES. Unfortunately, this doesn't work well with the loaded feature index, which is based off load paths and not realpaths. While I was able to get require working, I'm fairly sure the loaded feature index was not being used as expected, which would have significant performance implications. Additionally, I was never able to get that approach working with autoload when autoloading a non-realpath file. It also broke some specs. This takes a more conservative approach. Directly before loading the file, if the file with the same realpath has been required, the loading of the file is skipped. The realpaths are stored as fstrings in a hidden hash. When rebuilding the loaded feature index, the hash of realpaths is also rebuilt. I'm guessing this makes rebuilding process slower, but I don think that is a hot path. In general, modifying loaded features is only done when reloading, and that tends to be in non-production environments. Change test_require_with_loaded_features_pop test to use 30 threads and 300 iterations, instead of 4 threads and 1000 iterations. I saw only sporadic failures with 4/1000, but consistent failures 30/300 threads. These failures were due to the fact that the concurrent deletions from $LOADED_FEATURES in other threads can result in rb_ary_entry returning nil when rebuilding the loaded features index. To avoid concurrency issues when rebuilding the loaded features index, the building of the index itself is left alone, and afterwards, a separate loop is done on a copy of the loaded feature snapshot in order to rebuild the realpaths hash. Fixes [Bug #17885] Notes: Merged: https://github.com/ruby/ruby/pull/4615