Age | Commit message (Collapse) | Author |
|
Previously it made object references without using write barriers,
creating GC inconsistencies.
See: http://ci.rvm.jp/results/trunk-gc-asserts@phosphorus-docker/3925529
Notes:
Merged: https://github.com/ruby/ruby/pull/5851
|
|
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
This covers the first few sections of the class doc for Array.
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
Method references is not only able to be marked up as code, also
reflects `--show-hash` option.
The bug that prevented the old rdoc from correctly parsing these
methods was fixed last month.
|
|
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
* Repair format and links in What's Here for Comparable and Array
* Repair format for What's Here in enum.c
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
This commit implements arrays on Variable Width Allocation. This allows
longer arrays to be embedded (i.e. contents directly follow the object
header) which improves performance through better cache locality.
Notes:
Merged: https://github.com/ruby/ruby/pull/5660
|
|
The refcnt of a shared root array should always be non-negative.
|
|
All callers of rb_ary_decrement_share guarantee that
shared_root is not 0.
|
|
rb_ary_reset could leave the array in a bad state since it frees memory
but does not unset any flags. This can cause a crash on GC stress. This
commit changes rb_ary_reset to set the array as an empty embedded array.
|
|
rb_ary_reset will free heap allocated arrays and unshare shared arrays.
|
|
In both cases in the if statement, we free heap allocated arrays and
unshare shared arrays.
|
|
rb_ary_unshare will perform FL_UNSET_SHARED and
rb_ary_decrement_share.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5621
|
|
Never returns self.
Notes:
Merged: https://github.com/ruby/ruby/pull/5605
Merged-By: nobu <[email protected]>
|
|
rb_ary_shift is just a special case of rb_ary_behead where we behead
only 1 element.
Notes:
Merged: https://github.com/ruby/ruby/pull/5590
|
|
RARRAY_SHARED_ROOT_FLAG is defined as FL_USER5, but we should use
RARRAY_SHARED_ROOT_FLAG instead of depending on that they're equal.
Notes:
Merged: https://github.com/ruby/ruby/pull/5547
|
|
|
|
Mostly suppressing links to itself.
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
|
|
|
|
I used this regex:
(?<=\[)#(?:class|module)-([A-Za-z]+)-label-([A-Za-z0-9\-\+]+)
And performed a global find & replace for this:
rdoc-ref:$1@$2
Notes:
Merged: https://github.com/ruby/ruby/pull/5530
|
|
I used this regex:
([A-Za-z]+)\.html#(?:class|module)-[A-Za-z]+-label-([A-Za-z0-9\-\+]+)
And performed a global find & replace for this:
rdoc-ref:$1@$2
Notes:
Merged: https://github.com/ruby/ruby/pull/5530
|
|
* Adding links to literals and Kernel
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5112
|
|
This commit removes usages of rb_gc_force_recycle since it is a burden
to maintain and makes changes to the GC difficult.
Notes:
Merged: https://github.com/ruby/ruby/pull/4363
|
|
Notes:
Merged-By: k0kubun <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4925
Merged-By: nobu <[email protected]>
|
|
* As the "doc/" prefix is specified by the `--page-dir` option,
remove from the rdoc references.
* Refer to the original .rdoc instead of the converted .html.
|
|
This PR creates doc/bsearch.rdoc to provide common documentation for bsearch in Array and Range.
Notes:
Merged-By: BurdetteLamar <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4805
|
|
Must not be a bad idea to improve documents. [ci skip]
Notes:
Merged: https://github.com/ruby/ruby/pull/4815
|
|
This prevents early collection of the array. The GC doesn't see the
array on the stack when Ruby is compiled with optimizations enabled
[ruby-core:105099] [Bug #18140]
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4463
|
|
Commit 4f24255 introduced a bug which allows a length to be passed to
rb_ary_new4 which is too large, resulting in invalid memory access.
For example:
(1..1000).to_a.slice!(-2, 1000)
Notes:
Merged: https://github.com/ruby/ruby/pull/4787
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4695
Merged-By: nobu <[email protected]>
|
|
Because the key of redefine table is `def`, `def` should be
unique for each optimized method (`alias` is not allowed).
Notes:
Merged: https://github.com/ruby/ruby/pull/4493
|
|
|
|
* --braces-after-func-def-line
* --dont-cuddle-else
* --procnames-start-lines
* --space-after-for
* --space-after-if
* --space-after-while
|
|
If freezing an array inside sort!, previously the array could be
modified after the freeze. This checks whether the receiver is
frozen after every yield and potential call to #> or #<,
preventing modifications if the receiver is frozen inside the
block or by the #> or #< call.
Fixes [Bug #17739]
Notes:
Merged: https://github.com/ruby/ruby/pull/4335
Merged-By: jeremyevans <[email protected]>
|
|
`[0, 1, 2, 3].max(6)` actually returns `[3, 2, 1, 0]`, but the doc said
it returns `[3, 2, 1]`.
Notes:
Merged: https://github.com/ruby/ruby/pull/4475
|
|
Reallocating to a smaller size in the transient heap may result in no
change in the actual capacity but the capacity of the array is still
updated to the smaller value.
This commit changes `ary_heap_realloc` to return the new capacity which
can be used by the caller to correctly update the capacity.
Notes:
Merged: https://github.com/ruby/ruby/pull/4448
|
|
[Bug #17814]
Notes:
Merged-By: mame <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/1972
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4332
|
|
* Ensure the receiver is modifiable before shinking [Bug #17736]
* Assert the receivers are not modified
Notes:
Merged: https://github.com/ruby/ruby/pull/4296
Merged-By: nobu <[email protected]>
|
|
|
|
|
|
This change make Array#- return a copy of the receiver when
the other array is empty.
|