summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-11Fast object is iclass checksJohn Hawthorn
Calling rb_obj_is_kind_of with an ICLASS returns the same result as calling it with the ICLASS's original Module. Most of the time we encounter an ICLASS here checking the validity of a protected method or super call, which we expect to return true (or raise a slow exception anyways). We can take advantage of this by performing a fast class inheritance check on the ICLASS's "includer" in hopes that it returns true. If the includer class check returns false we still have to fallback to the full inheritance chain scan for the module's inclusion, but this should be less common. Notes: Merged: https://github.com/ruby/ruby/pull/5642
2022-03-11Add rb_ary_resetPeter Zhu
rb_ary_reset will free heap allocated arrays and unshare shared arrays.
2022-03-11Adding guidance about characters in C-code doc (#5641)Burdette Lamar
Showing how to do as @nobu does -- putting doc into doc/*.rdoc instead of in *.c. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-12* 2022-03-12 [ci skip]git
2022-03-11Refactor duplicate code in rb_array_replacePeter Zhu
In both cases in the if statement, we free heap allocated arrays and unshare shared arrays.
2022-03-11[ruby/rdoc] Scrollable sidebarMasafumi Koba
This change makes the sidebar scrollable via `position: sticky` and `overflow: auto`; See also <https://caniuse.com/?search=sticky> https://github.com/ruby/rdoc/commit/4d52e24840
2022-03-11Move ruby.h in `#ifdef RUBY` blockNobuyoshi Nakada
Must not depend on ruby specific files in Ruby unrelated cases.
2022-03-10Revert "Fast object is iclass checks"John Hawthorn
This reverts commit 1b15756d24c11ed6bfddb5ae53402a071a20ea97. Notes: Merged: https://github.com/ruby/ruby/pull/5639
2022-03-10Allow interrupting regexps that backtrackJeremy Evans
Fixes [Bug #14103] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/4960
2022-03-10Fast object is iclass checksJohn Hawthorn
Calling rb_obj_is_kind_of with an ICLASS returns the same result as calling it with the ICLASS's original Module. Most of the time we encounter an ICLASS here checking the validity of a protected method or super call, which we expect to return true (or raise a slow exception anyways). We can take advantage of this by performing a fast class inheritance check on the ICLASS's "includer" in hopes that it returns true. If the includer class check returns false we still have to fallback to the full inheritance chain scan for the module's inclusion, but this should be less common. Notes: Merged: https://github.com/ruby/ruby/pull/5619
2022-03-10Small optimization for the opt_and instructionAaron Patterson
This change eagerly performs a bitwise and on the parameters. If both parameters are fixnums, then the result value should also be a fixnum. We can just test the bit on the result and return if it's a fixnum. Otherwise return Qundef. Notes: Merged: https://github.com/ruby/ruby/pull/5629
2022-03-11* 2022-03-11 [ci skip]git
2022-03-10Fix visibility of alias of zsuper methodsJeremy Evans
This was broken by 71c746379d5872e250d90ae45c585760afaf9516. Fixes [Bug #18600] Notes: Merged: https://github.com/ruby/ruby/pull/5592
2022-03-10Update default gems list at bd1862330756b177ba189597b9de10 [ci skip]git
2022-03-10[ruby/io-wait] Update version to 0.2.2.pre1 for testingCharles Oliver Nutter
https://github.com/ruby/io-wait/commit/12e26f574e
2022-03-10Ignore pre-release for sync target on sync_default_gemsHiroshi SHIBATA
2022-03-09[DOC] Enhanced RDoc for String (#5635)Burdette Lamar
Treats: #count #delete #delete! #squeeze #squeeze! Adds section "Multiple Character Selectors" to doc/character_selectors.rdoc. Co-authored-by: Peter Zhu <peter@peterzhu.ca> Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-10[DOC] Remove an unnecessary character [ci skip]Kazuhiro NISHIYAMA
2022-03-10* 2022-03-10 [ci skip]git
2022-03-09Avoid unnecessary conditionalJeremy Evans
All frames should be either iseq frames or cfunc frames. Use a VM assert instead of a conditional to check for a cfunc frame if the current frame is not an iseq frame. Notes: Merged: https://github.com/ruby/ruby/pull/4732
2022-03-09[DOC] Enhanced RDoc for String (#5633)Burdette Lamar
Treats: #tr (revised to link to "Character Selectors" document) #tr! #tr_s #tr_s! Also renames doc/character_selector.rdoc to match its title. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-09[ruby/rdoc] Support crossref of methods with multiple argumentsPeter Zhu
For example, consider the following markup: C1#m(a, b) Before this patch, it generated this HTML: <p><a href=\"C1.html#method-i-m\"><code>C1#m</code></a>(a, b)</p> Which places the method arguments outside of the link. Now it generates this HTML: <a href=\"C1.html#method-i-m\"><code>C1#m(a, b)</code></a> https://github.com/ruby/rdoc/commit/05a2b2222b
2022-03-09exts.mk.tmpl: propagate MINIRUBY to enc.mk even though invoking from exts.mkYuta Saito
This is another attempt to fix out-of-src build with --with-static-linked-ext. The first attempt was 4f1888bda70981d9f5b1bf55ab692e0ce18e79f4 but reverted because it broke out-of-src build from pre-generated sources via `make dist`. This patch fixes the second trans C source gen, mentioned in the previous commit message, by passing MINIRUBY as well as when invoking from common.mk Notes: Merged: https://github.com/ruby/ruby/pull/5627
2022-03-09[DOC] Fix default offset of String#byterindexKazuhiro NISHIYAMA
2022-03-09* 2022-03-09 [ci skip]git
2022-03-08[DOC] RDoc for character selectors (#5632)Burdette Lamar
This file will be a link target for methods doc that cites character selectors (e.g., String#tr), It covers only the character selector; +replacement+ is discussed at String#tr (which will be revised and simplified); multiple selectors will be discussed at String#delete and String#count. Co-authored-by: Peter Zhu <peter@peterzhu.ca> Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-08Added release option to sync only released version of the default gemsHiroshi SHIBATA
2022-03-08test/io/console/test_io_console.rb: parens neededYusuke Endoh
2022-03-08Skip three tests on FreeBSD 13Yusuke Endoh
Some tests that use signals frequently fail randomly on FreeBSD 13. Maybe something around signals has changed in FreeBSD 13. This change skips them tentatively.
2022-03-07[DOC] Enhanced RDoc for String #tr and #tr! (#5626)Burdette Lamar
Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-08* 2022-03-08 [ci skip]git
2022-03-08[rubygems/rubygems] Add newline to validate_platforms! message when platform ↵Alex Gittemeier
is missing When I run bundle install with BUNDLE_DEPLOYMENT=true in the environment on a different platform than I usually do development, I get the following output to the console (wrapped exactly as shown): Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform is x86_64-linux. Add the current platform to the lockfile with `bundle lock --add-platform x86_64-linux` and try again. Because the way the message wraps, its not as simple as copying the suggested command to the clipboard because it contains a newline: $ bundle lock Writing lockfile to [...]/Gemfile.lock $ --add-platform x86_64-linux Adding a newline right before the command forces the command in the error message to be on the same line, which facilitates copy-pasting the command in the message. https://github.com/rubygems/rubygems/commit/4cf6989b11
2022-03-07Use rb_ary_unshare for shared array in rb_ary_replacePeter Zhu
rb_ary_unshare will perform FL_UNSET_SHARED and rb_ary_decrement_share.
2022-03-07[DOC] Fix documentation typo for Process#clock_gettimeThierry Joyal
Fixes [Misc #18610] Notes: Merged: https://github.com/ruby/ruby/pull/5625
2022-03-07Update default gems list at 9c531ca524506f9de7bc4643fd6d89 [ci skip]git
2022-03-07[ruby/ostruct] Drop unused directives from gemspec ↵Olle Jonsson
(https://github.com/ruby/ostruct/pull/39) This gem exposes no executables. https://github.com/ruby/ostruct/commit/a1242f7ebe
2022-03-07[ruby/ostruct] v0.5.3Marc-André Lafortune
https://github.com/ruby/ostruct/commit/322efd0e61
2022-03-07[ruby/ostruct] Fix class and method as attribute namesLadislav Gallay
https://github.com/ruby/ostruct/commit/7258535073
2022-03-07[DOC] Change to guidance on lists in What's Here section (#5618)Burdette Lamar
Currently, the guide says a "What's Here" section should have a labeled list for the methods. Such a list can render very differently in different browsers, and are often erratic in their indentation of continuation lines. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-03-07* 2022-03-07 [ci skip]git
2022-03-07[rubygems/rubygems] Update README.md.ttBrad Gessler
Reduce the number of steps required to install a gem from two steps to one by using `bundle add` https://github.com/rubygems/rubygems/commit/2c968420cd
2022-03-06* 2022-03-06 [ci skip]git
2022-03-06[rubygems/rubygems] Make `--strict` flag of `update` and `outdated` commands ↵David Rodríguez
consistent Previously they had slightly different behavior when combined with conservative updating flags. The correct behavior is the `--update-strict` option, so `--script` now does that, The `--update-strict` option is left there for now but I will deprecate it later. https://github.com/rubygems/rubygems/commit/ab42046229
2022-03-05* 2022-03-05 [ci skip]git
2022-03-05Mention removed gems since 3.1 [ci skip]Kazuhiro NISHIYAMA
2022-03-04Remove gdbm related code from Travis CIKazuhiro NISHIYAMA
The related extensions have been removed. Related: https://github.com/ruby/ruby/pull/4619
2022-03-04sitelibdir makes no sense in ruby itselfNobuyoshi Nakada
2022-03-04Fix typos [ci skip]Kazuhiro NISHIYAMA
2022-03-03Dedup superclass array in leaf sibling classesJohn Hawthorn
Previously, we would build a new `superclasses` array for each class, even though for all immediate subclasses of a class, the array is identical. This avoids duplicating the arrays on leaf classes (those without subclasses) by calculating and storing a "superclasses including self" array on a class when it's first inherited and sharing that among all superclasses. An additional trick used is that the "superclass array including self" is valid as "self"'s superclass array. It just has it's own class at the end. We can use this to avoid an extra pointer of storage and can use one bit of a flag to track that we've "upgraded" the array. Notes: Merged: https://github.com/ruby/ruby/pull/5604
2022-03-04* 2022-03-04 [ci skip]git