| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
This reverts commit ee7cc6ac35cfb056b3946b1dcd6d4d5a140ccacf.
I'm not sure I agree with the spec, but I just tweaked it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the following methods to return Array instances instead
of subclass instances:
* Array#drop
* Array#drop_while
* Array#flatten
* Array#slice!
* Array#slice/#[]
* Array#take
* Array#take_while
* Array#uniq
* Array#*
Fixes [Bug #6087]
|
| |
|
| |
|
|
|
|
| |
https://github.com/ruby/ruby/runs/1337845174
|
| |
|
|
|
|
|
| |
[Feature #17260] One-line pattern matching using tASSOC
R-assignment is rejected instead.
|
|
|
|
|
|
| |
uplevel: n)
* Fixes [Bug #17259]
|
|
|
|
| |
defined in Ruby
|
| |
|
|
|
|
| |
* The spec means to use an actual system library function, not a wrapper.
|
| |
|
|
|
|
|
| |
* cast scalar value instead of function
* use `rb_pid_t` for the portability
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* numeric.c: prohibit zero step in Numeric#step
* range.c: prohibit zero step in Range#step
* Fix ruby-spec
[Feature #15573]
|
| |
|
| |
|
| |
|
|
|
|
| |
on Android
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using Fiber#transfer with Fiber#resume for a same Fiber is
limited (once Fiber#transfer is called for a fiber, the fiber
can not be resumed more). This restriction was introduced to
protect the resume/yield chain, but we realized that it is too much
to protect the chain. Instead of the current restriction, we
introduce some other protections.
(1) can not transfer to the resuming fiber.
(2) can not transfer to the yielding fiber.
(3) can not resume transferred fiber.
(4) can not yield from not-resumed fiber.
[Bug #17221]
Also at the end of a transferred fiber, it had continued on root fiber.
However, if the root fiber resumed a fiber (and that fiber can resumed
another fiber), this behavior also breaks the resume/yield chain.
So at the end of a transferred fiber, switch to the edge of resume
chain from root fiber.
For example, root fiber resumed f1 and f1 resumed f2, transferred to
f3 and f3 terminated, then continue from the fiber f2 (it was continued
from root fiber without this patch).
|
|
|
|
| |
Attempting to create a hard link raises EACCES
|
|
|
|
|
|
| |
As [Bug #16662] lchmod available in linux since glibc 2.31.9000, a
system call may exist or not exist depending on the version. It
is not a spec nor responsibility of Ruby.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Android, STDERR seems to be open even its invoker closes it.
http://rubyci.s3.amazonaws.com/android29-x86_64/ruby-master/log/20201001T014315Z.fail.html.gz
```
1)
Process.spawn closes STDERR in the child if :err => :close FAILED
Expected (59840): "out\nrescued\n"
but got: "out\n"
```
|
|
|
|
| |
Patch adapted from Pietro Monteiro [Fixes bug#8382]
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the following C-API functions that can be used to emit
warnings with categories included:
```c
void rb_category_warn(const char *, const char*, ...)
void rb_category_warning(const char*, const char*, ...)
```
Internally in error.c, there is an rb_warn_category function
that will call Warning.warn with the string and the category
keyword if it doesn't have an arity of 1, and will call
Warning.warn with just the string if it has an arity of 1.
This refactors the rb_warn_deprecated{,_to_remove} functions
to use rb_warn_category.
This makes Kernel#warn accept a category keyword and pass it
to Warning.warn, so that Ruby methods can more easily emit
warnings with categories. rb_warn_category makes sure that
the passed category is a already defined category symbol
before calling Warning.warn.
The only currently defined warning category is :deprecated,
since that is what is already used. More categories can be
added in later commits.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In an executable script, the shebang line should be the first line (the
file needs to start with the bytes 0x23 0x21). Putting a comment above
it will break the script.
(Regression test included per @deivid-rodriguez)
https://github.com/rubygems/rubygems/commit/962e669feb
|
|
|
|
|
| |
Matz want to try to freeze all Range objects.
[Feature #15504]
|
|
|
|
|
| |
Now taint flag is obsolete and it is used fro shareaable flag.
So we should not check this flag.
|
|
|
|
| |
And `-w` option turns it on.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
refinement"
This reverts commit eeef16e190cdabc2ba474622720f8e3df7bac43b.
This also reverts the spec change.
Preventing the SystemStackError would be nice, but there is valid
code that the fix breaks, and it is probably more common than cases
that cause the SystemStackError.
Fixes [Bug #17182]
|
| |
|
| |
|
| |
|
|
|
|
| |
s/overriden/overridden/
|
| |
|
|
|
|
|
| |
Also improve specs and documentation for finalizers and more clearly
recommend a safe code pattern to use them.
|
| |
|
|
|
|
|
| |
* Remove freezestring instruction since this was the only usage for it.
* [Feature #17104]
|
| |
|