Age | Commit message (Collapse) | Author |
|
Remove the bad example that can lead to misunderstanding as if this
precision is defined in Ruby.
|
|
|
|
|
|
It failed with `NameError` because `Html3` is defined in the file that
`CGI::HtmlExtension` autoloads.
|
|
Previously, Kernel#lambda returned a non-lambda proc when given a
non-literal block and issued a warning under the `:deprecated` category.
With this change, Kernel#lambda will always return a lambda proc, if it
returns without raising.
Due to interactions with block passing optimizations, we previously had
two separate code paths for detecting whether Kernel#lambda got a
literal block. This change allows us to remove one path, the hack done
with rb_control_frame_t::block_code introduced in 85a337f for supporting
situations where Kernel#lambda returned a non-lambda proc.
[Feature #19777]
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
Notes:
Merged: https://github.com/ruby/ruby/pull/8405
|
|
|
|
[Bug #19012]
man recvmsg(2) states:
> Return Value
> These calls return the number of bytes received, or -1 if an error occurred.
> The return value will be 0 when the peer has performed an orderly shutdown.
Not too sure how one is supposed to make the difference between a packet of
size 0 and a closed connection.
Notes:
Merged: https://github.com/ruby/ruby/pull/6407
|
|
- String#start_with?
- String#delete_prefix
- String#delete_prefix!
Notes:
Merged: https://github.com/ruby/ruby/pull/8296
|
|
* Skip RBS test.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
https://github.com/ruby/ruby/actions/runs/5956398507/job/16157091112
This has been extremely flaky on macOS GitHub Actions.
Benoit suggested to quarantine it if it's too problematic (it is) and
there's no reasonable fix in a short time (it already took too long).
So this commit follows the suggestion.
We should remove revert this once rb_cloexec_open() is fixed.
|
|
Deprecate Kernel#open and IO support for subprocess creation and
forking. This deprecates subprocess creation and forking in
- Kernel#open
- URI.open
- IO.binread
- IO.foreach
- IO.readlines
- IO.read
- IO.write
This behavior is slated to be removed in Ruby 4.0
[Feature #19630]
Notes:
Merged: https://github.com/ruby/ruby/pull/7915
|
|
|
|
* Follow-up of dbbc3583ba432c279f07b1fa0afb0a8a9ba50c91 which broke this.
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8127
|
|
{Nil,True,False}Class#singleton_methods always returns [] indicating
that there are no singleton methods defined, so #singleton_method
should be consistent with that.
Fixes [Bug #11064]
Notes:
Merged: https://github.com/ruby/ruby/pull/7973
|
|
[Feature #19755]
Before (in /tmp/test.rb):
```ruby
Object.class_eval("p __FILE__") # => "(eval)"
```
After:
```ruby
Object.class_eval("p __FILE__") # => "(eval at /tmp/test.rb:1)"
```
This makes it much easier to track down generated code in case
the author forgot to provide a filename argument.
Notes:
Merged: https://github.com/ruby/ruby/pull/8070
|
|
|
|
[Feature #18885]
For now, the optimizations performed are:
- Run a major GC
- Compact the heap
- Promote all surviving objects to oldgen
Other optimizations may follow.
Notes:
Merged: https://github.com/ruby/ruby/pull/7662
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8080
Merged-By: nobu <nobu@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8035
|
|
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
Notes:
Merged: https://github.com/ruby/ruby/pull/8035
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8035
|
|
|
|
|
|
Introduce `Module#set_temporary_name` for setting identifiers for otherwise
anonymous modules/classes.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
This retries the compatible parts of the previously reverted PR so we can continue to update related code without breaking backwards compatibility.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
This reverts commit 18e55fc1e1ec20e8f3166e3059e76c885fc9f8f2.
fix [Bug #19704]
https://bugs.ruby-lang.org/issues/19704
This breaks compatibility for extension libraries. Such changes
need a discussion.
|
|
* Add rb_io_path and rb_io_open_descriptor.
* Use rb_io_open_descriptor to create PTY objects
* Rename FMODE_PREP -> FMODE_EXTERNAL and expose it
FMODE_PREP I believe refers to the concept of a "pre-prepared" file, but
FMODE_EXTERNAL is clearer about what the file descriptor represents and
aligns with language in the IO::Buffer module.
* Ensure that rb_io_open_descriptor closes the FD if it fails
If FMODE_EXTERNAL is not set, then it's guaranteed that Ruby will be
responsible for closing your file, eventually, if you pass it to
rb_io_open_descriptor, even if it raises an exception.
* Rename IS_EXTERNAL_FD -> RUBY_IO_EXTERNAL_P
* Expose `rb_io_closed_p`.
* Add `rb_io_mode` to get IO mode.
---------
Co-authored-by: KJ Tsanaktsidis <ktsanaktsidis@zendesk.com>
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
The error messages were slightly different due, which causes different
behaviour on 32-bit and 64-bit systems.
Notes:
Merged: https://github.com/ruby/ruby/pull/7872
|
|
|
|
generic RUBY_UBF_IO" on Windows. (#7848)
* Enable borked spec.
* Ensure win32 wrappers are visible and used.
* Reorganise `read`/`write`/`pipe` in `thread_spec.c`.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
[Feature #19236]
In Ruby 3.3, `Hash.new` shall print a deprecation warning if keyword arguments
are passed instead of treating them as an implicit positional Hash.
This will allow to safely introduce a `capacity` keyword argument in 3.4
Co-authored-by: Jean Boussier <byroot@ruby-lang.org>
Notes:
Merged-By: byroot <byroot@ruby-lang.org>
|
|
fixed typo for spec description
Notes:
Merged: https://github.com/ruby/ruby/pull/7832
Merged-By: nobu <nobu@ruby-lang.org>
|
|
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/7709
|
|
When `freeze: true` argument is passed.
[Bug #19427]
Notes:
Merged: https://github.com/ruby/ruby/pull/7764
|
|
|
|
|
|
|
|
Previously, named memberless Structs were allowed, but anonymous
memberless Structs were not.
Fixes [Bug #19416]
Notes:
Merged: https://github.com/ruby/ruby/pull/7587
|
|
|
|
`GETRUSAGE_BASED_CLOCK_PROCESS_CPUTIME_ID` clock uses `getrusage`
always if available as the name states. That is if it is implemented
`getrusage` is available, regardless microseconds in its results.
Notes:
Merged: https://github.com/ruby/ruby/pull/7739
|
|
Prior to commit 5806c54447439f2ba22892e4045e78dd80f96f0c, it was "at
least one result with precision beyond milliseconds (with none-zero
microseconds) should exist"; after this commit, "at least one result
should have zero microseconds". This chance is lower than the
previous condition.
Notes:
Merged: https://github.com/ruby/ruby/pull/7739
|
|
Eventually the path directly under "/tmp" is complained by `rm_r` in
spec/mspec/lib/mspec/helpers/fs.rb.
Notes:
Merged: https://github.com/ruby/ruby/pull/7749
|