summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-01-07Explicitly pass $/ when loop modeNobuyoshi Nakada
Get rid of depending on using $/ internally in ARGF.gets. Notes: Merged: https://github.com/ruby/ruby/pull/5403
2022-01-06Revert "Set encoding before concatenating to string"Peter Zhu
This reverts commit 44368b5f8bc21e19fa06a0fc0625923fc41293e6. Notes: Merged: https://github.com/ruby/ruby/pull/5406
2022-01-06Revert "Enable Variable Width Allocation by default"Peter Zhu
This reverts commit d4a95428bb244ca8c4a97ad50f3837f191f1f0c3. Notes: Merged: https://github.com/ruby/ruby/pull/5405
2022-01-06Set correct termlen for frozen stringsPeter Zhu
Frozen strings should have the same termlen as the original string when copy_encoding is true. Notes: Merged: https://github.com/ruby/ruby/pull/5399
2022-01-06Set encoding before concatenating to stringPeter Zhu
If we set encoding after the call to rb_str_buf_cat, then rb_str_buf_cat will not set the correct terminator length. Notes: Merged: https://github.com/ruby/ruby/pull/5399
2022-01-06Update lldb_cruby.py for VWA stringsPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/5399
2022-01-06Compile with USE_RVARGC=0 on CIPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/5399
2022-01-06Enable Variable Width Allocation by defaultPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/5399
2022-01-07io_buffer.c: use mremap based resizing only when mremap availableYuta Saito
some libc implementations (e.g. wasi-libc) define MREMAP_MAYMOVE, but don't have mremap itself, so guard the use of mremap by HAVE_MREMAP Notes: Merged: https://github.com/ruby/ruby/pull/5401
2022-01-06Enhanced RDoc for IO (#5402)Burdette Lamar
Treats: #ungetc #isatty #close_on_exec? Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-01-07Add bugs.ruby links.manga_osyo
Notes: Merged: https://github.com/ruby/ruby/pull/5400
2022-01-07* 2022-01-07 [ci skip]git
2022-01-06Update test/ruby/test_module.rbJeremy Evans
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/5398
2022-01-06Remove unneeded lineJeremy Evans
Notes: Merged: https://github.com/ruby/ruby/pull/5398
2022-01-06Allow include before calling Module#initializeJeremy Evans
This is to allow Module subclasses that include modules before calling super in the subclass's initialize. Remove rb_module_check_initializable from Module#initialize. Module#initialize only calls module_exec if a block is passed, it doesn't have other issues that would cause problems if called multiple times or with an already initialized module. Move initialization of super to Module#allocate, though I'm not sure it is required there. However, it's needed to be removed from Module#initialize for this to work. Fixes [Bug #18292] Notes: Merged: https://github.com/ruby/ruby/pull/5398
2022-01-06[rubygems/rubygems] Fix suggestions flagximenasandoval
https://github.com/rubygems/rubygems/commit/b55a1393ca
2022-01-06[rubygems/rubygems] Let fetch understand gem:version syntaxximenasandoval
Fix version error message Add tests to fetch error messages Fix default version since is not necessary https://github.com/rubygems/rubygems/commit/070620ebe4
2022-01-06[rubygems/rubygems] Fix `gem install <non-existent-gem> --force` crashDavid Rodríguez
Before: ``` $ gem install sfdsfdsfsdide --force ERROR: While executing gem ... (NoMethodError) undefined method `spec' for nil:NilClass @always_install << newest.spec ^^^^^ ``` After: ``` $ gem install sfdsfdsfsdide --force ERROR: Could not find a valid gem 'sfdsfdsfsdide' (>= 0) in any repository ``` https://github.com/rubygems/rubygems/commit/4e2bfd1101
2022-01-06[ruby/reline] windows: test_yamatanooroti fixYO4
windows can't create too narrow and tall window. https://github.com/ruby/reline/commit/20b5f2f6fc
2022-01-06tool/rbinstall.rb: instal ruby.wasm produced by EmscriptenYuta Saito
Notes: Merged: https://github.com/ruby/ruby/pull/5370
2022-01-06Update bundled gems list at 2022-01-06git
2022-01-06NEWS: "taintedness" and "trustedness" methods are removedNobuyoshi Nakada
2022-01-06NEWS: Separate removed constants sectionNobuyoshi Nakada
2022-01-06Remove useless code [Bug #18185]Nobuyoshi Nakada
RMODULE_SUPER is initialized to 0, as the uninitialized module flag is used since b929af430c39df6597d2f3f53b82c38b1d76217b.
2022-01-06Fix spec failure on ruby 3.1Kazuhiro NISHIYAMA
Because https://github.com/ruby/ruby/pull/5148 merged after Ruby 3.1.0 released. 13241b71a50dded0a7b021ec4f2fb6a995daace9 did not fix proc spec yet. https://github.com/ruby/actions/runs/4718820699?check_suite_focus=true#step:18:173 ``` 1) Proc#parameters adds * rest arg for "star" argument FAILED Expected [[:req, :x], [:rest]] == [[:req, :x], [:rest, :*]] to be truthy but was false /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:85:in `block (3 levels) in <top (required)>' /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:3:in `<top (required)>' ```
2022-01-05Enhanced RDoc for IO (#5395)Burdette Lamar
Treats: #getc #readchar #getbyte #readbyte #ungetbyte Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-01-06* 2022-01-06 [ci skip]git
2022-01-05Remove Refinement#{extend_object,append_features,prepend_features}Jeremy Evans
Also make include, prepend, and extend raise a TypeError if one of the modules is a refinement. Implements [Feature #18270] Notes: Merged: https://github.com/ruby/ruby/pull/5358
2022-01-05test/ruby/test_refinement.rb: Remove "assigned but unused variable"Yusuke Endoh
2022-01-05Remove assertion causing read barrier to triggerPeter Zhu
GET_HEAP_PAGE reads the page. If during compaction there is a read barrier on the page, it causes the read barrier to trigger. Notes: Merged: https://github.com/ruby/ruby/pull/5394
2022-01-05[rubygems/rubygems] Exclude bin directory for newgem template, Because it ↵Hiroshi SHIBATA
contains only development script https://github.com/rubygems/rubygems/commit/01017ee8ca
2022-01-05NEWS: Links to the tickets to remove deprecated featuresNobuyoshi Nakada
2022-01-05NEWS: Removal of `Kernel#=~` [Feature #15231]Nobuyoshi Nakada
2022-01-05Add Module#refinements and Refinement#refined_class [Feature #12737]Shugo Maeda
2022-01-05Add Module.used_refinementsShugo Maeda
2022-01-05`res.response_body_permitted?` is not definedKazuhiro NISHIYAMA
`response_body_permitted?` is a method of request.
2022-01-04Enhanced RDoc for Enumerable (#5393)Burdette Lamar
A little more about the classes that include or extend Enumerable. Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-01-05Fix `Leaked file descriptor: TestIO_Console#test_console_kw`Kazuhiro NISHIYAMA
``` Leaked file descriptor: TestIO_Console#test_console_kw: 10 : #<File:/dev/tty> ```
2022-01-05Fix failures on ruby 3.1Kazuhiro NISHIYAMA
Because https://github.com/ruby/ruby/pull/5148 merged after Ruby 3.1.0 released. https://github.com/ruby/actions/runs/4705986643?check_suite_focus=true#step:18:144 ``` 1) Method#parameters adds * rest arg for "star" argument FAILED Expected [[:rest]] == [[:rest, :*]] to be truthy but was false /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/method/parameters_spec.rb:228:in `block (3 levels) in <top (required)>' /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/method/parameters_spec.rb:4:in `<top (required)>' 2) Proc#parameters adds * rest arg for "star" argument FAILED Expected [[:req, :x], [:rest]] == [[:req, :x], [:rest, :*]] to be truthy but was false /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:85:in `block (3 levels) in <top (required)>' /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:3:in `<top (required)>' ```
2022-01-05[rubygems/rubygems] Fix race conditon on JRubyDavid Rodríguez
On JRuby, sometimes we get the following error in CI when running a realworld test that checks that `gem install rails` succeeds: ``` ERROR: While executing gem ... (NoMethodError) undefined method `ignored=' for nil:NilClass /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/stub_specification.rb:193:in `to_spec' org/jruby/RubyArray.java:2642:in `map' /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/specification.rb:758:in `_all' /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/specification.rb:956:in `each' org/jruby/RubyEnumerable.java:1710:in `any?' /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/resolver/activation_request.rb:111:in `installed?' /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/request_set.rb:173:in `block in install' ``` I'm not sure how this error is happening, but I think there's no need to copy the `@ignored` instance variable when materializing stub specifications. This instance variable is used to not print a warning about missing extensions more than once for each gem upon gem activation, but as far as I can see, it's only used by methods that work on specification stubs. Once specifications are materialized, I think it can be safely ignored. https://github.com/rubygems/rubygems/commit/301cecd5a7
2022-01-04Fix documentation for Dir.globJeremy Evans
Dir.glob("*", File::FNM_DOTMATCH) no longer includes ".." in the returned array as of Ruby 3.1. Fixes [Bug #18436]
2022-01-04Fix crash on bootup when RGENGC_CHECK_MODE=2 with GC stressPeter Zhu
We need to unshare the array loaded_features because the shared root could be old gen (while loaded_features is young) which causes a WB miss. Notes: Merged: https://github.com/ruby/ruby/pull/5392
2022-01-04Enhanced RDoc for IO (#5381)Burdette Lamar
Treats: #lineno #lineno= #readline #readlines #each_line #each_byte #each_char #each_codepoint Notes: Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
2022-01-04Don't segfault if Warning.warn is undefinedJeremy Evans
Check that there is a method entry for the method before passing it to rb_method_entry_arity. Fixes [Bug #18458] Notes: Merged: https://github.com/ruby/ruby/pull/5391
2022-01-05* 2022-01-05 [ci skip]git
2022-01-04Switch `is_pointer_to_heap` to use library bsearchMatt Valentine-House
This commit switches from a custom implemented bsearch algorithm to use the one provided by the C standard library. Because `is_pointer_to_heap` will only return true if the pointer being searched for is a valid slot starting address within the heap page body, we've extracted the bsearch call site into a more general function so we can use it elsewhere. The new function `heap_page_for_ptr` returns the heap page for any heap page pointer, regardless of whether that is at the start of a slot or in the middle of one. We then use this function as the basis of `is_pointer_to_heap`. Notes: Merged: https://github.com/ruby/ruby/pull/5187
2022-01-04[Feature #18364] Add GC.stat_heap to get stats for memory heapsPeter Zhu
GC.stat_heap will return stats for memory heaps. This is used for the Variable Width Allocation feature. Notes: Merged: https://github.com/ruby/ruby/pull/5177
2022-01-04[ruby/error_highlight] Add a test to check if it is robust against a spoofed ↵Yusuke Endoh
filename Previously, RubyVM::AST.of opened a wrong file if the iseq's file path is spoofed. ``` module Dummy binding.irb end ``` ``` $ ruby test.rb From: test.rb @ line 2 : 1: module Dummy => 2: binding.irb 3: end irb(Dummy):001:0> foo /home/mame/work/ruby/local/lib/ruby/3.1.0/error_highlight/base.rb:412:in `spot_colon2': undefined method `last_lineno' for nil:NilClass (NoMethodError) if nd_parent.last_lineno == @node.last_lineno ^^^^^^^^^^^^ ``` Found by @kateinoigakukun This issue is already fixed in the interpreter side. This change just adds a test for the case. https://github.com/ruby/error_highlight/commit/f3626b9032
2022-01-04[ruby/error_highlight] Fix the spurious TypeError.Christian Boos
When we have no backtrace locations, we can't have the highlight, so just return the message. https://github.com/ruby/error_highlight/commit/9f5c639494
2022-01-04[ruby/error_highlight] Reproduce the error seen when calling .to_s in ↵Christian Boos
embedded Ruby The test fails with the following error: Error: test_simulate_funcallv_from_embedded_ruby(ErrorHighlightTest): TypeError: wrong argument type nil (expected method) https://github.com/ruby/error_highlight/commit/52943c9cd2