summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-23gc.c: Try pausing MJIT worker during GC.verify_compaction_referencesTakashi Kokubun
for debugging http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2048247
2019-05-23enum.c (enum_tally): better example in rdocYusuke Endoh
2019-05-23Enumerable#filter_map in NEWSNobuyoshi Nakada
2019-05-23New Time methods in NEWSNobuyoshi Nakada
2019-05-23* expand tabs.git
2019-05-23Add `Time#ceil`.manga_osyo
Closes: https://github.com/ruby/ruby/pull/2133
2019-05-23Suppress paranoid warnings for external/3rd-party librariesNobuyoshi Nakada
[Feature #15665]
2019-05-23add verifier before compactKoichi Sasada
2019-05-23add comments [ci skip]Urabe, Shyouhei
Also requested by Ko1.
2019-05-23prefix ASAN related inline functions asan_Urabe, Shyouhei
requested by Ko1.
2019-05-23disable _FORTIFY_SOURCEUrabe, Shyouhei
Sanitizers and fortifications do not interface, and there is currently no plan for them to work together. See also https://github.com/google/sanitizers/issues/247
2019-05-23gc_pin() doesn't check is_markable_object().Koichi Sasada
Caller of gc_pin() should check it is a mark-able object. So gc_pin() doesn't need to check it. With this fix, we can refactoring around it.
2019-05-23Test GC.compact on MJIT againTakashi Kokubun
2019-05-23Use colorized IRB on Windows without checking `TERM`NAKAMURA Usaku
2019-05-23Adding Enumerable#filter_mapAlfonso Jiménez
[Feature #15323] Closes: https://github.com/ruby/ruby/pull/2017
2019-05-23Pretend to update all Unicode filesNobuyoshi Nakada
2019-05-22Fix mixed encoding in heredocJeremy Evans
Heredocs are parsed line-by-line, so we need to keep track of the temporary encoding of the string. Previously, a heredoc would only detect mixed encoding errors if they were on the same line, this changes things so they will be caught on different lines. Fixes [Bug #15839]
2019-05-22Skip assertion in readline test if Readline version is 4.3Jeremy Evans
Previously, the entire method was not run for Readline 4.3, probably because it was known to fail. Commit c754e979d3eeca51f1b13778f19f347df3da656e removed the check for Readline 4.3. Other than this one assertion, which also doesn't work when using Reline, the method runs correctly when using Readline 4.3. Fixes [Bug #15853].
2019-05-23skip zombies.Koichi Sasada
rb_gc() no longer invokes finalizers, so there are T_ZOMBE objects.
2019-05-23pin `maybe` pointers.Koichi Sasada
Objects pointed by "maybe" pointers because of conservative marking should be pinned down.
2019-05-23Do not kick finalizers on rb_gc().Koichi Sasada
rb_gc() kicks gc_finalize_deferred(), which invokes finalizers. This means that any Ruby program can be run this point and it may be thread switching points and so on. However, it is difficult to think it invokes any Ruby programs. For example, `GC.compact` use `rb_gc()` to implement it, howver, any Ruby program must not be run on this timing. For this reason (it is difficult to image it run any Ruby program), I removed `gc_finalize_deferred()` line in rb_gc(). This patch solves GC.compact issue. [Bug #15809] and re-enable GC.compact test.
2019-05-23update Array's length correctly.Koichi Sasada
ARRAY_ASET() does not change the length of array, so use rb_ary_push() instead of ARRAY_ASET(). It prevents updating reference on GC.compact.
2019-05-23C-v C-j means an newline insertionaycabta
2019-05-23Change behavior to confirm multiline terminationaycabta
Always checks termination if you press Enter at last line.
2019-05-22Revert "Revert CI deduplication on Wercker / Azure for debugging"Takashi Kokubun
This reverts commit 1ebe9a2f82fef5190454e68d430004282f5da172. because it did not help.
2019-05-22Revert CI deduplication on Wercker / Azure for debuggingTakashi Kokubun
CI seems to have a weired behavior now. Debugging. Revert "azure-pipelines.yml: Fix typo" This reverts commit f69d28fbca1eec8b9722cea1f989ee9554e8dad5. Revert "azure-pipelines.yml: Use simpler trigger syntax" This reverts commit 709756d89747bd36664593eda4156a7bf5ad7631. Revert "azure-pipelines.yml: Do not run CI on trunk" This reverts commit bec877b46fd4d0f621a75591b519a7e266eaa89b. Revert "appveyor.yml: Do not doubly run CI on trunk" This reverts commit d9b338a53f520b2dbb05555f18b8de8072300f40.
2019-05-23spec/ruby/core/hash/constructor_spec.rb: add "ruby_version_is" guardYusuke Endoh
follow up for d3f1c615c5
2019-05-23Fallback RUBY_FULL_REVISION if not definedNobuyoshi Nakada
2019-05-22azure-pipelines.yml: Fix typoTakashi Kokubun
2019-05-22azure-pipelines.yml: Use simpler trigger syntaxTakashi Kokubun
2019-05-22azure-pipelines.yml: Do not run CI on trunkTakashi Kokubun
2019-05-22wercker.yml: Notify master branch instead of trunkTakashi Kokubun
2019-05-23range.c (inspect_range): omit beginless "nil"Yusuke Endoh
except the special case `(nil..nil)`. ``` (1..).inspect #=> "1.." (..5).inspect #=> "..5" (nil..nil).inspect #=> "nil..nil" ``` [Bug #15745]
2019-05-22appveyor.yml: Do not doubly run CI on trunkTakashi Kokubun
2019-05-22.travis.yml: Test master branch instead of trunkTakashi Kokubun
2019-05-23hash.c (rb_hash_s_create): Reject `Hash[[nil]]`Yusuke Endoh
The behavior of `Hash[[nil]] #=> {}` was a bug until 1.9.3, but had been remained with a warning because some programs depended upon it. Now, six years passed. We can remove the compatibility behavior. [Bug #7300]
2019-05-23* 2019-05-23git
2019-05-22Make RUBY_REVISION full lengthNobuyoshi Nakada
2019-05-22Default to the current branchNobuyoshi Nakada
* tool/make-snapshot: default to the current branch if no branch but srcdir is given.
2019-05-22Fix revision nameNobuyoshi Nakada
* tool/make-snapshot (package): dump to stringize GIT revisions properly.
2019-05-22Fix revision nameNobuyoshi Nakada
* tool/make-snapshot (package): use the last revision of the whole tree as the revision name, not a single file. * tool/file2lastrev.rb: ditto. dump without unnecessary subrange and literal quotes, to stringize SVN revisions properly.
2019-05-22Fixed the method to delegateNobuyoshi Nakada
* tool/vcs.rb (VCS::GITSVN.revision_name): should delegate to the same method of SVN, not an undefined method.
2019-05-22* expand tabs.git
2019-05-22gc.c: revert b00f280d4b "Eagerly name modules and classes"Nobuyoshi Nakada
* gc.c (rb_raw_obj_info): new string objects cannot allocate to create new class path name during GC.
2019-05-22ast.c: update inspect results in the documentsNobuyoshi Nakada
2019-05-22Set namespace treeNobuyoshi Nakada
* variable.c (set_namespace_path): set path to the whole namespace tree. [Feature #15765]
2019-05-22Extract build_const_pathnameAlan Wu
* variable.c (build_const_pathname): build constant path from name as a string. [Feature #15765]
2019-05-22Eagerly name modules and classesAlan Wu
* variable.c: make the hidden ivars `classpath` and `tmp_classpath` the source of truth for module and constant names. Assign to them when modules are bind to constants. * variable.c: remove references to module name cache, as what used to be the cache is now the source of truth. Remove rb_class_path_no_cache(). * variable.c: remove the hidden ivar `classid`. This existed for the purposes of module name search, which is now replaced. Also, remove the associated rb_name_class(). * class.c: use rb_set_class_path_string to set the name of Object during boot. Must use a fstring as this runs before rb_cString is initialized and creating a normal string leads to a VALUE without a class. * spec/ruby/core/module/name_spec.rb: add a few specs to specify what happens to Module#name across multiple operations. These specs pass without other code changes in this commit. [Feature #15765]
2019-05-22Ripper: no documents of fallback methodsNobuyoshi Nakada
2019-05-22Remove unnecessary variable in LineEditoraycabta