aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* error.c: KeyError docs [ci skip]nobu2017-12-191-0/+14
| | | | | | | * error.c (key_err_receiver, key_err_key): [DOC] documents of KeyError methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vcs: --add-author-fromnobu2017-12-191-1/+11
| | | | | | | * tool/vcs.rb (VCS::GIT#commit): no --add-author-from option if author equals committer. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Update version of strscan to 1.0.0.hsbt2017-12-191-4/+4
| | | | | | | | | | | | | But we couldn't ship strscan (and stringio) gem. Because rubygems.org still masked them. https://github.com/rubygems/rubygems.org/pull/1696 I'm going to ship them after it deployed. From: SHIBATA Hiroshi <hsbt@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove digest.gemspec for default gems.hsbt2017-12-191-34/+0
| | | | | | | | | It needs to support header file installation and uninstallation. But current RubyGems didn't support it feature yet. From: SHIBATA Hiroshi <hsbt@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: pop splat resultnobu2017-12-191-7/+11
| | | | | | | | | | * compile.c (compile_array): pop splat result without creating a new hash if the whole hash is popped. [ruby-core:84340] [Bug #14201] From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Improve Array#- efficiency [Fixes GH-1756]nobu2017-12-191-1/+1
| | | | | | | | | When doing the difference of a small array with a big one it is not efficient in both time and memory to convert the second one to a hash. From: Ana María Martínez Gómez <ammartinez@suse.de> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: side effect in splatnobu2017-12-192-2/+11
| | | | | | | | | | * compile.c (compile_array): splat which may have side effects should be compiled even if the result will be popped. [ruby-core:84340] [Bug #14201] From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use syswrite to avoid potential buffering in IO#select speceregon2017-12-181-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Support C89 if possiblengoto2017-12-182-1/+26
| | | | | | | | | | | | | * addr2line.c: Because stdbool.h is a C99 feature, compile error occurs with some old compilers without specifying C99 options. Fix compile error with Oracle Solaris Studio 12.4 on Solaris 10. [Bug #14200] [ruby-dev:50366] * missing/stdbool.h: Alternative of stdbool.h for C89 compilers. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-19svn2017-12-181-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval_error.c: Fix compile error on Solaris 10ngoto2017-12-181-4/+4
| | | | | | | | | * eval_error.c (write_warn, write_warn2, write_warn_str): Fix compile error "operands have incompatible types" with Oracle Solaris Studio 12.4 on Solaris 10. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* suppress warning: 'const' attribute on function returning 'void'naruse2017-12-183-5/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick 1.4.1 releasenormal2017-12-182-3/+3
| | | | | | | | * lib/webrick/version.rb: bump version * lib/webrick/webrick.gemspec: support Ruby 2.3+ [Bug #14189] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_io.rb: EINVAL on Windowsnobu2017-12-181-2/+2
| | | | | | | | | * test/ruby/test_io.rb (test_read_command): unusable character causes Errno::EINVAL on Windows. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: opening external commandnobu2017-12-182-13/+8
| | | | | | | | | | * io.c (rb_io_open_generic): try to open the named file as usual, if klass is not IO nor File, so that Errno::ENOENT will be raised probably. calling on File will be same in the future. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: open generic in binreadnobu2017-12-182-1/+7
| | | | | | | | * io.c (rb_io_s_binread): fix r61317, unintentional change. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* check EOPNOTSUPP.ko12017-12-181-0/+2
| | | | | | | | * test/ruby/test_file.rb (test_open_tempfile_path): skip EOPNOTSUPP (observed on Ubuntu 16 on Docker). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: opening external commandnobu2017-12-182-15/+35
| | | | | | | | | | * io.c (rb_io_open_generic): when external command will be invoked as other than IO singleton method, probably unintentionally, warn if it is File or raise ArgumentError. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: define flush methodnobu2017-12-181-0/+1
| | | | | | | | | * test/lib/envutil.rb (verbose_warning): flush is called on STDOUT and STDERR sometimes. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ruby/test_io.rb: test for r61314nobu2017-12-181-0/+4
| | | | | | From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: open_key_args by rb_io_opennobu2017-12-181-29/+9
| | | | | | | | | * io.c (open_key_args): open by rb_io_open always also when open_args: option is given. From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c (finish_iseq_build): fix coverage leakage [Bug #14191]mame2017-12-183-11/+52
| | | | | | | | | | Before this change, coverage.so had failed to measure some multiple-line code fragments. This is because removing trace instructions (#14104) changed TracePoint's lineno (new lineno), and coverage counter array was based on old lineno. This change initializes coverage counter array based on new lineno. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vcs.rb: --add-author-from optionnobu2017-12-181-1/+1
| | | | | | From: Nobuyoshi Nakada <nobu@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* st.c: no C99 commentnobu2017-12-181-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Requiring pp is not required now [ci skip]nobu2017-12-181-4/+0
| | | | | | | | - Followup of https://bugs.ruby-lang.org/issues/14123 From: Prathamesh Sonpatki <csonpatki@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Improve performance of creating Hash objectwatson19782017-12-182-6/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When generate Hash object, the heap area of st_table will be always allocated in internally and seems it take a time. To improve performance of creating Hash object, this patch will reduce count of allocating heap areas for st_table by reuse them. Performance of creating Hash literal -> 1.53 times faster. [Fix GH-1766] [ruby-core:84008] [Feature #14146] ### Environment * OS : macOS 10.13.1 * CPU : 1.4 GHz Intel Core i7 * Compiler : Apple LLVM version 9.0.0 (clang-900.0.39) ### Before $ ./miniruby -v -I. -I../benchmark-ips/lib ~/tmp/bench/literal.rb ruby 2.5.0dev (2017-11-28 hash 60926) [x86_64-darwin17] Warming up -------------------------------------- Hash literal 51.544k i/100ms Calculating ------------------------------------- Hash literal 869.132k (± 1.1%) i/s - 4.381M in 5.041574s ### After $ ./miniruby -v -I. -I../benchmark-ips/lib ~/tmp/bench/literal.rb ruby 2.5.0dev (2017-11-28 hash 60926) [x86_64-darwin17] Warming up -------------------------------------- Hash literal 63.068k i/100ms Calculating ------------------------------------- Hash literal 1.328M (± 2.3%) i/s - 6.685M in 5.037861s ### Test code require 'benchmark/ips' Benchmark.ips do |x| x.report "Hash literal" do |loop| count = 0 while count < loop hash = {foo: 12, bar: 34, baz: 56} count += 1 end end end git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* `BASERUBY` may be not available when building from tarballusa2017-12-171-1/+1
| | | | | | | | * common.mk ($(REVISION_H)): revert a part of r61055 because this obstructs building ruby from tarball in clean (no ruby) environment. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2017-12-170-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-18svn2017-12-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Integer#{any|all|no}_bits: Fix coercion. Add specs [#12753]marcandre2017-12-174-0/+112
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: exts-note [ci skip]nobu2017-12-171-1/+6
| | | | | | | * common.mk (exts-note): show notes of non-configured extension libraries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: adjusted [ci skip]nobu2017-12-171-4/+5
| | | | | | | * thread.c (timeval_add): adjusted indent and parenthesized in braces. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: fix overly long Thread#join w/ timeoutnormal2017-12-172-10/+21
| | | | | | | | | | * test/ruby/test_thread.rb (test_signal_at_join): test with timeout * thread.c (sleep_wait_for_interrupt): remove (thread_join_sleep): use native_sleep directly to avoid extra missing thread status change [Bug #14181] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: hoist out timeval arithmetic functionsnormal2017-12-171-25/+41
| | | | | | | | | | | timeval arithmetic may be reused in other places and this makes sleep_timeval easier-to-read. * thread.c (timeval_add): hoist out of sleep_timeval (timeval_update_expire): ditto (sleep_timeval): use new functions git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-17svn2017-12-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_method.c: empty tablenobu2017-12-171-4/+5
| | | | | | | * vm_method.c (prepare_callable_method_entry): empty method table has no entries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_method.c: debug messagenobu2017-12-171-1/+1
| | | | | | | * vm_method.c (method_definition_addref_complement): fix debug message, show complemented_count instead of alias_count. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.c: script __dir__ encodingnobu2017-12-162-2/+10
| | | | | | | | | | | | * ruby.c (process_options): fallback to the encoding of the script name since rb_realpath_internal() cannot convert the encoding when it is ASCII-8BIT. * test/ruby/test_rubyoptions.rb (test___dir__encoding): explicitly pass environment variables for locale as they are overriden by invoke_ruby. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm.c: always export rb_frame_method_id_and_classk0kubun2017-12-161-1/+1
| | | | | | | | | | | | | Functions declared in include/ruby/backward.h is exported only when the condition `!defined RUBY_EXPORT && !defined RUBY_NO_OLD_COMPATIBILITY` is met (i.e. included by include/ruby/ruby.h). So if it is not the case when ruby is built, this will not be exported. This was not intentional at r60994. [Bug #14192] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* should install after testusa2017-12-161-1/+1
| | | | | | | | * common.mk (love): should install after test (but this change does not gurantee the order). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* aliasesusa2017-12-161-1/+1
| | | | | | | * tool/merger.rb: aliases for removetag command. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* random.c: make sure that Random.urandom returns required-length buffermame2017-12-161-9/+20
| | | | | | | | getrandom(2) and read(2) (from /dev/urandom) may return a random buffer whose length is shorter than required. This change makes sure that they get enough buffer by using a loop. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_vm_dump.rb: skip if gccnobu2017-12-161-1/+1
| | | | | | | * test/ruby/test_vm_dump.rb (assert_darwin_vm_dump_works): gcc seems not to chain some frames like Apple's clang. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: multiple codepointsnobu2017-12-162-29/+31
| | | | | | | * string.c (undump_after_backslash): fix multiple codepoints in braces. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: suppress warningnobu2017-12-161-1/+1
| | | | | | | * string.c (str_undump): suppress maybe-uninitialized warning by gcc 7 and later. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: update for WEBrick Proc body responsesnormal2017-12-151-0/+1
| | | | | | Better late than never :x [Feature #855] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: updates about trivial GVL release changesnormal2017-12-151-0/+6
| | | | | | | No tickets, but all pretty trivial changes which avoids stalls on slow/non-responsive filesytems. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/erb: Update doc [ci-skip] [doc]marcandre2017-12-151-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Update to ruby/spec@595645feregon2017-12-1539-105/+1078
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-16svn2017-12-151-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e