aboutsummaryrefslogtreecommitdiffstats
path: root/tool
Commit message (Collapse)AuthorAgeFilesLines
* Specify explicit separator not to be affected by $;Nobuyoshi Nakada2020-03-081-1/+1
|
* Fix rbinstall bugs (#2930)David Rodríguez2020-03-081-7/+6
| | | | | | | | | | | | | | | | * Fix incorrect calls to `Gem.ensure_gem_subdirectories` This method doesn't take keyword args. * Remove stuff no longer necessary Now `Gem.ensure_gem_subdirectories` is doing its job, so some stuff is no longer needed. * Use the proper method for default gems * Respect DESTDIR when creating rubygems folder layout * Use `Gem.default_specifications_dir`
* tool/lib/test/unit: support TESTS='-- -ext-' again卜部昌平2020-03-041-1/+1
| | | | | | | There is a test directory named test/-ext-. Because this directry starts with a hyphen, we have to cheat test/unit in order for it to run the tests underneath. TESTS='-- -ext' worked for a long time. Let's not break that maneuver.
* Narrow the check target.Koichi Sasada2020-03-041-1/+4
| | | | | Call GC.verify_internal_consistency only for Gem related test on i386-solaris.
* Limit the debug code conditon so that it runs only under i386-solarisYusuke Endoh2020-03-031-1/+1
|
* add debug code for SolarisKoichi Sasada2020-03-031-0/+1
| | | | | Check heap consistency after each test to debug. https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-master/log/20200303T012406Z.fail.html.gz
* show backtrace.Koichi Sasada2020-03-011-1/+5
| | | | | assert_nothing_raised doesn't show the backtrace if an exception is thrown in a block. This patch shows this backtrace.
* respect --test-order=randomKoichi Sasada2020-02-283-6/+15
| | | | | Now --test-order=random is simply ignored. This patch respect this option.
* Fix wrong RegExp.Vít Ondruch2020-02-281-1/+1
| | | | | The missing `\` in PR #2922 causes the default gems to be installed from the .gem packages instead from the expanded sources.
* MiniTest::Unit.options has default :seedKoichi Sasada2020-02-272-2/+1
| | | | | | | | MiniTest::Unit (superclass of Test::Unit::Runner) does not has default seed parameter, but assigned after initializing. However some tests use MiniTest::Unit without setup of seed option and it cases unexpected test failures. To solve this issue, add default seed parameter 42.
* `srand($seed)` at the beginning of each testKoichi Sasada2020-02-272-0/+3
| | | | | | To avoid `srand(0)` effect in the other tests, call `srand($seed)` at the beginning of each test (setup). [Feature #16655]
* Revert "`srand($seed)` at the beginning of each test"Koichi Sasada2020-02-271-3/+0
| | | | | This reverts commit 7c1553e91db07fed4fed3287b50304f1c69a685d. It breaks some tests.
* `srand($seed)` at the beginning of each testKoichi Sasada2020-02-271-0/+3
| | | | | | To avoid `srand(0)` effect in the other tests, call `srand($seed)` at the beginning of each test (setup). [Feature #16655]
* don't ignore `--seed` optionKoichi Sasada2020-02-271-2/+13
| | | | | | | `--seed N` option is just ignored so respect this option. [Feature #16655] Also making "Run options" display pretty.
* Internalize rb_mjit_unit definition againTakashi Kokubun2020-02-262-2/+2
| | | | Fixed a TODO in b9007b6c548f91e88fd3f2ffa23de740431fa969
* Simplified single script caseNobuyoshi Nakada2020-02-261-1/+1
| | | | | Simply use `File.basename` to remove the directory name (and suffix), instead of `gsub` which can replace unintended parts.
* Cache destination dir.Vít Ondruch2020-02-261-1/+2
| | | | | It is not necessary to strip the `destdir` prefix every iteration, when it can be done just once.
* Properly detect mode for binaries.Vít Ondruch2020-02-261-1/+1
| | | | .gemspec files specifies not just `bin`, but also other directories.
* Use class variable `@src_dir` instead of local `path`.Vít Ondruch2020-02-261-3/+2
| | | | | | The local `path` variable does not provide any additional value and was kept around just for clarity for easier review of the `extrac_files` method move.
* Use local `{dir,prog,data}_mode` variables instead of globals.Vít Ondruch2020-02-261-2/+2
| | | | | This just gets the `RbInstall::DirPackage` closer by functionality to `Gem::Package`.
* Use `$script_mode` instead of `$prog_mode` for gem inistallation.Vít Ondruch2020-02-261-1/+1
| | | | | | | | | | | | | | | rbinstall is using `$script_mode` and `$prog_mode`. However, the `$script_mode` fallbacks to `$prog_mode` if not provided. However, RubyGems do not distinguish between `$script_mode` and `$prog_mode`: https://github.com/rubygems/rubygems/blame/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L196 https://github.com/rubygems/rubygems/blame/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L515 https://github.com/rubygems/rubygems/blame/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L543 Comparing the usage of `$script_mode` and `$prog_mode`, it seems that the `$script_mode` should be used where RubyGems expects `$prog_mode`.
* Use `Gem::Package` like object instead of monkey patching.Vít Ondruch2020-02-261-21/+27
| | | | | | | | 1. This is similar to what RubyGems does and it is less magic [[1]]. 2. It avoids deprecated code paths in RubyGems [[2]]. [1]: https://github.com/rubygems/rubygems/blob/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L151 [2]: https://github.com/rubygems/rubygems/blob/92892bbc3adba86a90756c385433835f6761b8da/lib/rubygems/installer.rb#L187
* Share extracted bundled gems with gems for bundlerNobuyoshi Nakada2020-02-251-3/+6
| | | | | | Extract bundled gems under ".bundle/gems" and get rid of duplication which cause constant redefinition warnings at `test-all` after `extract-gems` and `test-bundler`.
* Try with and without "v" prefix for numeric tagNobuyoshi Nakada2020-02-241-12/+3
|
* Retry checking out the versionNobuyoshi Nakada2020-02-241-1/+5
| | | | rss 0.2.9 is tagged without the "v" prefix.
* Introduce disposable call-cache.Koichi Sasada2020-02-223-11/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch contains several ideas: (1) Disposable inline method cache (IMC) for race-free inline method cache * Making call-cache (CC) as a RVALUE (GC target object) and allocate new CC on cache miss. * This technique allows race-free access from parallel processing elements like RCU. (2) Introduce per-Class method cache (pCMC) * Instead of fixed-size global method cache (GMC), pCMC allows flexible cache size. * Caching CCs reduces CC allocation and allow sharing CC's fast-path between same call-info (CI) call-sites. (3) Invalidate an inline method cache by invalidating corresponding method entries (MEs) * Instead of using class serials, we set "invalidated" flag for method entry itself to represent cache invalidation. * Compare with using class serials, the impact of method modification (add/overwrite/delete) is small. * Updating class serials invalidate all method caches of the class and sub-classes. * Proposed approach only invalidate the method cache of only one ME. See [Feature #16614] for more details.
* VALUE size packed callinfo (ci).Koichi Sasada2020-02-224-15/+14
| | | | | | | | | | | | | | | | | | | | Now, rb_call_info contains how to call the method with tuple of (mid, orig_argc, flags, kwarg). Most of cases, kwarg == NULL and mid+argc+flags only requires 64bits. So this patch packed rb_call_info to VALUE (1 word) on such cases. If we can not represent it in VALUE, then use imemo_callinfo which contains conventional callinfo (rb_callinfo, renamed from rb_call_info). iseq->body->ci_kw_size is removed because all of callinfo is VALUE size (packed ci or a pointer to imemo_callinfo). To access ci information, we need to use these functions: vm_ci_mid(ci), _flag(ci), _argc(ci), _kwarg(ci). struct rb_call_info_kw_arg is renamed to rb_callinfo_kwarg. rb_funcallv_with_cc() and rb_method_basic_definition_p_with_cc() is temporary removed because cd->ci should be marked.
* Fixed net-pop, smtp, protocol and imap task for sync toolHiroshi SHIBATA2020-02-211-8/+20
|
* Fixed net-ftp sync task and resync from standalone repoHiroshi SHIBATA2020-02-211-2/+5
|
* Promote net-http to the default gems.Hiroshi SHIBATA2020-02-211-0/+8
| | | | | test/net/http/test_https.rb: rename fixture methods to read_fixture because it conflicts with test-unit gem.
* Promote net-ftp to default gemsHiroshi SHIBATA2020-02-211-0/+5
|
* Promote net-imap to the default gemsHiroshi SHIBATA2020-02-201-0/+5
|
* Avoid jumping to a wrong destinationTakashi Kokubun2020-02-181-2/+7
| | | | when the next insn is already compiled by former branches.
* Promote net-protocol to default gemsHiroshi SHIBATA2020-02-171-0/+5
|
* Workaround for bison provided by scoop on mswin environmentHiroshi SHIBATA2020-02-151-1/+1
|
* Promote English to the default gems.Hiroshi SHIBATA2020-02-131-0/+2
|
* Promote tmpdir to the default gemsHiroshi SHIBATA2020-02-121-0/+2
|
* Promote tempfile to the default gems.Hiroshi SHIBATA2020-02-121-0/+2
|
* Promote weakref to the default gemsHiroshi SHIBATA2020-02-111-1/+3
|
* Expose assert_no_memory_leak for weakrefHiroshi SHIBATA2020-02-112-45/+45
|
* Expose assert_normal_exit for weakrefHiroshi SHIBATA2020-02-112-106/+106
|
* Don't use upstream ext/readline/dependaycabta2020-02-101-0/+1
|
* more on NULL versus functions.卜部昌平2020-02-071-3/+3
| | | | | | Function pointers are not void*. See also ce4ea956d24eab5089a143bba38126f2b11b55b6 8427fca49bd85205f5a8766292dd893f003c0e48
* Stop auto runnerNobuyoshi Nakada2020-02-071-11/+13
| | | | Auto runner should not run in forked processes in separated tests.
* No crafted backtrace for SystemExitNobuyoshi Nakada2020-02-071-2/+2
| | | | As SystemExit is ignored, it is just useless.
* Fix readline-ext syncaycabta2020-02-061-2/+4
|
* Fixed the output from separated test in parallel testNobuyoshi Nakada2020-02-061-1/+4
| | | | | Redirect the output of separated child process to `MiniTest::Unit.output`.
* Add separated assertion countNobuyoshi Nakada2020-02-061-9/+10
|
* do not assume GCC for __builtin_setjmp卜部昌平2020-02-061-1/+1
| | | | | | Namely recent Sun C compiler has this function, and is not a GCC. Meanwhile the code without RUBY_JMP_BUF assumes GCC. We have to define the macro when we detect __builtin_setjmp for non-GCC compilers.
* Fixed the output from separated test in parallel testNobuyoshi Nakada2020-02-051-1/+1
| | | | | | To output to the STDOUT of the parent process according to the parallel test protocol, should send to the `MiniTest::Unit.output` instead of each own STDOUT.