summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-05-16[rubygems/rubygems] Clean up generated and copied filesv3_4_0_preview1Nobuyoshi Nakada
> leaving the files after gem rebuild was intentional, for local > inspection, but the test suite should be made to clean up after > itself independently of that. https://github.com/rubygems/rubygems/pull/4913#issuecomment-2081710691 https://github.com/rubygems/rubygems/commit/185a2091fb
2024-05-15[PRISM] Enable TestParse#test_global_variableKevin Newton
2024-05-15[PRISM] Enable test_location_of_invalid_tokenKevin Newton
2024-05-15[PRISM] Enable TestParse#test_unexpected_eofKevin Newton
2024-05-15[PRISM] Enable TestParse#test_unexpected_token_after_numericKevin Newton
2024-05-15[PRISM] Temporarily exclude IRB testKevin Newton
2024-05-15[ruby/prism] Extend the bounds of the invalid global variable name errorKevin Newton
https://github.com/ruby/prism/commit/89d0d9851a
2024-05-15[ruby/prism] Replace end of file with end-of-inputKevin Newton
https://github.com/ruby/prism/commit/dd532ded95
2024-05-15[rubygems/rubygems] Do not override `@orig_env`Nobuyoshi Nakada
It is saved in `setup` and restored in `teardown`. https://github.com/rubygems/rubygems/commit/880c5de667
2024-05-14[ruby/zlib] Avoid double copying into provided outbufSamuel Giddins
https://github.com/ruby/zlib/commit/07f44b7546
2024-05-14[ruby/zlib] Avoid allocating intermediary strings when read/readpartial are ↵Samuel Giddins
passed an outbuf This accounts for a significant number of string allocations when reading rubygems, but we can avoid that in many places by only copying into the outbuf when present https://github.com/ruby/zlib/commit/d25ef406c1
2024-05-15Bump github/codeql-action from 3.25.4 to 3.25.5dependabot[bot]
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.4 to 3.25.5. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/ccf74c947955fd1cf117aef6a0e4e66191ef6f61...b7cec7526559c32f1616476ff32d17ba4c59b2d6) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
2024-05-14[rubygems/rubygems] Fix issue when cleaning up plugin stubsDavid Rodriguez
When `gem uninstall <gem> --install-dir <dir>` is run, if the version removed had a plugin, and that same version happened to also be installed globally, then the plugin stub would fail to be removed. https://github.com/rubygems/rubygems/commit/4e2fa0be77
2024-05-14[rubygems/rubygems] Extract a `Gem::SpecificationRecord` classDavid Rodriguez
This class handles all logic to handle the list of specifications, given a set of GEM_PATH directories. Makes `Gem::Specification` has less responsibilities and will help with fixing some bugs next. https://github.com/rubygems/rubygems/commit/df280dbbed
2024-05-14[rubygems/rubygems] Fix typo in attribute documentationDavid Rodriguez
https://github.com/rubygems/rubygems/commit/8c9807092c
2024-05-14[rubygems/rubygems] Add missing docsDavid Rodriguez
Other analog methods are documented, so document this one too. https://github.com/rubygems/rubygems/commit/76da34d44d
2024-05-14[rubygems/rubygems] Simplify documentationDavid Rodriguez
I don't think this method is any worse than others, let's only document what it does. https://github.com/rubygems/rubygems/commit/dec722187f
2024-05-14[rubygems/rubygems] Make `Gem.clear_paths` test less implementation dependentDavid Rodriguez
https://github.com/rubygems/rubygems/commit/b545daa95d
2024-05-14[rubygems/rubygems] Simplify test teardownDavid Rodriguez
If we move test directory removal to the very end, I think we should not leak anything. https://github.com/rubygems/rubygems/commit/fb3d8944b5
2024-05-14[rubygems/rubygems] Remove redundant receiversDavid Rodriguez
https://github.com/rubygems/rubygems/commit/7b71965a70
2024-05-14[DOC] Fix typo in example code for `String#encode` methodAlexander Ross
The example code in the documentation for the `String#encode` method has a typo in the `fallback` option. The example code uses `h` as the fallback option, but it should use `hash` instead to match the variable name in the example code.
2024-05-14Update default gems list at 4a1e4436a99c5794b022f03e8c0589 [ci skip]git
2024-05-14[ruby/reline] Bump version to 0.5.7Mari Imaizumi
(https://github.com/ruby/reline/pull/704) https://github.com/ruby/reline/commit/b9b3d392ff
2024-05-14Fix TestPatternMatching#test_deconstruct_keys testAndrew Konchin
Before the change `C.keys` returned keys captured in some previous test case that by chance captured `nil` value what made this test passed successfully. Now it returns keys captured in this test case.
2024-05-14[ruby/reline] Implement the undo commandMari Imaizumi
(https://github.com/ruby/reline/pull/701) * Refactor send * Implement the undo command * Fix @past_lines initialization * Improve assertion * Hide to save buffer in insert_pasted_text * Replace @using_delete_command with @undoing * Refactor `@past_lines` https://github.com/ruby/reline/commit/4ab72f9cbd
2024-05-13[rubygems/rubygems] Restore previous way of loading monitorDavid Rodriguez
I'm not sure why but this particular change seems to have introduced some flaky test failures. So I'll revert it. https://github.com/rubygems/rubygems/commit/668488014b
2024-05-13[rubygems/rubygems] Don't load `SharedHelpers` unnecessarilyDavid Rodriguez
https://github.com/rubygems/rubygems/commit/de4650f629
2024-05-13[rubygems/rubygems] Don't depend on Pathname unnecessarilyDavid Rodriguez
https://github.com/rubygems/rubygems/commit/8c8aaecc48
2024-05-13[ruby/prism] Rescue LoadError for ruby_parser as wellKevin Newton
https://github.com/ruby/prism/commit/d4eb13e703
2024-05-13[ruby/prism] Add error handling for missing `parser` gem in `Prism::Translation`Koichi ITO
Resolves https://github.com/ruby/prism/pull/2803. This PR adds error handling for missing `parser` gem in `Prism::Translation`. The `parser` gem is a required runtime dependency when using `Prism::Translation::Parser`. But it is not required for other uses of Prism. To avoid unnecessary dependencies, it is not added as a `runtime_dependency` in the prism.gemspec. Instead, if the dependency is missing, instructions are given to add it to Gemfile. ## Before ```console $ bundle exec ruby -e 'require "prism"; require "prism/translation/parser33"' /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `require': cannot load such file -- parser (LoadError) from /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `block (2 levels) in replace_require' from /Users/koic/src/github.com/ruby/prism/lib/prism/translation/parser.rb:3:in `<top (required)>' from /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `require' from /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `block (2 levels) in replace_require' from /Users/koic/src/github.com/ruby/prism/lib/prism/translation/parser33.rb:6:in `<module:Translation>' from /Users/koic/src/github.com/ruby/prism/lib/prism/translation/parser33.rb:4:in `<module:Prism>' from /Users/koic/src/github.com/ruby/prism/lib/prism/translation/parser33.rb:3:in `<top (required)>' from /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `require' from /Users/koic/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `block (2 levels) in replace_require' from -e:1:in `<main>' ``` ## After ```console $ bundle exec ruby -e 'require "prism"; require "prism/translation/parser33"' Error: Unable to load parser. Add `gem "parser"` to your Gemfile. ``` https://github.com/ruby/prism/commit/4880aec22d
2024-05-13[ruby/prism] Autoload newlines and comment visitorsKevin Newton
Having the @newline instance variable in every node adds up, and since it is so rarely used, we only want to add it when necessary. Moving this into an autoloaded file and moving the instance variable out of the default initializers reduces allocated memory because the nodes are now smaller and some fit into the compact list. On my machine, I'm seeing about an 8% drop. https://github.com/ruby/prism/commit/eea92c07d2
2024-05-13[rubygems/rubygems] Use a constant empty tar header to avoid extra allocationsSamuel Giddins
https://github.com/rubygems/rubygems/commit/716666f65f
2024-05-13[rubygems/rubygems] Use spec.base_dir to remove pluginsVít Ondruch
The plugin loader from `@gem_home` was removed during uninstallation. However, this could leave behind the plugins for `--user-install` installed gems. Use `Gem::Specifictaions#base_dir` instead. This ensures that the plugin loader for associated .gemspec is uninstalled. https://github.com/rubygems/rubygems/commit/6047f78210
2024-05-13[rubygems/rubygems] Improve plugin removal testDavid Rodriguez
Instead of unit testing the `remove_plugins` method, test the whole removal process. https://github.com/rubygems/rubygems/commit/bfdc60af98
2024-05-13[rubygems/rubygems] Fix error when Bundler installation is corruptedDavid Rodriguez
If one upgrades the default copy of Bundler through `gem update --system`, and then reinstalls Ruby without removing the previous copy. Then the new installation will have a correct default bundler gemspec, but a higher copy installed in site_dir. This causes a crash when running Bundler and prints the bug report template. This could probably be fixed in Ruby install script, by removing any previous Bundler default copies, but if the problem is already there, I think it's best to print a proper user error. https://github.com/rubygems/rubygems/commit/ada6de765d
2024-05-13[rubygems/rubygems] Avoid standard requires while loading shared helpersDavid Rodriguez
We should make sure Bundler does not trigger RubyGems require logic for gem activation until it had the chance to register its own monkeypatches to RubyGems. https://github.com/rubygems/rubygems/commit/fbd2ff86b9
2024-05-13[rubygems/rubygems] Require things right before they're neededDavid Rodriguez
https://github.com/rubygems/rubygems/commit/07022e3f2f
2024-05-13Constify encoding type in universal parserNobuyoshi Nakada
Fixed warning about discarding modifiers. ``` ../src/ruby_parser.c:677:48: warning: passing 'rb_encoding *' (aka 'const struct OnigEncodingTypeST *') to parameter of type 'void *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 677 | ast = rb_parser_compile(p, gets, ptr, len, enc, input, line); | ^~~ ../src/internal/parse.h:58:128: note: passing argument to parameter 'fname_enc' here 58 | rb_ast_t *rb_parser_compile(rb_parser_t *p, rb_parser_lex_gets_func *gets, const char *fname_ptr, long fname_len, rb_encoding *fname_enc, rb_parser_input_data input, int line); | ^ ```
2024-05-12[Bug #20482] [DOC] Clarify about pattern maching guard clauseNobuyoshi Nakada
Guard clauses can only be used in `case` pattern matching statements, not in `=>`/`in` operators.
2024-05-12ripper: Fix opassign when assignment to backref variablesNobuyoshi Nakada
2024-05-12ripper: Use `$&` instead of quoting charaters in testsNobuyoshi Nakada
2024-05-12[Bug #20481] Check for unmarshaling ivarNobuyoshi Nakada
Prohibit setting instance variables of existing classes and modules via link.
2024-05-12[Bug #7759] Fix instance variable names to be checkedNobuyoshi Nakada
2024-05-12[ruby/irb] Clean up tmpdirNobuyoshi Nakada
https://github.com/ruby/irb/commit/7d60349499
2024-05-11Fix SEGV when ripper hits `backref_error` on `command_asgn` or `arg`yui-knk
2024-05-10[ruby/reline] Avoid STDIN.winsize called in `require "reline"`tomoya ishida
(https://github.com/ruby/reline/pull/703) https://github.com/ruby/reline/commit/21891c47c4
2024-05-10Update default gems list at afdfff933fefa17a8ef12f791b7f36 [ci skip]git
2024-05-10[PRISM] Bump to version 0.29.0Kevin Newton
2024-05-10[PRISM] Enable passing argument forwarding testsKevin Newton
2024-05-10[ruby/prism] Enhance parameter forwarding error messagesKevin Newton
https://github.com/ruby/prism/commit/826657232e