aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* NEWS: move the section to note ERB performancek0kubun2017-12-241-2/+2
| | | | | | | | | | I heard that notable performance improvements should be written to "Implementation Improvements". So I put the sentence here. Also, the sentence itself is fixed to be the same as Ruby 2.5 release note draft's one. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove "trace_instruction" compile option.ko12017-12-243-6/+0
| | | | | | | | | * iseq.h (rb_compile_option_struct): trace instruction is removed so that remove the trace_instruction compile option. Don't show warning (just ignore) for Ruby 2.5. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-25svn2017-12-241-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: note about ERB's rendering performancek0kubun2017-12-241-0/+3
| | | | | | | | | | | improvement. There is no specific ticket for it, but improving the ERB's performance was my largest passion that made me a Ruby committer. See r58735, r58842, r58904, r58905, r58916. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: Add a brief explanation for branch and method coveragemame2017-12-241-1/+65
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix grammatical mistake [ci skip]nobu2017-12-241-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: updates for WEBrick [ci skip]normal2017-12-241-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: fix typo [ci skip]normal2017-12-241-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick 1.4.2normal2017-12-242-2/+2
| | | | | | | | | | | | | | | | This release removes uses of Kernel#open to avoid unintended behaviors and make future auditing easier. [Misc #14216] 6 changes since 1.4.1: webrick: httpauth requires regular files webrick/httpservlet/cgi_runner.rb: remove unnecessary open webrick: WEBrick::Log requires path arg when given string webrick/httpservlet/*handler: use File.open webrick/httputils: note Kernel#open behavior webrick/httpservelet/cgi_runner: avoid IO#reopen on pathname git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: update for bigdecimal 1.3.4mrkn2017-12-241-4/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bigdecimal: version 1.3.4mrkn2017-12-243-19/+11
| | | | | | | | Import bigdecimal version 1.3.4. The full commit log is here: https://github.com/ruby/bigdecimal/compare/v1.3.3...v1.3.4 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] Improve example of IO#pread [ci skip]kazu2017-12-241-4/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: toplevel return argumentsnobu2017-12-242-1/+1
| | | | | | | * compile.c (compile_return): evaluate arguments to top-level return but ignore the results. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/irb.rb: highlight exceptionsnobu2017-12-241-2/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/irb.rb: simplified backtrace filteringnobu2017-12-241-18/+11
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] Use File.open with block instead of File.new without close [ci skip]kazu2017-12-241-3/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merge rdoc-6.0.1.hsbt2017-12-234-3/+10
| | | | | | | | It fixes an installation error of activerecord. https://github.com/ruby/rdoc/issues/571 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Print backtrace in reverse order on IRB toosorah2017-12-232-6/+12
| | | | | | [Feature #8861] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-24svn2017-12-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P on GCC 4.8naruse2017-12-232-2/+15
| | | | | | | | | | | | | GCC 4.8 with optimization causes error if it compiles following code. [Bug #14221] ```c __builtin_choose_expr(__builtin_constant_p(b),0,1) ``` https://github.com/ruby/ruby/pull/1778 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix last commitko12017-12-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* RubyVM::InstructionSequence#trace_points.ko12017-12-234-21/+96
| | | | | | | | | | * iseq.c (iseqw_trace_points): add `RubyVM::InstructionSequence#trace_points` method for tools which want to manipulate ISeq (and traces). * test/ruby/test_iseq.rb: add a test for this method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_io_console.rb: get rid of sporadic failuresnobu2017-12-231-1/+3
| | | | | | | | | * test/io/console/test_io_console.rb (test_getpass): try to get rid of timing issues. * test/io/console/test_io_console.rb (test_ioflush2): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* RubyVM::InstructionSequence#each_child.ko12017-12-233-0/+112
| | | | | | | | | | * iseq.c (iseqw_each_child): add RubyVM::InstructionSequence#each_child method for tools which want to manipulate ISeq. * test/ruby/test_iseq.rb: add a test for this method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert line number spec of *return events.ko12017-12-232-12/+15
| | | | | | | | | | | | | | | | | | * compile.c (rb_iseq_compile_node): line number spec of :return, :b_return and :end events of 'TracePoint` is changed for [Feature #14104]. Quoted from [Feature #14104]: > Line numbers on :return/:b_return events show the last executed lines, > instead of end lines (without return statement). Note that :end event also affected. However, "buybug", a well-known ruby debugger depends on previous behavior so that I reverted this specification. * test/ruby/test_settracefunc.rb: catch up this fix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c: show first_lineno on iseq inspectk0kubun2017-12-231-3/+6
| | | | | | | | | | My motivation was to improve the output of `ruby --dump=insns xxx.rb`. When one file has many iseqs, it's hard to find the one I want to read. So I wanted `iseq_disasm` to show first_lineno. I unified the behavior of `iseqw_disasm` for consistency. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c: Remove unused macro in r61395kazu2017-12-231-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c: local variable namesnobu2017-12-231-8/+2
| | | | | | | | * iseq.c (rb_insn_operand_intern): simplified the condition for local variable names, assume TS_LINDEX and TS_NUM combinations are only for local variables. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* insns.def: adjust typenobu2017-12-231-1/+1
| | | | | | | * insns.def (checkkeyword): adjust argument type to vm_check_keyword as lindex_t. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Avoid to warnings about gemspec loadings in rubygems tests.hsbt2017-12-231-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2017-12-23svn2017-12-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix unicode data directorynobu2017-12-231-5/+3
| | | | | | | * test/ruby/enc/test_regex_casefold.rb: fix searching unicode data directory, like as test_case_comprehensive.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Postponing the Bundler merge.hsbt2017-12-221100-71581/+19
| | | | | | | I faced a big issue about Bundler with ruby core. I have no time to resolve it issue before 2.5 final release. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* update unicode data files directorynobu2017-12-222-2/+7
| | | | | | | | | * test/ruby/enc/test_case_comprehensive.rb: search ucd directory first if exists. * test/ruby/enc/test_regex_casefold.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* force hash values fixableusa2017-12-223-1/+20
| | | | | | | | | | * include/ruby/ruby.h (RB_ST2FIX): force fixable on LLP64 environment. * hash.c (any_hash): ditto. [ruby-core:84395] [Bug #14218] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: ignore EPERMglass2017-12-221-0/+2
| | | | | | | | | * io.c (nogvl_copy_file_range): ignore EPERM and fallback to sendfile(2) or read/write. copy_file_range(2) may not exist even if __NR_copy_file_range is defined in the build environment. [Bug #14207] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* erb.rb: shadow by keysnobu2017-12-222-3/+14
| | | | | | | | * lib/erb.rb (ERB#new_toplevel): shadow already defined local variables by block local variabes, not to overwrite them. [ruby-core:84390] [Bug #14215] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Bump up fileutils-1.0.2hsbt2017-12-222-2/+4
| | | | | | Added `FileUtils::VERSION` const variable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick/httpservelet/cgi_runner: avoid IO#reopen on pathnamenormal2017-12-221-2/+2
| | | | | | | | | | | IO#reopen seems to behave strangely on Win32 based on the logs posted by Greg for [Bug #14420]. Lets try to fix the issue by using File.open explicitly (but not Kernel#open). * lib/webrick/httpservelet/cgi_runner: use File.open explicitly [Bug #14220] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a test for debugging.ko12017-12-221-1/+2
| | | | | | | | | * test/rdoc/test_rdoc_markup_pre_process.rb: show `RDoc::Markup::PreProcess.post_processors` as a failure message for debugging. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] StringIO#write accepts multiple arguments since r60377 [ci skip]kazu2017-12-221-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] Fix indent [ci skip]kazu2017-12-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [DOC] Remove unmatched parenthesis [ci skip]kazu2017-12-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ifaddr.c: get_ifaddrsnobu2017-12-221-20/+15
| | | | | | | * ext/socket/ifaddr.c (get_ifaddrs): extract ifaddrs from Socket::Ifaddr. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c (rb_insn_operand_intern): needs parenthesiesnobu2017-12-221-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick/httputils: note Kernel#open behaviornormal2017-12-221-0/+2
| | | | | | | | | | | | | | I don't know who uses the load_mime_types method; but it is conceivable that a user would want to read the results of a command instead of reading a regular file to load MIME types. None of the WEBrick-related code in Ruby or default/bundled gems seems to rely on this method; but it is likely 3rd-party code does. * lib/webrick/httputils.rb (load_mime_types): note Kernel#open behavior [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick/httpservlet/*handler: use File.opennormal2017-12-222-3/+3
| | | | | | | | | | | | | This makes future code audits easier. None of these changes fix realistic remote code execution vulnerabilities because we stat(2) before attempting Kernel#open. * lib/webrick/httpservlet/erbhandler.rb (do_GET): use File.open * lib/webrick/httpservlet/filehandler.rb (do_GET): use File.open (make_partial_content): ditto [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick: WEBrick::Log requires path arg when given stringnormal2017-12-221-1/+1
| | | | | | | | | | Allowing a user to specify "| command" via Kernel#open is nonsensical since we never read from the resultant IO. * lib/webrick/log.rb (initialize): replace Kernel#open with File.open [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick: add test for WEBrick::HTTPServlet::ERBHandlernormal2017-12-222-0/+20
| | | | | | | | | | This previously had no coverage. * test/webrick/test_filehandler.rb (test_erbhandler): new test * test/webrick/webrick.rhtml: new file for test [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* webrick/httpservlet/cgi_runner.rb: remove unnecessary opennormal2017-12-221-2/+2
| | | | | | | | | | | | | | IO#reopen already takes string path names as well as IO objects (but not "| command" strings) This makes further auditing for inadvertant code execution easier. There's no actual bugfix or behavior change here, as no external data is passed to cgi_runner.rb. * lib/webrick/httpservlet/cgi_runner.rb: remove Kernel#open call [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e