Граф коммитов

86 Коммитов

Автор SHA1 Сообщение Дата
Yusuke Endoh 409e4ab740 tool/lib/test/unit/parallel.rb: fail explicitly when failing to get io
`(ulimit -n 30; make test-tool)` fails with unexplicit message:
"undefined method `write' for nil:NilClass" due to lack of stdout.

This change makes it explicit.  [Bug #5577]
2019-12-03 17:26:12 +09:00
David Rodríguez a2fc6a51dd [ruby/fileutils] Fix test failure under ruby 2.4
`Exception#full_message` is only defined on ruby 2.5.0 and above.

https://github.com/ruby/fileutils/commit/a8968f41ed
2019-12-01 08:23:05 +09:00
David Rodríguez fa0f3eff22 [ruby/fileutils] Fix error printing test failure
`exception_details` is not defined anywhere.

This commit fixes the following test crash in ruby 2.4

```
Error: test_assert_output_lines(TestFileUtils): NoMethodError: undefined method `exception_details' for #<TestFileUtils:0x00005556ef699178>
```

And replaces it with an actual test failure:

```
[Test::Unit::CoreAssertions::MiniTest::Assertion] exception expected, not #<NoMethodError: undefined method `full_message' for #<RuntimeError: ok>
Did you mean?  message>.
```

https://github.com/ruby/fileutils/commit/2f38ba6e82
2019-12-01 08:22:37 +09:00
Jeremy Evans c5c05460ac Warn on access/modify of $SAFE, and remove effects of modifying $SAFE
This removes the security features added by $SAFE = 1, and warns for access
or modification of $SAFE from Ruby-level, as well as warning when calling
all public C functions related to $SAFE.

This modifies some internal functions that took a safe level argument
to no longer take the argument.

rb_require_safe now warns, rb_require_string has been added as a
version that takes a VALUE and does not warn.

One public C function that still takes a safe level argument and that
this doesn't warn for is rb_eval_cmd.  We may want to consider
adding an alternative method that does not take a safe level argument,
and warn for rb_eval_cmd.
2019-11-18 01:00:25 +02:00
Yusuke Endoh c02de30efb tool/lib/leakchecker.rb: show the code location that allocated leaked fd
by using ObjectSpace.trace_object_allocations.

`make test-all LEAK_CHECKER_TRACE_OBJECT_ALLOCATION=true` will print not
only leaked fds but also where it was created.
2019-11-12 01:47:18 +09:00
Kazuhiro NISHIYAMA 50bc7e7e9f
Add debug print
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2380788
```
test_all             #<Thread:0x000055b6c8e9fca8@/tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:42 run> terminated with exception (report_on_exception is true):
<internal:pack>:134:in `pack': no implicit conversion of false into String (TypeError)
	from /tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:160:in `_report'
	from /tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:45:in `block in _run_suite'
```
2019-11-09 15:20:52 +09:00
Hiroshi SHIBATA 1c03026ea3 Try to run assert_output_unchanged with racc tests 2019-10-31 08:39:48 +09:00
Yusuke Endoh 1820aeeeb2 tool/lib/minitest/unit.rb: add "omit" as an alias to "skip"
According to rdoc, test-unit provides omit instead of skip.
This is a compatibility layer to make it work with both test-unit and
tool/lib/minitest.
2019-10-29 13:15:09 +09:00
Nobuyoshi Nakada 601f1fb456
Catch syntax error even if fatal 2019-10-23 02:05:28 +09:00
Nobuyoshi Nakada ed3333f873
make-snapshot: Regexp#match raises on nil now 2019-10-22 21:05:52 +09:00
Nobuyoshi Nakada f8fb51c976
Revert "alias assert_raise_message for compatibility with test-unit"
This reverts commit 43015275b9.

`assert_raise_message` in test-unit is different from
`assert_raise_with_message`.  It checks the exception message
only, but not the exception class,
2019-10-16 21:00:36 +09:00
Nobuyoshi Nakada 43015275b9
alias assert_raise_message for compatibility with test-unit 2019-10-16 17:44:51 +09:00
Nobuyoshi Nakada b7ae26e2ee
vcs.rb: fix to export git-svn version
* Use the given branch name instead of implicit 'HEAD".
* Format like as git-svn when `from` or `to` is SVN revision
  number.
2019-10-03 19:07:48 +09:00
Hiroshi SHIBATA c14755e9ca
[ruby/fileutils] improve the compatibility of minitest
https://github.com/ruby/fileutils/commit/f16f5a0dd6
2019-10-03 18:32:21 +09:00
卜部昌平 84fc1de512 use bind_call for test-all --gc-stress
This one allocation of Method object is worth avoiding.  We don't
want to test UnboundMethod#bind right here.  GC need not run.
2019-10-03 15:24:09 +09:00
Koichi Sasada 84cbce3d88 Enable checkers on parallel test.
parallel test (`make test-all TESTS=-j8`) runs tests on specified
number of processes. However, some test checkers written in
`runner.rb` are not loaded. This fix enable these checkers on
parallel tests.

See also: https://github.com/ruby/ruby/pull/2508
2019-10-02 16:23:00 +09:00
Hiroshi SHIBATA 15606963de expose assert_raise and assert_join_threads 2019-10-01 22:19:18 +09:00
Koichi Sasada 945560008f Revert "introduce debug check."
This reverts commit c3b84f2de8.
Backtrace shows it is before running tests and debug check was
nonsense.
2019-09-30 17:59:10 +09:00
Koichi Sasada c3b84f2de8 introduce debug check.
There are random failures:

> lib/rubygems/core_ext/kernel_require.rb:61:in `require':
> wrong number of arguments (given 1, expected 0) (ArgumentError)
http://ci.rvm.jp/results/trunk-jemalloc@silicon-docker/2275159

To check this failure, I added a small check code.
2019-09-30 17:23:36 +09:00
Koichi Sasada bf8d7d9c1d show RUBY_ISEQ_DUMP_DEBUG envval if given. 2019-09-30 15:35:22 +09:00
Nobuyoshi Nakada 03284fb911
assert_in_out_err should use FailDesc too 2019-09-27 21:07:53 +09:00
Nobuyoshi Nakada 6cad064424
Try to fetch commits notes to the source tree automatically
[Bug #16167]
2019-09-15 16:23:33 +09:00
Nobuyoshi Nakada 585b15d75d
make-snapshot: no merge commits in ChangeLog
Parents commit hashs in logs of merge commits are abbreviated to
necessary length depending on the repositories.  Exclude merge
commits from ChangeLog to make it stable.
2019-09-15 11:22:32 +09:00
Nobuyoshi Nakada df4a4bd88c
make-snapshot: export ChangeLog from srcdir 2019-09-15 11:22:32 +09:00
Nobuyoshi Nakada e9c7fc7ca9
Continue to export even if no notes/commits
Just exporting may not imply exporting ChangeLog which needs
notes/commits.  [Bug #16167]
2019-09-14 23:50:45 +09:00
Nobuyoshi Nakada 5a6954ba74
Suppress detached head warning 2019-09-08 00:22:24 +09:00
Nobuyoshi Nakada 3fafc549ba
Fix error when checking file modified with git-svn 2019-09-07 11:38:39 +09:00
Nobuyoshi Nakada 5118aa2d58
Use `git describe --contains` for tags 2019-09-07 11:38:38 +09:00
Nobuyoshi Nakada 3890c9eeee
Added more debug outputs from VCS::GIT 2019-09-07 11:38:38 +09:00
Nobuyoshi Nakada 799de9122e
Separated VCS.define_options for common VCS options 2019-09-07 11:38:38 +09:00
Nobuyoshi Nakada 055b441093
VCS::GIT no longer accepts remote repository 2019-09-06 22:15:36 +09:00
Yusuke Endoh 41b7c335d3 Revert "Add a temporal stack dumper for debugging on trunk-mjit"
This reverts commit 433c9c00d9.

Successfully captured some traces, and
3b60e5e6bc seems to fix the issue.
2019-09-06 13:04:36 +09:00
Yusuke Endoh 433c9c00d9 Add a temporal stack dumper for debugging on trunk-mjit
This must be definitely removed after we collect the stack traces :-)
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2245710
2019-09-05 22:16:21 +09:00
Nobuyoshi Nakada 9f59d30daa
Separate VCS::DEBUG_OUT 2019-09-05 00:33:49 +09:00
Nobuyoshi Nakada 542a1ade80
--date=iso-local does not work with old git 2019-09-03 11:33:29 +09:00
Nobuyoshi Nakada d83ade1db5
Use -z option for git-log 2019-09-03 00:33:02 +09:00
Nobuyoshi Nakada 6a9c5ef186
Extract git commit log as raw format like git-svn for ChangeLog 2019-09-02 23:28:21 +09:00
Nobuyoshi Nakada fd4aad6d41
Support packaging different branch/tag 2019-09-01 23:22:50 +09:00
Nobuyoshi Nakada d8260bc872
Fetch commit notes 2019-09-01 23:22:49 +09:00
Nobuyoshi Nakada ff7c95dfd9
Support git tags 2019-09-01 23:22:49 +09:00
Nobuyoshi Nakada d7aa1260b6
Remove files/directories for git/github which are committed [ci skip] 2019-08-31 14:45:57 +09:00
Nobuyoshi Nakada e593d5b31a
Suppress uninitialized instance variable warnings [ci skip] 2019-08-30 11:23:21 +09:00
Nobuyoshi Nakada 55f496c89b
Support revision in git-svn log 2019-08-30 11:23:21 +09:00
Nobuyoshi Nakada 1191049436
Updated comment of VCS#get_revisions [ci skip] 2019-08-30 11:23:21 +09:00
Nobuyoshi Nakada c9dc569a94
Ensure the last and changed revisions as Integers 2019-08-28 12:32:43 +09:00
Nobuyoshi Nakada 2cd68a38d9
Short revision of SVN should be an Integer 2019-08-27 23:43:41 +09:00
Nobuyoshi Nakada 48f1a38f23
Limit ChangeLog entries
Since the previous release date, when the starting message is not
found.
2019-08-26 18:27:17 +09:00
Nobuyoshi Nakada c775ab5e28
`local_path?` is a class method [ci skip] 2019-08-25 18:27:57 +09:00
Yusuke Endoh cc6fe15241 tool/lib/vcs.rb: explicitly fail when notes/commits is not available 2019-08-25 16:59:45 +09:00
Kazuhiro NISHIYAMA 1b03d2d76b
Revert workaround 2019-08-25 13:58:30 +09:00