summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-05-23Introduce a specialize instruction for Array#packNobuyoshi Nakada
Instructions for this code: ```ruby # frozen_string_literal: true [a].pack("C") ``` Before this commit: ``` == disasm: #<ISeq:<main>@test.rb:1 (1,0)-(3,13)> 0000 putself ( 3)[Li] 0001 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0003 newarray 1 0005 putobject "C" 0007 opt_send_without_block <calldata!mid:pack, argc:1, ARGS_SIMPLE> 0009 leave ``` After this commit: ``` == disasm: #<ISeq:<main>@test.rb:1 (1,0)-(3,13)> 0000 putself ( 3)[Li] 0001 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE> 0003 putobject "C" 0005 opt_newarray_send 2, :pack 0008 leave ``` Co-authored-by: Maxime Chevalier-Boisvert <[email protected]> Co-authored-by: Aaron Patterson <[email protected]>
2024-05-23[ruby/prism] Only accept command call when specified for constant pathKevin Newton
https://github.com/ruby/prism/commit/0ae908b6ee
2024-05-23[PRISM] Fix up some masgn topn calculationsKevin Newton
2024-05-23[PRISM] Enable TestSyntax#test_unterminated_heredoc_crKevin Newton
2024-05-23[ruby/prism] Disallow newlines in heredoc identifiersKevin Newton
https://github.com/ruby/prism/commit/737f2c2117
2024-05-23Remove dead codeNobuyoshi Nakada
Since 140512d2225e6fd046ba1bdbcd1a27450f55c233, `else` without `rescue` has been a syntax error.
2024-05-23Add RB_GC_GUARD for rb_str_to_parser_stringYusuke Endoh
I think this fixes the following random test failure that could not be fixed for a long time: ``` 1) Failure: TestSymbol#test_inspect_under_gc_compact_stress [/home/chkbuild/chkbuild/tmp/build/20240522T003003Z/ruby/test/ruby/test_symbol.rb:126]: <":testing"> expected but was <":\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"">. ``` The value passed to this function is the return value of `rb_id2str`, so it is never collected. However, if auto_compact is enabled, the string may move and `RSTRING_PTR(str)` became invalid. This change prevents the string from being moved by RB_GC_GUARD.
2024-05-23Define `incflags` also on mswinNobuyoshi Nakada
2024-05-23[Bug #20500] Search non-default directories for jemallocNobuyoshi Nakada
Co-Authored-by: lish82 (Hiroki Katagiri)
2024-05-22Bump ruby/setup-ruby from 1.177.0 to 1.177.1dependabot[bot]
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.177.0 to 1.177.1. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/7dc18ff0ca6e3630d3f29d2a85ebf6cc27ae9d6c...943103cae7d3f1bb1e4951d5fcc7928b40e4b742) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
2024-05-23Update default gems list at 2cc047df9a92e0c6b9d0fb57f305f4 [ci skip]git
2024-05-23[ruby/rdoc] Bump up 6.7.0Hiroshi SHIBATA
https://github.com/ruby/rdoc/commit/a667e616e1
2024-05-22[PRISM] Properly support 'it'Kevin Newton
2024-05-22[ruby/prism] Fix support for 'it' implicit local variableKevin Newton
https://github.com/ruby/prism/commit/53bbcfe513
2024-05-22Update bundled gems list as of 2024-05-22git
2024-05-22[rubygems/rubygems] move git clone depth error handling to else branchEllen Keal
https://github.com/rubygems/rubygems/commit/022eb473f8
2024-05-22[rubygems/rubygems] fix for gems not downloading from git via httpEllen Keal
https://github.com/rubygems/rubygems/commit/592a2fcd54
2024-05-22[Bug #20499] Use Xcode owned tools for Xcode clangNobuyoshi Nakada
Xcode has its own version tools that may be incompatible with genuine LLVM tools, use the tools in the same directory.
2024-05-22[ruby/reline] Catches Errno::ENODEV and Errno::EBADF inVladimir Támara Patiño
get_screen_size. Closes https://github.com/ruby/reline/pull/690 (https://github.com/ruby/reline/pull/702) * Catches exceptions Errno::ENODEV and Errno::EBADF in get_screen_size. Closes https://github.com/ruby/reline/pull/690 * Just catching Errno::ENOTTY and Errno::ENODEV https://github.com/ruby/reline/commit/a5b5298e4a
2024-05-21---dependabot[bot]
updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
2024-05-22Revert "[Bug #20499] Use consistent version tools with CC"Hiroshi SHIBATA
This reverts commit 8277cf0799145bed0c813bfcc187739f77b3102d. This change break to build with `rbenv install ruby-dev` with the following error. ``` touch yjit/target/release/libyjit.a transdb.h updated ./tool/darwin-ar: line 6: /nm: No such file or directory ./tool/darwin-ar: line 6: exec: /nm: cannot execute: No such file or directory partial linking yjit/target/release/libyjit.a into yjit/target/release/libyjit.o ```
2024-05-21[ruby/prism] Fix up ruby_parser interpolation concatenationKevin Newton
https://github.com/ruby/prism/commit/79cec4be22
2024-05-21[ruby/prism] Provide deprecated numeric methodKevin Newton
https://github.com/ruby/prism/commit/77bf9038a2
2024-05-21[PRISM] Use new rational layoutKevin Newton
2024-05-21[ruby/prism] Reconfigure rationalsKevin Newton
This eliminates the subnode on RationalNode and replaces it with two integer fields, which represent the ratio for the rational. It also reduces those two integers if they both fit into 32 bits. Importantly, this PR does not implement bignum reduction. That's something I'd like to consider for the future, but it's simple enough for now to leave them unreduced, which makes it more useful than it used to be. https://github.com/ruby/prism/commit/86e06c7068
2024-05-21[PRISM] Handle safe navigation in call target nodesKevin Newton
2024-05-21[PRISM] Enable TestSyntax#test_warn_balancedKevin Newton
2024-05-21[PRISM] Enable TestSyntax#test_numbered_parameterKevin Newton
2024-05-21[ruby/prism] Add error for numbered parameter used in inner blockKevin Newton
https://github.com/ruby/prism/commit/c386ba6d48
2024-05-21[Bug #20499] Use consistent version tools with CCNobuyoshi Nakada
As Apple Xcode is relocatable and selectable with `xcode-select`, use consistent versions of commands in the same location.
2024-05-21ripper: Splat find patternsNobuyoshi Nakada
2024-05-21ripper: Splat hash patternsNobuyoshi Nakada
2024-05-21ripper: Splat array patterns with `pre_arg`Nobuyoshi Nakada
2024-05-21ripper: Splat `$:opt_args_tail` for `params!`Nobuyoshi Nakada
2024-05-21ripper: Splat `$:head` for `defs!`Nobuyoshi Nakada
2024-05-21ripper: Extend to represent array access and splatNobuyoshi Nakada
2024-05-21ripper: Describe `var_ref` for `user_variable` in ripper DSLNobuyoshi Nakada
2024-05-21ripper: Move `assign_error` call to `assignable`Nobuyoshi Nakada
Prepare `lhs` as `$:$` before `assignable` and update it there. Remove `ripper_assignable` which is no longer used.
2024-05-21ripper: Move `assign_error` call to `const_decl`Nobuyoshi Nakada
Prepare `path` as `$:$` before `const_decl` and update it there. Remove `ripper_const_decl` which is no longer used.
2024-05-21ripper: Allow parenthesized comma in optionsNobuyoshi Nakada
2024-05-21ripper: Preserve indentationNobuyoshi Nakada
2024-05-21ripper: Remove rb_ripper_noneNobuyoshi Nakada
Now it is used only for wheter `opt_paren_args` is `none`. Introduce a new special node to distinguish an empty parentheses from it .
2024-05-21ripper: Show popped TOS in debug modeNobuyoshi Nakada
2024-05-21ripper: Short hand for `rb_ary_new_from_args`Nobuyoshi Nakada
2024-05-21ripper: Make `$:n` to refer each grammar valuesNobuyoshi Nakada
Ripper DSL uses these values for callbacks, but does not need indexes.
2024-05-21ripper: Use ripper DSL in simple dispatch chain casesNobuyoshi Nakada
2024-05-20---dependabot[bot]
updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
2024-05-20[PRISM] Enable TestRegexp#test_unescapeKevin Newton
2024-05-20[PRISM] Enable TestRegexp#test_match_control_meta_escapeKevin Newton
2024-05-21Avoid array allocation for empty ruby2_keywords flagged keyword hashJeremy Evans
If the method being called does not have a positional splat parameter, there is no point in allocating the array, as decrementing given_argc is sufficient to ensure the empty keyword hash is not considered an argument, assuming that we are calling a method/lambda and not a regular proc.