summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-05-01zlib.c: no buf_filled in zstreamnobu
* ext/zlib/zlib.c (zstream): manage capacity and size of `buf` instead of size and separated member `buf_filled`. reported by Christian Jalio (jalio) at https://hackerone.com/reports/211958 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-01zlib.c: zstream_buffer_ungetbytenobu
* ext/zlib/zlib.c (zstream_buffer_ungetbyte): simplify by using zstream_buffer_ungets(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-01zlib.c: zstream_expand_buffer_non_streamnobu
* ext/zlib/zlib.c (zstream_expand_buffer_non_stream): rename from zstream_expand_buffer_without_gvl() and replace duplicate code in zstream_expand_buffer(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-01rational.c: canonicalization casenobu
* rational.c (float_numerator, float_denominator): fix for canonicalization case where `Float#to_r` could return an Integer not a Rational. although mathn.rb has been removed in the trunk, fix for the backport purpose. [ruby-core:80942] [Bug #13528] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30* 2017-05-01svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30setup.mak have to handle `GIT` and `HAVE_GIT`usa
* win32/setup.mak: seems to be forgotten to commit at r58295. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30Typousa
* tool/generate-backport-changelog.rb: fixed a typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30git-refresh: fix for Solarisnobu
* tool/git-refresh: expand for each words. [ruby-dev:50102] [Bug #13522] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30thread_sync.c: document SizedQueue#clear correctly [ci skip]normal
* thread_sync.c (rb_szqueue_clear): fix class name in RDoc git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30* properties.svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30new benchmark for SizedQueuenormal
The performance of SizedQueue is a bit more complex than regular Queue, so it deserves a separate benchmark. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30* 2017-04-30svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-30git-refresh: fix for Solarisnobu
* tool/git-refresh: unset variable `branch` if it is null, to get rid of substitutions which are not supported old Solaris. [ruby-dev:50102] [Bug #13522] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-29load.c: remove a redundant rb_str_freeze callnormal
rb_file_expand_path_fast already performs the buffer shrinking rb_str_freeze does (via expand_path macro in file.c); the result of rb_fstring is always frozen, and that rb_fstring call is the last use of `expanded_path` in its scope. load.c (rb_construct_expanded_load_path): remove rb_str_freeze git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-29proc.c: recursion loopnobu
* proc.c (rb_block_min_max_arity, rb_method_entry_min_max_arity): turn loop by recursion into goto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-29* 2017-04-29svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-29node.h: sign-extendnobu
* node.h (nd_line): should sign-extend. shifting `VALUE` extends with zero bits if `sizeof(VALUE)` equals to `sizeof(int)`. the zero bits are truncated if `sizeof(VALUE)` is bigger enough. [ruby-core:80920] [Bug #13523] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28Bump version to gdbm-2.0.0.beta1hsbt
* Merge from ruby/gdbm. * gdbm gem is already registered in rubygems.org. I skip shipped version of 0.x and 1.x. Therefore We need to use 2.x. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28sprintf.c: remove unused variablenobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28parse.y: set_line_body is not used in rippernobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28parse.y: fix line in rescuenobu
* parse.y (set_line_body, primary): fix line number of bodystmt as the beginning of the block. [ruby-core:79388] [Bug #13181] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28sprintf.c: ruby_ultoanobu
* sprintf.c (ruby_ultoa): prefixed to get rid of conflict with a MSVC library function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28sprintf.c: format by utility functionsnobu
* sprintf.c (rb_str_format, fmt_setup): format by utility functions in vsnprintf.c instead of `snprintf`. * sprintf.c (rb_str_format): format and append by `rb_str_catf` instead of formatting by `snprintf` and then copy. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28* 2017-04-28svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-28sprintf.c: fix one-off bugnobu
* sprintf.c (rb_str_format): `CHECK` just before `FILL_`, but after another `PUSH`. fix one-off bug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-27fix ripper prereqnobu
* common.mk (ext/ripper/ripper.c): fix VPATH when out-of-place build, and id.h was created in the build directory too. it has to include the build directory, i.e., the current directory before `cd`. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-27Send the backtrace of the circular require warning as a single String to ↵eregon
Warning.warn * load.c: send as a single string. * error.c: expose the string formatted by rb_warning as rb_warning_string(). * test/ruby/test_exception.rb: update tests. [ruby-core:80850] [Bug #13505] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-27refactor newhash (revision 58463 another try) [fix GH-1600]shyouhei
* st.c (rb_hash_bulk_insert): new API to bulk insert entries into a hash. Given arguments are first inserted into the table at once, then reindexed. This is faster than inserting things using rb_hash_aset() one by one. This arrangement (rb_ prefixed function placed in st.c) is unavoidable because it both touches table internal and write barrier at once. * internal.h: delcare the new function. * hash.c (rb_hash_s_create): use the new function. * vm.c (core_hash_merge): ditto. * insns.def (newhash): ditto. * test/ruby/test_hash.rb: more coverage on hash creation. * test/ruby/test_literal.rb: ditto. ----------------------------------------------------------- benchmark results: minimum results in each 7 measurements. Execution time (sec) name before after loop_whileloop2 0.136 0.137 vm2_bighash* 1.249 0.623 Speedup ratio: compare with the result of `before' (greater is better) name after loop_whileloop2 0.996 vm2_bighash* 2.004 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-27load.c: make fstrings from C strings soonernormal
The underlying string objects will become fstrings anyways, so create the fstring directly from the C string to reduce intermediate garbage. * load.c (rb_provide, rb_provide): create fstring git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-26error.c: send as a single stringnobu
* error.c (rb_warn_m): send the arguments as a single string concatenated with a newline, so it can be filtered easily. [ruby-core:80875] [Feature #12944] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-26* 2017-04-27svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-26error.c: improve docsstomar
* error.c: [DOC] fix rdoc formatting (make sure `Warning.warn' is displayed verbatim; rdoc would render it as a link named `#warn'), use capitalized "Ruby", fix a typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-26error.c: splat warn argumentsnobu
* error.c (rb_warn_m): print array arguments with splatting. it is often used with `caller`. [ruby-core:80849] [Feature #12944] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-26range.c: remove no longer used variablenobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25thread_sync.c (rb_mutex_lock): spelling fix [ci skip]normal
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Use require to load rbconfig in default.mspeceregon
* Otherwise it would be loaded twice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25suppress_warningnaruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25add timeout.ko1
* test/ruby/test_trace.rb (test_trace_stackoverflow): sometimes this test was stopped forever and killed by test process forcibly. However, this test only checks if this code cause some critical failure such as SEGV. So that we can add timeout for this code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25* 2017-04-26svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25revert r58478 and r58479 because they do not support not in-place buildko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Use require_relative to load rbconfig in default.mspeceregon
* Otherwise it would load it twice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25No need to pass the config file to mspec as mspec finds it itselferegon
* It would also #load (because .mspec cannot be #require'd) it twice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Remove useless else which produced a warningeregon
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25no longer rescue exceptions of #<=> when initializing a Rangeeregon
* range.c (range_init): no longer hide the user exception with a ArgumentError, just let the user exception go through. * test/ruby/test_range.rb (test_new): add tests. [Feature #7688] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25no longer rescue exceptions of #coerce in Integer#steperegon
* numeric.c (num_step_negative_p): no more error hiding. * test/ruby/test_float.rb, test/ruby/test_numeric.rb: follow the change. [Feature #7688] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25no longer rescue exceptions in numeric comparison operationseregon
* numeric.c (do_coerce): no more error hiding. * test/ruby/test_numeric.rb: follow the change. [Feature #7688] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Import gemspechsbt
Import gemspec and test file from ruby/webrick. * webrick.gemspec: Update files and dependency for standalone gem. * test/webrick/utils.rb: Added explicitly loading of EnvUtil for test suite without ruby core test suite. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Document the Warning module and warn methoderegon
* error.c (Warning): add documentation. [Feature #13504] Author: Jeremy Evans <code@jeremyevans.net> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25load.c: backtrace of circular requirenobu
* load.c (load_lock): print backtrace of circular require via `Warning.warn` [ruby-core:80850] [Bug #13505] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-25Import gemspec and test file changes from ruby/gdbm.hsbt
* gdbm.gemspec: Update basic configuraiton for standalone gdbm gem. * test/gdbm/test_gdbm.rb: In standalone environment, It needs to explicit loading of EnvUtil module for test suite. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e