aboutsummaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* split each assert_nothing_raisednobu2018-11-231-3/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use File.expand_path("~username") instead of ENV["HOME"]naruse2018-11-221-2/+1
| | | | | | | | | File.expand_path("~username") uses getpwnam() independently from Dir.home. [Bug #15324] From: Chris Seaton <chris@chrisseaton.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert r63030nobu2018-11-221-1/+3
| | | | | | | * array.c (rb_ary_collect): no longer splat sole array for lambda. [ruby-core:89734] [Bug #15285] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io + socket: make pipes and sockets nonblocking by defaultnormal2018-11-224-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | All normal Ruby IO methods (IO#read, IO#gets, IO#write, ...) are all capable of appearing to be "blocking" when presented with a file description with the O_NONBLOCK flag set; so there is little risk of incompatibility within Ruby-using programs. The biggest compatibility risk is when spawning external programs. As a result, stdin, stdout, and stderr are now always made blocking before exec-family calls. This change will make an event-oriented MJIT usable if it is waiting on pipes on POSIX_like platforms. It is ALSO necessary to take advantage of (proposed lightweight concurrency (aka "auto-Fiber") or any similar proposal for network concurrency: https://bugs.ruby-lang.org/issues/13618 Named-pipe (FIFO) are NOT yet non-blocking by default since they are rarely-used and may introduce compatibility problems and extra syscall overhead for a common path. Please revert this commit if there are problems and if I am afk since I am afk a lot, lately. [ruby-core:89950] [Bug #14968] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Enable refinements at Object#respond_to?nobu2018-11-221-2/+2
| | | | | | | | [Feature #15327] [Fix GH-2020] From: osyo-manga <manga.osyo@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Enable refinements to public_send.nobu2018-11-221-0/+33
| | | | | | | | [Feature #15326] [Fix GH-2019] From: manga_osyo <manga.osyo@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Proc#<< and Proc#>>nobu2018-11-222-22/+28
| | | | | | [Feature #6284] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: Support any callable when composing Procsnobu2018-11-222-6/+31
| | | | | | | | | | | | | | | | | | * proc.c (proc_compose): support any object with a call method rather than supporting only procs. [Feature #6284] * proc.c (compose): use the function call on the given object rather than rb_proc_call_with_block in order to support any object. * test/ruby/test_proc.rb: Add test cases for composing Procs with callable objects. * test/ruby/test_method.rb: Add test cases for composing Methods with callable objects. From: Paul Mucur <paul@altmetric.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: Implement Method#* for Method compositionnobu2018-11-221-0/+34
| | | | | | | | | | | * proc.c (rb_method_compose): Implement Method#* for Method composition, which delegates to Proc#*. * test/ruby/test_method.rb: Add test cases for Method composition. From: Paul Mucur <mudge@mudge.name> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: Implement Proc#* for Proc compositionnobu2018-11-221-0/+51
| | | | | | | | | | | * proc.c (proc_compose): Implement Proc#* for Proc composition, enabling composition of Procs and Methods. [Feature #6284] * test/ruby/test_proc.rb: Add test cases for Proc composition. From: Paul Mucur <mudge@mudge.name> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert "test_gem_remote_fetcher.rb: give up testing MJIT here"k0kubun2018-11-221-4/+0
| | | | | | | | This reverts commit d12bcfc186f2aea5e83f2f59716958ea12b5c937. pause on --jit-wait looks not working... I'll fix that first. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_gem_remote_fetcher.rb: give up testing MJIT herek0kubun2018-11-211-0/+4
| | | | | | | | | | because we can't configure timeout for remote fetcher. We've sometimes hit timeout. https://app.wercker.com/ruby/ruby/runs/mjit-test2/5bf5213c183106002857d355?step=5bf530de63e94600071b0785 https://app.wercker.com/ruby/ruby/runs/mjit-test2/5be3d719567ae90007681ed6?step=5be43b3887436a0006d00d21 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merge master branch from rubygems/rubygems upstream.hsbt2018-11-21100-187/+191
| | | | | | | | | | | | | * Enable Style/MethodDefParentheses in Rubocop https://github.com/rubygems/rubygems/pull/2478 * Enable Style/MultilineIfThen in Rubocop https://github.com/rubygems/rubygems/pull/2479 * Fix required_ruby_version with prereleases and improve error message https://github.com/rubygems/rubygems/pull/2344 * Fix bundler rubygems binstub not properly looking for bundler https://github.com/rubygems/rubygems/pull/2426 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Skip known MJIT random test failuresk0kubun2018-11-202-0/+9
| | | | | | | Let me silence this until I have time to work on them, and make the CI usable for testing other features. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.ac: disable native-fiber for MinGWk0kubun2018-11-203-7/+0
| | | | | | | | | | | | | | | | because it had already been SEGV-ed in pull request'S CI https://ci.appveyor.com/project/ruby/ruby/builds/20427065/job/32oahrcd58b8ubb1 and has never worked on trunk either. Please make sure it does not SEGVs on your MinGW environment or pull request before enabling native fiber on MinGW. appveyor.yml: reverted commits to make CI green with native fiber test/excludes/_appveyor/msys2/TestArray.rb: ditto test/excludes/_appveyor/msys2/TestEnumerable.rb: ditto test/excludes/_appveyor/vs/TestArray.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* appveyor.yml: do not undefine everything [ci skip]k0kubun2018-11-201-1/+1
| | | | | | | | https://ci.appveyor.com/project/ruby/ruby/builds/20432223/job/yhwbku8dg2s40e9e C:/projects/ruby/test/lib/test/unit.rb:1004: warning: undefining `object_id' may cause serious problems C:/projects/ruby/test/lib/test/unit.rb:1004: warning: undefining `__send__' may cause serious problems git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* appveyor.yml: exclude TestEnumerable.rb on msys2k0kubun2018-11-203-0/+7
| | | | | | | because it SEGVs on setup like: https://ci.appveyor.com/project/ruby/ruby/builds/20431217/job/97no5h1gqv50k1vf git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/excludes/_appveyor: exclude AppVeyor killerk0kubun2018-11-201-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r65822shugo2018-11-201-37/+0
| | | | | | | | | | | | | | | | | | Because mon_initialized may be used to re-initialize copied objects intentionally. mon_initialize_spec.rb fails: 1) MonitorMixin#mon_initialize can be called in initialize_copy to get a new Mutex and used with synchronize ERROR ThreadError: already initialized /home/shugo/src/ruby/lib/monitor.rb:255:in `mon_initialize' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:19:in `initialize_copy' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `initialize_dup' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `dup' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `block (2 levels) in <top (required)>' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:4:in `<top (required)>' git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/monitor.rb: prevent to initialize MonitorMixin twiceshugo2018-11-201-0/+37
| | | | | | Suggested by Benoit Daloze. [ruby-core:88504] [Feature #15000] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* process.c: do not try to pause MJITk0kubun2018-11-201-2/+0
| | | | | | | | while child handler is disabled. trying to fix [Bug #15320] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_process.rb: Process.daemon seems irrelevant [ci skip]k0kubun2018-11-191-2/+2
| | | | | | | in the backtrace: http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r65807k0kubun2018-11-191-0/+2
| | | | | | | | | it didn't work. http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677 and skips broken tests for now. But this issue should be fixed soon. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: setbyte silently ignores upper bitsshyouhei2018-11-191-0/+11
| | | | | | | | The behaviour of String#setbyte has been depending on the width of int, which is not portable. Must check explicitly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_jit.rb: loosen output checkk0kubun2018-11-181-2/+1
| | | | | | | for interleaving between processes https://gist.github.com/ko1/ace0374825377b41628d4590b7377601 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_jit.rb: dump information to debug test failurek0kubun2018-11-181-4/+5
| | | | | | | debugging http://ci.rvm.jp/results/trunk-vm-asserts@silicon-docker/1466123 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit_worker.c: support MJIT in forked Ruby processk0kubun2018-11-181-2/+38
| | | | | | | | by launching MJIT worker thread in child Ruby process. See the comment before `mjit_child_after_fork` for details. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_jit.rb: fix typo [ci skip]k0kubun2018-11-181-1/+1
| | | | | | we don't have such VM register git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/mkmf/base.rb: use CC_WRAPPER same as the toplevelnobu2018-11-171-0/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/excludes/_wercker: remove obsoleted pipeline namek0kubun2018-11-164-0/+0
| | | | | | | | | from excludes directory names. test-mjit-wait / test-mjit are combined and distributed as mjit-test1 and mjit-test2 now. So the subdirectory names are changed to option names, --jit and --jit-wait. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* appveyor.yml: give up running test_push_over_ary_maxk0kubun2018-11-161-0/+3
| | | | | | | | | because separately running it without -j didn't work. Revert "appveyor.yml: run memory-exchausting test separately" This reverts commit r65703. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Test for undef'ed method in class hierachyk0kubun2018-11-161-1/+1
| | | | | | | | | This probably should have been `#bar` on the instance of class `Undef2` all along [Fix GH-2015] From: Alex Snaps <alex.snaps@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* pack.c: refine warningnobu2018-11-161-0/+7
| | | | | | | * pack.c (unknown_directive): refine warning message at unknown directive in unpack too, and quote unprintable characters. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_ftp.rb: loosen another timeout requirementk0kubun2018-11-141-2/+2
| | | | | | | for Travis osx. https://travis-ci.org/ruby/ruby/jobs/454864155 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_ftp.rb: loosen timeout for Travis osxk0kubun2018-11-141-4/+4
| | | | | | https://travis-ci.org/ruby/ruby/jobs/454798071 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_gem_stream_ui.rb: loosen timeout for --jit-waitk0kubun2018-11-141-4/+5
| | | | | | https://app.wercker.com/ruby/ruby/runs/mjit-test2/5beba9be183106002852f8a6?step=5bebc1a087436a0006f94a22 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/excludes/../TestWEBrickUtils.rb: exclude unstable testk0kubun2018-11-133-0/+3
| | | | | | | | | for now. This seems to get unstable after r65691. test/excludes/_travis/osx: renamed from test/excludes/_travis because it's only for osx builds. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Pathname: Have #relative_path_from accept String argument.marcandre2018-11-131-1/+2
| | | | | | [Fix GH-1975] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_function.rb: loosen delta boundaryk0kubun2018-11-131-1/+1
| | | | | | | | | | | | | | | | | | On osx build https://travis-ci.org/ruby/ruby/jobs/454309945, ``` 1) Failure: Fiddle::TestFunction#test_nogvl_poll [/Users/travis/build/ruby/ruby/test/fiddle/test_function.rb:95]: slept amount of time. Expected |200 - 322| (122) to be <= 100. ``` but it succeeds on my macOS machine as is. So it seems that the boundary is just too strict and prone to random failure by overload. To make osx Travis build usable, let me loosen the delta requirement. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* appveyor.yml: run memory-exchausting test separatelyk0kubun2018-11-131-1/+0
| | | | | | | | r65690 had no impact https://ci.appveyor.com/project/ruby/ruby/builds/20253561/job/p5u235m8xx85t9o5. Gave up to solve the issue inside the test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* date_core.c: respect COMPLEX_DAT bitnobu2018-11-131-0/+8
| | | | | | | * ext/date/date_core.c (d_lite_marshal_load): respect COMPLEX_DAT bit in the pre-allocated structure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* date_core.c: keep COMPLEX_DAT bitnobu2018-11-131-0/+8
| | | | | | | | * ext/date/date_core.c (d_lite_initialize_copy): do not change COMPLEX_DAT bit, as the structure does not change. initialize member-wise instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_array.rb: try to avoid NoMemoryError on AppVeyork0kubun2018-11-131-0/+1
| | | | | | | | | | We somehow hit NoMemoryError twice on that place. https://ci.appveyor.com/project/ruby/ruby/builds/20224556/job/hlgt963e0cgjbj3c https://ci.appveyor.com/project/ruby/ruby/builds/20250696/job/gm559bu2jbd6youm Let me try firing GC here. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Export rb_flo_div_flo for MJITnobu2018-11-121-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* erb.rb: warn invalid trim_mode [Misc #15294]k0kubun2018-11-121-0/+22
| | | | | | From: Justin Collins <justin@presidentbeef.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix a typo [ci skip]nobu2018-11-111-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Make rubygems follow the upstream of psychnobu2018-11-111-20/+20
| | | | | | And merge psych again. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert "Merge psych from upstream."mame2018-11-101-20/+20
| | | | | | | | This reverts commit db3101ff301b8e6f52170df0891f4fc35579354f. This caused build error: http://ci.rvm.jp/results/trunk-test@ruby-sky3/1452708 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merge psych from upstream.hsbt2018-11-101-20/+20
| | | | | | * https://github.com/ruby/psych/pull/378 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Get rid of setting SCRIPT_LINES__ by AST.parsenobu2018-11-091-0/+14
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e