summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-25[ruby/tracer] Use Gemfile instead of ↵Hiroshi SHIBATA
Gem::Specification#add_development_dependency. https://github.com/ruby/tracer/commit/9df7d7937b
2019-10-24Handle case where ruby2_keywords method splats to ruby2_keywords methodJeremy Evans
Previously, the keyword hash was duped (which results in a regular hash), but the dup was not marked as a keyword hash, causing the hash not to be marked as keyword hash even though it should be. Notes: Merged: https://github.com/ruby/ruby/pull/2609
2019-10-25Do not show progress at chocolateyNobuyoshi Nakada
2019-10-25retry tailcall optimization (#2529)wanabe
Sorry, f62f90367fc3bce6714e7c34cbd040e14e43fe07 is push miss.
2019-10-25respect `param.flags.ruby2_keywords` at to_binary.Koichi Sasada
`param.flags.ruby2_keywords` is not store/load correctly at to_binary so restore this flag correctly.
2019-10-24Duplicate hash when converting keyword hash to keywordsJeremy Evans
This mirrors the behavior when manually splatting a hash. This mirrors the changes made in setup_parameters_complex in 6081ddd6e6f2297862b3c7e898d28a76b8f9240b, so that splatting to a non-iseq method works the same as splatting to an iseq method. Notes: Merged: https://github.com/ruby/ruby/pull/2606
2019-10-24Update date specsJeremy Evans
Allow Date.new spec to run on 2.7. Separate Date.valid_jd? specs, since 2.7 is now stricter and requires numeric value for the first argument. Notes: Merged: https://github.com/ruby/ruby/pull/2605
2019-10-24Fix typo causing Date.new(year, month) to failJeremy Evans
Add a test for this case. Notes: Merged: https://github.com/ruby/ruby/pull/2605
2019-10-25check T_ICLASS for Method#inspect.Koichi Sasada
METHOD::klass can contain T_ICLASS so inspect should respect it.
2019-10-25Install openssl with chocolateyNobuyoshi Nakada
OpenSSL in chocolatey is 1.1.1d but outdated 1.0.2s is in vcpkg.
2019-10-25Split by `&&`Nobuyoshi Nakada
2019-10-25Expanded an environment variableNobuyoshi Nakada
PowerShell does not expand by `%varname%` syntax.
2019-10-25Get rid of control flow by cmd.exeNobuyoshi Nakada
Github workflow stopped using cmd.exe suddenly, and `||` and `&&` seem not working in PowerShell.
2019-10-25Define arguments forwarding as `ruby2_keywords` styleNobuyoshi Nakada
Get rid of these redundant and useless warnings. ``` $ ruby -e 'def bar(a) a; end; def foo(...) bar(...) end; foo({})' -e:1: warning: The last argument is used as the keyword parameter -e:1: warning: for `foo' defined here -e:1: warning: The keyword argument is passed as the last hash parameter -e:1: warning: for `bar' defined here ```
2019-10-25Assert no-kwrest caseNobuyoshi Nakada
2019-10-25Assert no-block caseNobuyoshi Nakada
2019-10-25Set method locationsNobuyoshi Nakada
2019-10-25* 2019-10-25 [ci skip]git
2019-10-25Arguments forwarding is not allowed in lambda [Feature #16253]Nobuyoshi Nakada
2019-10-24Remove unsused output_method argumentJeremy Evans
Fixes Ruby Bug 9876.
2019-10-24Refined `rp` output [ci skip]Nobuyoshi Nakada
So that the result structure can be accessed as `$number` variables, not a mere `VALUE`.
2019-10-24Revert "[ruby/fiddle] Fix a failing test (#13)"Hiroshi SHIBATA
This reverts commit 5ebb0d50f6560b35bc03deb79341a115c5f782ee. Notes: Merged: https://github.com/ruby/ruby/pull/2603
2019-10-24Revert "[ruby/fiddle] test: use env Hash"Hiroshi SHIBATA
This reverts commit 4d844cbaed518743776594fa5ae33b86fe176ad1. Notes: Merged: https://github.com/ruby/ruby/pull/2603
2019-10-24Revert "[ruby/fiddle] Use ffi_closure_free by default. (#20)"Hiroshi SHIBATA
This reverts commit ce6caade7c57a505f73086ccd7b33c14f7715f22. Notes: Merged: https://github.com/ruby/ruby/pull/2603
2019-10-24[ruby/webrick] Don't check tainting in access log escapingJeremy Evans
Only untaint result on Ruby <2.7, as taint support is deprecated in Ruby 2.7+ and no longer has an effect. https://github.com/ruby/webrick/commit/4c430f9410
2019-10-24[ruby/webrick] Support literal IPv6 addresses in X-Forwarded-HostJeremy Evans
https://github.com/ruby/webrick/commit/6b6990ec81
2019-10-24[ruby/webrick] Remove the squishing of whitespace in header valuesJeremy Evans
While the stripping of header values is required by RFC 2616 4.2 and RFC 7230 3.2.4, the squishing is not and can break things, such as when one header contains an HMAC of another header. Fixes Ruby Bug 7021. https://github.com/ruby/webrick/commit/8b96088a86
2019-10-24[ruby/webrick] bump version to 1.5.0Hiroshi SHIBATA
https://github.com/ruby/webrick/commit/00c281caa7
2019-10-24[ruby/webrick] Remove Webrick::HTTPResponse#to_sJeremy Evans
It is currently broken, and even if it worked, it can cause problems when debugging. See Ruby Bug 10715. https://github.com/ruby/webrick/commit/575dea8656
2019-10-24[ruby/webrick] after ruby-2.6.0, set Net::HTTP#write_timeoutthekuwayama
https://github.com/ruby/webrick/commit/3b51f6b4d2
2019-10-24[ruby/fiddle] Remove taint support (#21)Jeremy Evans
Ruby 2.7 deprecates taint and it no longer has an effect. The lack of taint support should not cause a problem in previous Ruby versions. https://github.com/ruby/fiddle/commit/18d6fb6915
2019-10-24[ruby/fiddle] Use ffi_closure_free by default. (#20)Vít Ondruch
* Use ffi_closure_free unconditionally. The current conditionals reflect historic heritage of FFI. Usage of ffi_closure_free should be better default nowadays, because libffi 3.0.5 fixing issues of ffi_closure_free should be widely available. * RUBY_LIBFFI_MODVERSION is not used anymore. Because `ffi_closure_free()` is not used unconditionally, there is no other use for RUBY_LIBFFI_MODVERSION define, so drop its usage. * Use more meaningful variable name. `ver` variable used to be used to pupulate RUBY_LIBFFI_MODVERSION define. Since the define was removed, the `libffi_dir` variable name should better describe the remaining usage of the variable. https://github.com/ruby/fiddle/commit/c49cc79eb8
2019-10-24[ruby/fiddle] Use RbConfig::SIZEOF (#19)Nobuyoshi Nakada
https://github.com/ruby/fiddle/commit/ea06b28db8
2019-10-24[ruby/fiddle] test: use env HashSutou Kouhei
https://github.com/ruby/fiddle/commit/a01a962342
2019-10-24[ruby/fiddle] Fix a failing test (#13)Kenta Murata
* Fix a failing test This commit fixes the following failure: ``` 1) Failure: Fiddle::TestImport#test_no_message_with_debug [/Users/mrkn/src/github.com/ruby/fiddle/test/fiddle/test_import.rb:152]: 1. [2/2] Assertion for "stderr" | <[]> expected but was | <["Exception `NameError' at /Users/mrkn/.rbenv/versions/2.5.1/lib/ruby/2.5.0/fiddle/import.rb:157 - uninitialized constant Fiddle::Function::STDCALL"]>. ``` * Stop using Bundler.with_clean_env * Clear existing Ruby environment variables on test_no_message_with_debug https://github.com/ruby/fiddle/commit/13133ddec8
2019-10-24[ruby/fiddle] Fiddle::Function must maintain a reference to the closureAaron Patterson
If the first parameter to Fiddle::Function is a closure object (rather than an interger), `rb_Integer` will cast it to an integer but not maintain a reference to the closure. Then if the closure gets GC'd, we have a segv. This commit keeps a reference to the original parameter to initialize so that the object will not be GC'd. Fixes: https://bugs.ruby-lang.org/issues/13286 https://github.com/ruby/fiddle/commit/0fc697bbc5
2019-10-24Temporarily skipped with upstream changes of Date library.Hiroshi SHIBATA
2019-10-24[ruby/date] Use Gemfile instead of ↵Hiroshi SHIBATA
Gem::Specification#add_development_dependency. https://github.com/ruby/date/commit/13c94362c2
2019-10-24[ruby/date] Update docszverok
https://github.com/ruby/date/commit/8c02586a98
2019-10-24[ruby/date] Simplify #inspectzverok
https://github.com/ruby/date/commit/af01edd7d8
2019-10-24[ruby/date] Remove taint supportJeremy Evans
Ruby 2.7 deprecates taint and it no longer has an effect. The lack of taint support should not cause a problem in previous versions. https://github.com/ruby/date/commit/519470dc3b
2019-10-24[ruby/date] Support -Float::INFINITY...date rangesJeremy Evans
Fixes Ruby Bug 12961 https://github.com/ruby/date/commit/7f533c2552
2019-10-24[ruby/date] Check for numeric arguments in constructorsJeremy Evans
Previously, the type of these arguments were not checked, leading to NoMethodErrors in some cases, and TypeErrors in other cases, but not showing what field was having the problems. This change makes it so the field with the problem is included in the error message. For the valid_*? methods, this changes them to return false if one of the arguments that should be numeric is not. Fixes Ruby Bug 11935 Fixes Ruby Misc 15298 https://github.com/ruby/date/commit/a2f4b665f8
2019-10-24[ruby/date] Make julian dates roundtrip through to_time.to_dateJeremy Evans
Previously, julian dates would not round trip through to_time.to_date, because Time is always considered gregorian. This converts the Date instance from julian to gregorian before converting to Time, ensuring that an equal date object will be returned if converting that Time back to Date. This does result in julian Date objects showing different day values if converting to Time. Fixes Ruby Bug 8428. https://github.com/ruby/date/commit/d8df64555e
2019-10-24Use CPDEBUG for debug codeAlan Wu
Notes: Merged: https://github.com/ruby/ruby/pull/2564
2019-10-24Combine call info and cache to speed up method invocationAlan Wu
To perform a regular method call, the VM needs two structs, `rb_call_info` and `rb_call_cache`. At the moment, we allocate these two structures in separate buffers. In the worst case, the CPU needs to read 4 cache lines to complete a method call. Putting the two structures together reduces the maximum number of cache line reads to 2. Combining the structures also saves 8 bytes per call site as the current layout uses separate two pointers for the call info and the call cache. This saves about 2 MiB on Discourse. This change improves the Optcarrot benchmark at least 3%. For more details, see attached bugs.ruby-lang.org ticket. Complications: - A new instruction attribute `comptime_sp_inc` is introduced to calculate SP increase at compile time without using call caches. At compile time, a `TS_CALLDATA` operand points to a call info struct, but at runtime, the same operand points to a call data struct. Instruction that explicitly define `sp_inc` also need to define `comptime_sp_inc`. - MJIT code for copying call cache becomes slightly more complicated. - This changes the bytecode format, which might break existing tools. [Misc #16258] Notes: Merged: https://github.com/ruby/ruby/pull/2564
2019-10-24show "transferred" attribute on Fiber#to_sKoichi Sasada
If a fiber is invoked with transfer method (such as "f.transfer"), then the invoked fiber ("f") is labeled as "transferred" and this fiber can not be invoked with Fiber#resume. This patch adds transferred attribute for "Fiber#to_s" (and inspect).
2019-10-24Revert "Fix Fiber#transfer"Koichi Sasada
This reverts commit fa8ac91e957a076f6df1adaecad7896817138009. Previous behavior is intentional.
2019-10-24Revert "Fixed the require path for e2mmap version file."Hiroshi SHIBATA
This reverts commit ff953a003e03f5f070112ececefab4c07ff4cb0e.
2019-10-24Fixed the require path for e2mmap version file.Hiroshi SHIBATA