aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* io.c: close before waitnobu2017-01-253-10/+39
| | | | | | | * io.c (io_close_fptr): notify then close, and wait for other threads before free fptr. [ruby-core:79262] [Bug #13158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] Add empty example to enum.all? and any?kazu2017-01-251-0/+2
| | | | | | [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* regcomp.c: debug function [ci skip]nobu2017-01-251-1/+1
| | | | | | * regcomp.c (print_indent_tree): make a function for debug static. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* .gdbinit: fix on empty strings [ci skip]nobu2017-01-251-1/+5
| | | | | | | * .gdbinit (output_string): get rid of "Invalid number 0 of repetitions" error on empty strings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* .gdbinit: op symbols [ci skip]nobu2017-01-251-0/+20
| | | | | | * .gdbinit (rp_id): add unhandled operator symbols. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-25svn2017-01-251-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* swithc id_table data structure.ko12017-01-251-1328/+38
| | | | | | | | | * id_table.c: swtich to "simple open addressing with quadratic probing" by Yura Sokolov. For more detail measurements, see [Feature #12180] * id_table.c: remove other algorithms to simplify the source code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval.c: copy special exceptionnobu2017-01-244-8/+39
| | | | | | | * eval.c (setup_exception): make unfrozen copy of special exception before setting up a cause. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y (parser_yylex): remove wrong warningnobu2017-01-241-4/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.svn2017-01-241-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Update Rubygems 2.6.10hsbt2017-01-2422-55/+234
| | | | | | | * https://github.com/rubygems/rubygems/commit/2ee5bf9fd3bd7649d3e244bc40107ff32070ef47 * https://github.com/rubygems/rubygems/commit/be510dd4097e65c6a256a6e173d6b724a3a96472 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix typo of URI#escape [Bug #13147]naruse2017-01-231-1/+1
| | | | | | patched by Steve Hill <sghill.dev@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Prevent GC by volatile [Bug #13150]naruse2017-01-231-2/+2
| | | | | | | | test/ruby/test_marshal.rb test_context_switch (load) and test_gc (dump) are failed on FreeBSD 10.3 and gcc7 (FreeBSD Ports Collection) 7.0.0 20170115 (experimental); RB_GC_GUARD looks not worked well. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-24svn2017-01-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/test_tmpdir.rb: Specify frozen_string_literal: true.kazu2017-01-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no TypeError at Symbolnobu2017-01-232-0/+5
| | | | | | | | * object.c (special_object_p): uninterned Symbol also should not raise a TypeError but return itself instead, as well as interned Symbols. [ruby-core:79216] [Bug #13145] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* csv.rb: fix field_size_limit checknobu2017-01-232-1/+23
| | | | | | | * lib/csv.rb (CSV#shift): the last column is an Array in extended column since r55985. [ruby-dev:49964] [Bug #13149] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: fixed doc [ci skip]nobu2017-01-231-3/+1
| | | | | | | | | * error.c (exc_message): fixed doc regarding the presence of to_str. [Fix GH-1517] Author: Marc Gauthier <marcg.gauthier@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure-ext.mk.tmpl: embed macrosnobu2017-01-232-5/+9
| | | | | | | * template/configure-ext.mk.tmpl: embed MINIRUBY and SCRIPT_ARGS to get rid of quoting problems of nmake. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix for nmakenobu2017-01-233-5/+6
| | | | | | | | | | | | | | * common.mk (EXT_MK): use double-quotes and remove SCRIPT_ARGS which contains both types of quotes. * template/configure-ext.mk.tmpl (all): use single-quotes for MAKE which is set by nmake and contains spaces in the path. do not use SCRIPT_ARGS. * template/exts.mk.tmpl (all, static): separate dependency lines, not to become a default target unintentionally. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure-ext.mk.tmpl: FORCEnobu2017-01-231-0/+1
| | | | | | | * template/configure-ext.mk.tmpl (FORCE): add missing target for BSD make. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Parallel ext configurationnobu2017-01-237-7/+148
| | | | | | | | | | * ext/configure-ext.mk: configure each directories underneath ext in parallel. * template/exts.mk.tmpl: then collect the results. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2017-01-230-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* improve C0 coverage of insns.def from 65.9% to 96.1%shyouhei2017-01-232-7/+399
| | | | | | | | | | | | | | | | | While I was developing my private topic branch I found that the VM itself is not tested very much in `make test` tests. Of course `make test-all` covers vast majority of the VM but running that task is not an immediately possible thing when we are touching the VM. In order to boost development in a rapid cycle I decided to add some tests to the bootstraptest. Here it is. * test_insns.rb: new test that covers insns.def. * runner.rb (#assert_equal): pass extra options to the target so that we can test frozen_string_literal: true situation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extinit.c.tmpl: drop after dotnobu2017-01-232-6/+7
| | | | | | | * template/extinit.c.tmpl: drop rest from the first dot in the base name of a feature is ignored since r30464. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-23svn2017-01-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extmk.rb: EXTINITS to sub makenobu2017-01-231-0/+1
| | | | | | | | * ext/extmk.rb: pass EXTINITS to sub make. if the template for extinit.c is modified after extinit.c got compiled, extinit.c will be re-generated together with ruby. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* template/extinit.c.tmplnobu2017-01-223-21/+24
| | | | | | * template/extinit.c.tmpl: separate from ext/extmk.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.sub: refine distclean-extnobu2017-01-221-1/+2
| | | | | | | | * win32/Makefile.sub (distclean-ext, realclean-ext): remove extinit.c and suppress error message when failed to remove ext directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS for SecureRandom's random source [ci skip]shyouhei2017-01-221-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS for SipHash13 [ci skip]shyouhei2017-01-221-0/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-22svn2017-01-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Hash#fetch: fix grammar in documentation.kazu2017-01-221-3/+3
| | | | | | | [Fix GH-1515][ci skip] Author: Alyssa Ross <hi+services.github@alyssa.is> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/tempfile.rb: Specify frozen_string_literal: true.kazu2017-01-212-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-21svn2017-01-211-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.in: clean ruby-runner [ci skip]nobu2017-01-211-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove deprecated rbconfig/datadirkazu2017-01-203-17/+0
| | | | | | | | This is deleted at https://github.com/rubygems/rubygems/commit/0e3c2c1f04182990c4c7a0aa53435ad8427342fd in upstream. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extmk.rb: ignore generated sourcesnobu2017-01-201-1/+1
| | | | | | | * ext/extmk.rb (extract_makefile): ignore generated source files not to reconfigure when in-place build. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* SecureRandom should try /dev/urandom first [Bug #9569]shyouhei2017-01-203-19/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | * random.c (InitVM_Random): rename Random.raw_seed to Random.urandom. A quick search seems there are no practical use of this method than securerandom.rb so I think it's OK to rename but if there are users of it, this hunk is subject to revert. * test/ruby/test_rand.rb (TestRand#test_urandom): test for it. * lib/securerandom.rb (SecureRandom.gen_random): Prefer OS- provided CSPRNG if available. Otherwise falls back to OpenSSL. Current preference is: 1. CSPRNG routine that the OS has; one of - getrandom(2), - arc4random(3), or - CryptGenRandom() 2. /dev/urandom device 3. OpenSSL's RAND_bytes(3) If none of above random number generators are available, you cannot use this module. An exception is raised that case. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Keep -jN optionnobu2017-01-202-4/+4
| | | | | | | * {cygwin,template}/GNUmakefile.in (MFLAGS, MAKEFLAGS): keep -jN option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* switch SipHash from SipHash24 to SipHash13 variantshyouhei2017-01-203-10/+8
| | | | | | | | | | | | | | | | | | | SipHash13 is secure enough to be used in hash-tables, and SipHash's author confirms that. Rust already considered switch to SipHash13: https://github.com/rust-lang/rust/issues/29754#issue-116174313 Jean-Philippe Aumasson confirmation: https://github.com/rust-lang/rust/issues/29754#issuecomment-156073946 Merged pull request: https://github.com/rust-lang/rust/pull/33940 From: Sokolov Yura aka funny_falcon <funny.falcon@gmail.com> Date: Thu, 8 Dec 2016 20:31:29 +0300 Signed-off-by: Urabe, Shyouhei <shyouhei@ruby-lang.org> Fixes: [Feature #13017] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: optimization of defined? in conditionnobu2017-01-201-20/+34
| | | | | | | | * compile.c (compile_branch_condition): trivial optimization of defined? expression in a branch condition, where a string is not needed, but just a boolean. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: improve Array#samplenobu2017-01-201-0/+38
| | | | | | | | * array.c (rb_ary_sample): improve performance when many samples from a large array. based on the patch by tomoya ishida <tomoyapenguin AT gmail.com> in [ruby-dev:49956]. [Bug #13136] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* benchmarks for Bug#13136nobu2017-01-207-0/+14
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-01-20svn2017-01-201-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: print default RSnobu2017-01-201-1/+4
| | | | | | | * error.c (rb_warn_m): print the default RS instead of an empty string with a newline. [Feature #12944] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: rescue/else/ensure in do-endnobu2017-01-193-1/+70
| | | | | | | * parse.y (do_body): allow rescue/else/ensure inside do/end blocks. [Feature #12906] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* More description about the protected attribute of a methodnaruse2017-01-191-0/+11
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: rindex(//) should set $~.shugo2017-01-192-4/+5
| | | | | | This seems a bug introduced by r520 (1.4.0). [ruby-core:79110] [Bug #13135] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: chomp by -lnobu2017-01-192-4/+5
| | | | | | | * parse.y (rb_parser_while_loop): should chomp but not chop by -l option. [ruby-core:78099] [Bug #12926] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e