aboutsummaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* [ruby/rdoc] Fix blockquote with word in verbatimNobuyoshi Nakada2022-07-301-0/+9
| | | | https://github.com/ruby/rdoc/commit/75eee668a5
* [flori/json] test parsing of unicode, mixing literal characters with escapedEthan2022-07-291-0/+4
| | | | https://github.com/flori/json/commit/82fe866da2
* [ruby/optparse] Also accept '-' as an optional argument ↵konsolebox2022-07-291-0/+6
| | | | | | (https://github.com/ruby/optparse/pull/35) https://github.com/ruby/optparse/commit/f2b8318631
* [ruby/rdoc] Fix formatting blockquote in verbatimNobuyoshi Nakada2022-07-291-0/+11
| | | | | | Reported at https://github.com/ruby/rdoc/pull/907#discussion_r932505816 https://github.com/ruby/rdoc/commit/86384ac7f9
* Revert "Try reproducing the MinGW hang on time command (#6168)"Takashi Kokubun2022-07-281-0/+7
| | | | | | | | | | | | This reverts commit bee5089d6789401f265f87b2f23f1bd7ec63cec8. Looking at https://github.com/ruby/ruby/runs/7564065637?check_suite_focus=true, we concluded that the ruby process for test-all is stuck before exit when this issue reproduces. However, because of our limited bandwidth to support MinGW, we're not investigating this, and therefore we need to keep skipping tests that hang on this environment.
* YJIT: Teach getblockparamproxy to handle the no-block case without exiting ↵Matthew Draper2022-07-281-0/+16
| | | | | | | | | (#6191) Teach getblockparamproxy to handle the no-block case without exiting Co-authored-by: John Hawthorn <john@hawthorn.email> Co-authored-by: John Hawthorn <john@hawthorn.email>
* Skip randomly failing tests with FreeBSD 12Hiroshi SHIBATA2022-07-282-0/+8
|
* Fix the missing bracketsHiroshi SHIBATA2022-07-281-1/+1
|
* test_io_console.rbL399 is also randomly failing same as ↵Hiroshi SHIBATA2022-07-281-1/+1
| | | | bfc697f1e26f1406c45ec7309ca0d4c0b5ecedd6
* Try reproducing the MinGW hang on time command (#6168)Takashi Kokubun2022-07-271-7/+0
| | | | | to see if it really exits correctly. GitHub Support asked me to confirm the command is exiting correctly.
* Fix `rb_profile_frames` output includes dummy main thread frameIvo Anjo2022-07-261-0/+24
| | | | | | | | | | | | | | | | | | | | The `rb_profile_frames` API did not skip the two dummy frames that each thread has at its beginning. This was unlike `backtrace_each` and `rb_ec_parcial_backtrace_object`, which do skip them. This does not seem to be a problem for non-main thread frames, because both `VM_FRAME_RUBYFRAME_P(cfp)` and `rb_vm_frame_method_entry(cfp)` are NULL for them. BUT, on the main thread `VM_FRAME_RUBYFRAME_P(cfp)` was true and thus the dummy thread was still included in the output of `rb_profile_frames`. I've now made `rb_profile_frames` skip this extra frame (like `backtrace_each` and friends), as well as add a test that asserts the size and contents of `rb_profile_frames`. Fixes [Bug #18907] (<https://bugs.ruby-lang.org/issues/18907>)
* [rubygems/rubygems] Bump rb-sysdependabot[bot]2022-07-262-7/+7
| | | | | | | | | | | | | | | | | Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/fe76234cf1
* [rubygems/rubygems] Bump rb-sys in ↵dependabot[bot]2022-07-262-7/+7
| | | | | | | | | | | | | | | | | | | /test/rubygems/test_gem_ext_cargo_builder/custom_name Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/8b1d0672a3
* Wait the test thread to sleepNobuyoshi Nakada2022-07-251-8/+2
| | | | | | Revert "Synchronize the test thread sleep" This reverts commit 307835fe314fea6e946a8c9b25bb3912680ed7d1.
* Synchronize the test thread sleepNobuyoshi Nakada2022-07-251-1/+8
|
* [rubygems/rubygems] Display mfa warnings on gem signinAshley Ellis Pierce2022-07-231-2/+16
| | | | | | https://github.com/rubygems/rubygems/commit/4dc77b7099 Co-authored-by: Jenny Shen <jenny.shen@shopify.com>
* [ruby/reline] Rename dialog_pointer_* to dialog_highlight_*st00122022-07-222-13/+13
| | | | | | | | "Pointer" is not what we usually use to describe a selected item. "Highlight" is a more common word for the scenario so we should use it instead. https://github.com/ruby/reline/commit/b4279d1557
* [rubygems/rubygems] Use `SystemExit#status` as `exit_code`Nobuyoshi Nakada2022-07-221-0/+6
| | | | | | No reasons to manage separately. https://github.com/rubygems/rubygems/commit/8ede5c886e
* RubyGems: Enable Style/StringLiterals copTakuya Noguchi2022-07-22149-5917/+5917
| | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
* Dump non-ASCII char as unsignedNobuyoshi Nakada2022-07-221-0/+15
| | | | Non-ASCII code may be negative on platforms plain char is signed.
* Do not chomp trailing line separator IO#each with nil separator and chompJeremy Evans2022-07-211-1/+15
| | | | | | | nil separator means no sepator, so chomp should not remove a line separator. Partially Fixes [Bug #18770]
* Revert "objspace_dump.c: skip dumping method name if not pure ASCII"Jean byroot Boussier2022-07-211-13/+0
| | | | This reverts commit 79406e3600862bbb6dcdd7c5ef8de1978e6f916c.
* objspace_dump.c: skip dumping method name if not pure ASCIIJean Boussier2022-07-211-0/+13
| | | | | | | | | | | | Sidekiq has a method named `❨╯°□°❩╯︵┻━┻`which corrupts heap dumps. Normally we could just dump is as is since it's valid UTF-8 and need no escaping. But our code to escape control characters isn't UTF-8 aware so it's more complicated than it seems. Ultimately since the overwhelming majority of method names are pure ASCII, it's not a big loss to just skip it.
* Revert "Do not chomp trailing line separator IO#each with nil separator and ↵Jeremy Evans2022-07-211-15/+1
| | | | | | | | chomp" This reverts commit 04f86ad0b5d2fe4711ff300d855228a6aed55f33. This is causing CI issues, reverting for now.
* Do not have class/module keywords look up ancestors of ObjectJeremy Evans2022-07-212-2/+15
| | | | | | | | Fixes case where Object includes a module that defines a constant, then using class/module keyword to define the same constant on Object itself. Implements [Feature #18832]
* Do not chomp trailing line separator IO#each with nil separator and chompJeremy Evans2022-07-211-1/+15
| | | | | | | nil separator means no sepator, so chomp should not remove a line separator. Partially Fixes [Bug #18770]
* Make String#each_line work correctly with paragraph separator and chompJeremy Evans2022-07-211-6/+11
| | | | | | | | | | Previously, it was including one newline when chomp was used, which is inconsistent with IO#each_line behavior. This makes behavior consistent with IO#each_line, chomping all paragraph separators (multiple consecutive newlines), but not single newlines. Partially Fixes [Bug #18768]
* [ruby/digest] Ignore test_ractor.rb on non-Ractor rubyNobuyoshi Nakada2022-07-211-5/+1
| | | | https://github.com/ruby/digest/commit/352b8c1636
* [ruby/digest] Find an available digest algorithm to testNobuyoshi Nakada2022-07-211-4/+9
| | | | https://github.com/ruby/digest/commit/8844716793
* Ensure _id2ref finds symbols with the correct typeDaniel Colson2022-07-201-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this commit it was possible to call `ObjectSpace._id2ref` with an offset static symbol object_id and get back a new, incorrectly tagged symbol: ``` > sensible_sym = ObjectSpace._id2ref(:a.object_id) => :a > nonsense_sym = ObjectSpace._id2ref(:a.object_id + 40) => :a > sensible_sym == nonsense_sym => false ``` `nonsense_sym` ends up tagged with `RUBY_ID_INSTANCE` instead of `RB_ID_LOCAL`. That means we can do silly things like: ``` > foo = Object.new > foo.instance_variable_set(:a, 123) (irb):2:in `instance_variable_set': `a' is not allowed as an instance variable name (NameError) > foo.instance_variable_set(ObjectSpace._id2ref(:a.object_id + 40), 123) => 123 > foo.instance_variables => [:a] ``` This was happening because `get_id_entry` ignores the tag bits when looking up the symbol. So `rb_id2str(symid)` would return a value and then we'd continue on with the nonsense `symid`. This commit prevents the situation by checking that the `symid` actually matches what we get back from `get_id_entry`. Now we get a `RangeError` for the nonsense id: ``` > ObjectSpace._id2ref(:a.object_id) => :a > ObjectSpace._id2ref(:a.object_id + 40) (irb):1:in `_id2ref': 0x000000000013f408 is not symbol id value (RangeError) ``` Co-authored-by: John Hawthorn <jhawthorn@github.com>
* Match +YJIT in Ruby desc when testing segv (#6141)Noah Gibbs2022-07-202-0/+9
| | | | | | In test_bug_reporter and test_rubyoptions we intentionally test child processes that cause SEGV. We run them with YJIT if the parent uses YJIT so that the text description matches the parent RUBY_DESCRIPTION.
* [rubygems/rubygems] Fix `ruby setup.rb --destdir /foo` modifying global specsDavid Rodríguez2022-07-201-0/+8
| | | | | | | | Running a command like that is actually removing any previous default bundler specs in the default RubyGems installation (outside of destdir). It should instead only modify destdir. https://github.com/rubygems/rubygems/commit/5ed275383c
* [rubygems/rubygems] Refactor destdir checksDavid Rodríguez2022-07-201-2/+6
| | | | https://github.com/rubygems/rubygems/commit/ca956c0de2
* [rubygems/rubygems] More cleanupDavid Rodríguez2022-07-201-18/+18
| | | | https://github.com/rubygems/rubygems/commit/6012800a20
* [rubygems/rubygems] Unify common logicDavid Rodríguez2022-07-201-8/+12
| | | | https://github.com/rubygems/rubygems/commit/e5434be14c
* [rubygems/rubygems] Fix casing typo when resetting ↵David Rodríguez2022-07-201-2/+2
| | | | | | `RbConfig::CONFIG["ENABLE_SHARED"]` https://github.com/rubygems/rubygems/commit/3d1ae0050b
* [Bug #18905] Check symbol name types more strictlyNobuyoshi Nakada2022-07-202-5/+17
|
* [ruby/fileutils] Add an octal prefix to clarify to be octalNobuyoshi Nakada2022-07-191-12/+12
| | | | | | https://github.com/ruby/fileutils/commit/332025bc02 Co-Authored-By: David Rodríguez <deivid.rodriguez@riseup.net>
* [rubygems/rubygems] Bump rb-sys in ↵dependabot[bot]2022-07-192-5/+5
| | | | | | | | | | | | | | | | | | | /test/rubygems/test_gem_ext_cargo_builder/custom_name Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.19 to 0.9.20. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.19...v0.9.20) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/2689b6b940
* [rubygems/rubygems] Bump rb-sysdependabot[bot]2022-07-192-5/+5
| | | | | | | | | | | | | | | | | Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.19 to 0.9.20. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.19...v0.9.20) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/ee2facb8f2
* [ruby/rdoc] Fix call-seq for aliased method with similar namesPeter Zhu2022-07-181-0/+14
| | | | | | | | | | deduplicate_call_seq has a bug that skips call-seq for methods where the alias is a prefix of the method name. For example, if the alias name is "each" and the current method name is "each_line", then deduplicate_call_seq will skip all call-seq for "each_line" since it will believe that it is for the alias. https://github.com/ruby/rdoc/commit/1148988ccc
* [rubygems/rubygems] Fix upgrading RubyGems with a customized `Gem.default_dir`David Rodríguez2022-07-181-0/+18
| | | | https://github.com/rubygems/rubygems/commit/16d01f9486
* [Bug #18922] Normalize time at 24:00:00 UTCNobuyoshi Nakada2022-07-181-0/+2
|
* [rubygems/rubygems] Stop using `/dev/null` for silent ui for WASI platformYuta Saito2022-07-171-0/+6
| | | | | | | | WASI doesn't guarantee that `/dev/null` is present. So without this patch, we needed to mount host's `/dev` directory to WASI guest process to avoid `ENOTCAPABLE` error while `require "bundler/setup"` https://github.com/rubygems/rubygems/commit/e9187ab61f
* Fix tests for ABI incompatible binary error messagsNobuyoshi Nakada2022-07-171-2/+4
|
* [rubygems/rubygems] Drop support for old `Gem::Specification` versionsNobuyoshi Nakada2022-07-161-28/+8
| | | | | | | | `specification_version` method was added before RubyGems 1.0, and `add_runtime_dependency` method was before 1.2. These seem aged enough to remove. https://github.com/rubygems/rubygems/commit/92770c5cd9
* YJIT: Add send unit tests (#6143)Noah Gibbs2022-07-151-1/+167
| | | Add send unit tests for YJIT
* [ruby/reline] Use color name instead of code (integer) in dialog color APIsst00122022-07-162-21/+33
| | | | | | | | | | | | | | | | | | | | | | | | As pointed out in the [comment](https://github.com/ruby/reline/pull/413#issuecomment-1168033973), the code is actually a control sequence and not only for colors. To make the dialog color APIs safer to use, we should restrict its usages and extract away the bg/fg concept from the input. So in this commit, I made these changes: 1. The dialog_*_bg/fg_color APIs only takes and returns color names (symbol): - :black - :red - :green - :yellow - :blue - :magenta - :cyan - :white 2. Add additional dialog_*_bg/fg_color_sequence APIs to access the raw code. https://github.com/ruby/reline/commit/b32a977766
* Implement Objects on VWAPeter Zhu2022-07-152-2/+27
| | | | | | This commit implements Objects on Variable Width Allocation. This allows Objects with more ivars to be embedded (i.e. contents directly follow the object header) which improves performance through better cache locality.
* MJIT: Merge mjit_worker.c back to mjit.c (#6138)Takashi Kokubun2022-07-141-1/+1
| | | | | Since #6006, we no longer avoid executing GC on mjit_worker.c and thus there's no need to carefully change how we write code whether you're in mjit.c or mjit_worker.c anymore.