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

604 Коммитов

Автор SHA1 Сообщение Дата
k0kubun 16d6a91a5d Revert "using_spec.rb: skip broken test for MinGW for now"
This reverts commit 110273c534.

Try this with r66087

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-29 06:51:08 +00:00
k0kubun 110273c534 using_spec.rb: skip broken test for MinGW for now
ko1 is fixing this and he suggested to skip it for now

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-28 01:53:46 +00:00
eregon 50441014ff Update to ruby/spec@cdd6ff7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 20:38:57 +00:00
eregon eae7fbb682 Update to ruby/mspec@820486a
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 20:38:20 +00:00
hsbt fc9509bdd2 Merge bundler-2.0.0.pre.2 from upstream.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 12:08:19 +00:00
ko1 b02f3731b6 restore using_spec.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 05:42:33 +00:00
ko1 a9ace57505 enable another assertion
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 03:12:58 +00:00
ko1 eea3fe0a3b enable at least one behavior
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 00:44:14 +00:00
ko1 b0ba0595fa to debug https://ci.appveyor.com/project/ruby/ruby/builds/20566898/job/hda29416yal9h6hn use binary search
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 00:39:46 +00:00
hsbt a943328194 Use stub executables generated by RubyGems istead of original executables.
It resolved the conflict issues when invoking `gem i rdoc` and the binstub
issues with Bundler and Rails.

  [Bug #5060][ruby-core:38257][Fix GH-2023]

  * https://github.com/rubygems/rubygems/pull/2338
  * https://github.com/heroku/heroku-buildpack-ruby/issues/829

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-25 01:20:00 +00:00
naruse 69c59f4fd0 Wait accept is ready also on Solaris
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20181121T212405Z.diff.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-22 11:03:19 +00:00
normal 6a65f2b1e4 io + socket: make pipes and sockets nonblocking by default
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
2018-11-22 08:46:51 +00:00
nobu 16a642c331 Enable refinements at Object#respond_to?
[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
2018-11-22 08:29:02 +00:00
nobu 633fef6dec Enable refinements to public_send.
[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
2018-11-22 07:53:07 +00:00
k0kubun 0017e3867e Skip known MJIT random test failures
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
2018-11-20 15:46:09 +00:00
shyouhei 412b6b5b02 io.c: ungetbyte silently ignores upper bits
The behaviour of IO#ungetbyte has been depending on the width of
Fixnums.  Fixnums should be invisible nowadays.  It must be a
bug. Fix [Bug #14359]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19 08:10:48 +00:00
hsbt 3ec3d7d943 Switch to 2-0-stable branch of bundler/bundler repository from our fork repository.
https://github.com/bundler/bundler/tree/2-0-stable

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-16 23:27:37 +00:00
k0kubun 5a10e835ae erb/new_spec.rb: fix spec failure by other specs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 07:58:29 +00:00
nobu 8ad336b5c5 Adopt [Misc #15294]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 07:32:21 +00:00
hsbt 8f4aa4fd2a Merge Bundler-2.0.0.pre1 from upstream.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 00:53:15 +00:00
hsbt e6bf368cac Removed VCR cassettes files for reducing package size.
[Bug #14219]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-06 20:47:09 +00:00
nobu 125e9ef747 Refine Timezone class in test-spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-04 02:02:28 +00:00
hsbt 2fbbbba5bd Merge upstream changes from 2-0-stable branch of bundler/bundler.
* It update bundler 2 mode to bundler 3.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-04 01:14:48 +00:00
hsbt 59c8d50653 Added bundler as default gems. Revisit [Feature #12733]
* bin/*, lib/bundler/*, lib/bundler.rb, spec/bundler, man/*:
    Merge from latest stable branch of bundler/bundler repository and
    added workaround patches. I will backport them into upstream.
  * common.mk, defs/gmake.mk: Added `test-bundler` task for test suite
    of bundler.
  * tool/sync_default_gems.rb: Added sync task for bundler.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 23:07:56 +00:00
marcandre 55961ac9d7 Revert "Matrix: Add #reflexive? method. [Fix GH-1730]"
This reverts commit 19fe6552c4.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 17:51:56 +00:00
usa c4cc4725ec Remove wrong spec.
[Bug#15067] [ruby-core:88828]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-01 05:19:16 +00:00
suke 5918f0a086 require fixtures/classes only when platform is windows.
* spec/ruby/library/win32ole/fixtures/classes.rb: remove rescue block
  because this file is required when platform is Windows.
* spec/ruby/library/win32ole/win32ole/_getproperty_spec.rb:
  fixtures/classes is required when platform is Windows
* spec/ruby/library/win32ole/win32ole/_invoke_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/codepage_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/connect_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/const_load_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/constants_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/create_guid_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/invoke_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/locale_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/new_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/ole_func_methods_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/ole_get_methods_spec.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 06:37:33 +00:00
suke c5491046ee Refactoring. remove Internet Explorer.
* spec/ruby/library/win32ole/win32ole/ole_methods_spec.rb: refactoring.
  remove Internet Explorer.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 06:16:18 +00:00
suke d6f55c7d42 use MSXML.DOMDocument instead of InternetExplorer.Application
* spec/ruby/library/win32ole/fixtures/event.xml use MSXML.DOMDocument
  instead of InternetExplorer.Application. InternetExplorer.Application
  is not available on some environments. Thanks to MSP-Greg (Greg L).
* spec/ruby/library/win32ole/win32ole_event/on_event_spec.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 06:11:30 +00:00
suke 6ce65875d0 use MSXML.DOMDocument instead of InternetExplorer.Application.
* spec/ruby/library/win32ole/win32ole_event/new_spec.rb: use
  MSXML.DOMDocument. InternetExplorer.Application is not available on
  some environments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 05:40:41 +00:00
suke ef929bc67b use Scripting.Dictionary instead of InternetExplorer.Application.
* spec/ruby/library/win32ole/win32ole/shared/setproperty.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some environments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 05:08:37 +00:00
suke 7f0aefec6a use Scripting.Dictionary instead of InternetExplorer.Application.
* spec/ruby/library/win32ole/win32ole/ole_put_methods_spec.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some enviroments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 04:38:49 +00:00
suke e9a1c8241a use Scripting.Dictionary instead of InternetExplorer.Application.
* spec/ruby/library/win32ole/win32ole/ole_methods_spec.rb: use Scripting
  Dictionary. InternetExplorer.Application is not available on some
  environments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 04:25:55 +00:00
suke 183b7e36c2 use Scripting.Dictionary instead of InternetExplorer.Application
* spec/ruby/library/win32ole/win32ole/ole_obj_help_spec.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some environments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 04:18:53 +00:00
suke d7d83fa0cf use Scripting.Dictionary instead of InternetExplorer.Application
* spec/ruby/library/win32ole/win32ole/ole_method_spec.rb: recuire in
  platform_is block.
* spec/ruby/library/win32ole/win32ole/ole_func_methods_spec.rb: ditto.
* spec/ruby/library/win32ole/win32ole/shared/ole_method.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some environments. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 03:48:17 +00:00
k0kubun 091c04df53 revert r65401
Because it does break Linux CI like:
https://gist.github.com/ko1/2c561f9185492f339cf7a763ea219e79

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 01:19:30 +00:00
suke b343a583af remove rescue block when win32ole is required
* spec/ruby/library/win32ole/fixtures/classes.rb: remove rescue block
  because this file is required on Windows only.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 01:08:42 +00:00
suke 5477d297ec use Scripting.Dictionary instead of InternetExplorer.Application
* spec/ruby/library/win32ole/win32ole/ole_func_methods_spec.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some environment. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-28 01:03:49 +00:00
suke 33a8b277dc use Scripting.Dictionary instead of InternetExplorer.Application.
* spec/ruby/library/win32ole/invoke_spec.rb: use Scripting.Dictionary
  instead of InternetExplorer.Application. InternetExplorer.Application
  is not available on some environment. Thanks to MSP-Greg (Greg L).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 23:37:58 +00:00
suke d6a9603eff use Scripting.Dictionary instead of InternetExplorer.Application for
_getproperty spec.

* spec/ruby/library/win32ole/_getproperty_spec.rb: use
  Scripting.Dictionary. InternetExplorer.Application is not available on
  some environment. (Thanks to MSP-Greg (Greg L))

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 23:21:29 +00:00
suke 35ca97e981 add WIN32OLESpecs::MSXML_AVAILABLE
* spec/ruby/library/win32ole/fixtures/classes.rb: add
WIN32OLESpecs::MSXML_AVAILABLE

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 22:50:08 +00:00
k0kubun 1346e39ce6 spec/../shared/exit.rb: move the mingw guard to here
from terminate_spec.rb, as suggested here:
c7220bd3de (commitcomment-31068714)

to guard other inclusions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 14:06:44 +00:00
k0kubun 090e2130d3 revert r65389 and r64993
and move retry logic to internal method

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 13:57:23 +00:00
k0kubun a7f0cbe9c8 ole_func_methods_spec.rb: apply r64993 retry
to this spec as well, since the same issue was reproduced here
https://ci.appveyor.com/project/ruby/ruby/builds/19842006/job/y35ae6bquf4t3x30

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 10:49:56 +00:00
eregon 3e6337b88b Update to ruby/spec@8b743a3
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 10:48:40 +00:00
eregon ecc707e233 Update to ruby/mspec@4729971
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 10:48:09 +00:00
nobu df0517dbc0 getifaddrs_spec.rb: `should` returned `nil` on success
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-23 15:29:01 +00:00
nobu 833ca7bd4f getifaddrs_spec.rb: allow no address
* spec/ruby/library/socket/socket/getifaddrs_spec.rb: allow no
  address for platform dependent failures.

  https://travis-ci.org/ruby/ruby/jobs/445126982#L2234-L2244

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-23 14:58:08 +00:00
marcandre bf6c9a5c6d Spec: Fix spec/ruby/core/array/reject_spec.rb & misc
Patch by @MSP-Greg.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-16 22:42:37 +00:00
nobu 5f9f9013da Add missing require
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-13 09:59:23 +00:00
normal 54ad3167e8 tests: support Linux kernels with CONFIG_IPV6=n
Detecting the presence of constants in C headers is insufficient,
as a Linux kernel can be built with CONFIG_IPV6=n

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-13 05:18:49 +00:00
k0kubun cf9cd06b78 kill_spec.rb: exclude spec unstable on MinGW
like r64991, until we get helpful error logs on worker death or the
unstability is fixed.

Since mspec worker randomly dies on MinGW, maybe it should have an
option to retry worker death.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-13 00:38:15 +00:00
k0kubun 1b8534e66b spec/.../ole_method.rb: retry WIN32OLERuntimeError
This part sometimes causes random failure like:
https://ci.appveyor.com/project/ruby/ruby/builds/19382723/job/bedc33p4nolcqkp6

Let me retry this to make CI stable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-10 11:58:40 +00:00
k0kubun 3f113219df spec: add comments to re-enable specs for MinGW [ci skip]
r64918 and r64988 should not be kept forever.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-10 11:39:46 +00:00
k0kubun c7220bd3de terminate_spec.rb: exclude unstable spec for MinGW
This spec seems to randomly kill mspec worker.
https://ci.appveyor.com/project/ruby/ruby/builds/19390874/job/wv1bsm8skd4e1pxl

To make CI stable, let me exclude this for MinGW until we get some logs
that help debugging or resolve that.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-10 11:35:58 +00:00
ko1 e94ede5a85 use `should include`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-09 06:18:28 +00:00
nobu fcf308e5fc Timezone at Time#+ and Time#-
* time.c (time_add): support for Timezone.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-08 04:03:32 +00:00
nobu ee58c638b8 Timezone support by Time [Feature #14850]
* strftime.c (rb_strftime): support timezone object by `%z`.

* time.c (time_init_1, time_new_timew, time_getlocaltime): accept
  timezone object as `off`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-08 02:35:31 +00:00
k0kubun 0f8a433cab add_spec.rb: skip unstable spec on mingw
This sometimes crashes mspec worker like
https://ci.appveyor.com/project/ruby/ruby/build/9806/job/37tx2atojy96227m

and it doesn't generate helpful output and it seems hard to fix it soon.
As AppVeyor is too unstable by too many factors, let me skip this
at least for a short term. until AppVeyor gets stable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-07 06:08:54 +00:00
shirosaki 29b2ea6b55 Revert search_convpath spec
Remove .name since SEGV on MinGW is fixed.
[ruby-core:89200]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-29 06:47:32 +00:00
eregon 38989c7621 Use String arguments for #search_convpath
* Otherwise it seems to SEGV on Windows, see
  f00bf24272 (commitcomment-30650955)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-26 09:32:09 +00:00
nobu ac17835782 Expand spec files to realpaths
* spec/mspec/lib/mspec/utils/script.rb (MSpecScript#entries): expand
  the given spec path to the realpath, not to require a library by
  realpath and symbolic link path from the spec file.

  reapply r64749 and r64751 overridden by r64830.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-25 23:31:22 +00:00
eregon e2d74af38b Update to ruby/mspec@2bca8cb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-25 18:47:17 +00:00
eregon e87fb88be8 Update to ruby/spec@241f9e7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-25 10:41:16 +00:00
eregon e59bf54b3a Update to ruby/mspec@3fb5112
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-25 10:40:39 +00:00
nobu ae0e98ce1d Skip a cleanup if new_ole failed
On Appveyor, WIN32OLE sometimes fails due to a system shutdown, and
`@ie` is not assigned.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-22 23:52:58 +00:00
marcandre 19fe6552c4 Matrix: Add #reflexive? method. [Fix GH-1730]
Adapted from a patch by Yilo

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-20 18:24:16 +00:00
nobu abe75149d1 Enumerable#to_h with block and so on
[Feature #15143]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-20 15:06:56 +00:00
nobu aefdd4e25f Lazy Enumerator reduce intermediate array creation
[ruby-core:87907] [Bug #14908] [Fix GH-1912]

From: Anmol Chopra <chopraanmol1@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-18 08:49:40 +00:00
nobu 3367daf716 Tests of Enumerator::Yielder#yield with multiple arguments
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-18 08:30:24 +00:00
marcandre c22b853737 Alias Struct#select as Struct#filter. Patch by Kenichi Kamiya.
[Fix GH-#1862] [#1784]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-16 04:00:14 +00:00
nobu 0d7facee42 get rid of newer syntax for old versions
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-15 11:45:31 +00:00
nobu 958817d50d Expand spec files to realpaths
* spec/mspec/lib/mspec/utils/script.rb (MSpecScript#entries): expand
  the given spec path to the realpath, not to require a library by
  realpath and symbolic link path from the spec file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-15 09:48:42 +00:00
nobu 257d00223d rid of warnings [Fix GH-1953]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-15 09:25:31 +00:00
normal 64b326c220 spec/ruby/library/socket/addrinfo: require for SocketSpecs
Otherwise, I get NameError when running these IPv6 tests individually
or in parallel.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-09 08:50:53 +00:00
eregon ebff0059f4 Add platform guards for AIX
* Most of these seem OS bugs.
* See https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20180905T103302Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-05 20:39:19 +00:00
eregon a140f157b9 Guard a few specs which ipv6_available?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-05 20:39:02 +00:00
nobu 3fa8d5ba7b Spec updates [Bug #15060] [Fix GH-1495]
From: MSP-Greg <greg.mpls@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-04 03:41:44 +00:00
eregon 8867f285da Tag a couple specs failing on AIX
* The rest seems OS bugs, MRI bugs or incomplete IPv6 implementation:
  https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20180828T103302Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-28 14:55:33 +00:00
eregon d36cd0b04d Update to ruby/spec@6fd9472
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-28 09:41:26 +00:00
eregon 8500714adc Rewrite Etc.sysconf spec to allow nil or Integer for all variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 19:08:38 +00:00
eregon 5ffa775fac SC_TZNAME_MAX can also be infinite
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 16:38:37 +00:00
svn 293ed16e64 * append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 16:22:22 +00:00
eregon 2dca35b9b1 Update to ruby/spec@007e908
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 16:22:21 +00:00
svn 58689fa747 * append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 14:49:57 +00:00
eregon 85d1a8ba3b Update to ruby/spec@a89819d
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 14:49:56 +00:00
svn cea7d04732 * append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 14:25:02 +00:00
eregon 8180b5bfc0 Update to ruby/spec@09fa86c
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 14:25:00 +00:00
eregon a641384815 Simplify guards, the behavior seems Linux-specific
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-27 10:12:41 +00:00
naruse 7710bdd120 Add AIX guards
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-24 22:32:07 +00:00
naruse 870af86245 Also skip on AIX
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-22 19:18:22 +00:00
eregon b448f23e21 Update to ruby/spec@dd828d6
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-21 22:01:34 +00:00
eregon 2aefb19888 Update to ruby/mspec@269f9cd
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-21 22:01:18 +00:00
eregon ec1af131c8 Only run the spec on Linux
* Other platforms seem to behave differently.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-21 20:28:45 +00:00
eregon 778964ba05 Revert r64483
* This reverts commit 12f624b673fd1bd1782f4c52e3b6c78d033e7b84:
 "Try 4 times for WIN32OLE specs"
* It was a machine problem, it needed to be rebooted.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-21 20:28:29 +00:00
naruse 8783ecd817 AIX also timeouts the spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-21 15:57:23 +00:00
eregon 12f624b673 Try 4 times for WIN32OLE specs
* They seem to fail a lot on:
  http://mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/recent.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-20 15:48:27 +00:00
eregon a8d6ba1fe6 Revert r64471
* This reverts commit 9ab04897bd06767f773b35c6958a0551981093aa:
  "don't run specs add at r64409 on Windows"
* It doesn't seem to help:
  http://mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/recent.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-20 15:41:00 +00:00
normal 332b302f92 spec/ruby/core/io/select_spec.rb: workaround stuck IO.select
Under pipe page memory pressure on Linux, a pipe may only be
created with a single buffer[1].  And as of Linux v4.18, the
fs/pipe.c::pipe_poll callback does not account for merging
done in fs/pipe::pipe_write; only the number of usable buffers
in the pipe.  Thus it is possible for a pipe to be writable
(if only by a small amount) despite IO.select saying it is not.

With the default 16384 /proc/sys/fs/pipe-user-pages-soft value
and the pipe having 16 pages of buffers, this issue is trivially
reproducible by creating 1024 pipes in a background process
before running the spec:

  $ ulimit -n 2053 # or something higher
  $ ./miniruby -e '1024.times.map { IO.pipe }; sleep' &
  $ make test-spec MSPECOPT=spec/ruby/core/io/select_spec.rb

So, we create a new pipe we never write to for testing
writability of IO.select.  This may cause the test to fail with
ENFILE on an overloaded system, but at least that's an obvious
failure (unlike having a test get stuck).  This should reduce
failures on our overloaded CI machines:

   http://ci.rvm.jp/results/trunk-nopara@silicon-docker/1239426

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/pipe.c?h=v4.18#n642

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-20 01:43:10 +00:00
naruse 9ab04897bd don't run specs add at r64409 on Windows
Maybe it breaks http://mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/log/20180817T095734Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-19 13:25:11 +00:00
eregon d5c112ff40 select() on all platforms for Socket#recvmsg_nonblock spec
* The specs above already do that, and Solaris needs it too:
  https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable10x/ruby-trunk/log/20180819T111806Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-19 13:23:49 +00:00
eregon f6f54d776e Guard spec which only works on Linux
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 23:49:34 +00:00
eregon 17d20383ef Special case for Solaris 11x on RubyCI
* Where localhost is an alias but not the primary name of 127.0.0.1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:37:46 +00:00
eregon 4dc1c725f8 Be more flexible in the protocol value returned by getaddrinfo()
* Only Solaris 2.10 i386 and Windows seem to return 0 it and other
  Solaris seem to fill the value.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:37:29 +00:00
eregon 08bca6b611 Adapt pack_sockaddr_in specs for Solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:37:12 +00:00
eregon 10f642ba02 Use ftp for the service in getaddrinfo/getnameinfo/getservbyname specs
* Solaris cannot resolve 'http' but can resolve 'ftp'.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:36:57 +00:00
eregon 61a33fa8e2 Simplify to a more standardized Socket SCM constant in specs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:36:41 +00:00
eregon 686a4e2491 Add guards for Solaris for socket specs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:36:26 +00:00
eregon 946c080892 Adapt spec to consider Solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:36:10 +00:00
eregon 08563f2e14 Use 127.0.0.1 instead of localhost in Addrinfo specs
* Solaries doesn't support Addrinfo.getaddrinfo('localhost', 80),
  but supports Addrinfo.getaddrinfo('127.0.0.1', 80).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:35:54 +00:00
eregon 3405ea62b5 Accept TypeError for Socket#getnameinfo
* Happens when VALIDATE_SOCKLEN() actually checks the length such as on
  FreeBSD.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:35:37 +00:00
eregon 7b37c8cdc5 Always set autoclose=false for IO.for_fd fds
* I believe this should be default behavior, see [Feature #2250].
* Now make test-spec MSPECOPT='-R100 spec/ruby/library/socket' works fine.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:35:20 +00:00
eregon 0cd6355791 Re-add socket specs
* This reverts commit df9521fd043df1fb862e46f9b1af83223f16eb2d:
  "Remove failing spec files"
* Platform guards follow in the next commits.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 19:35:02 +00:00
eregon c742050ea5 Revert r64441
* This reverts commit 647fc1227a4146ecbfeb0d59358abc8d99cd8ae6:
  "thread_sync.c (rb_mutex_synchronize): only unlock if we own the mutex"
* Let's try to preserve the semantics of always being locked inside
  Mutex#synchronize, even if an exception interrupts ConditionVariable#wait.
* As discussed on [Bug #14999].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 13:52:53 +00:00
normal 647fc1227a thread_sync.c (rb_mutex_synchronize): only unlock if we own the mutex
If an exception is raised inside Mutex#sleep (via ConditionVariable#wait),
we cannot guarantee we can own the mutex in the ensure callback.

However, who owns the mutex at that point does not matter.  What
matters is the Mutex is usable after an exception occurs.

* thread_sync.c (rb_mutex_synchronize): only unlock if we own the mutex

* spec/ruby/library/conditionvariable/wait_spec.rb: only test lock
  usability after thread kill.  Who owns the lock at any
  particular moment is an implementation detail which we cannot
  easily guarantee.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-18 06:33:49 +00:00
eregon a2d2a55d0c Guard spec failing on Solaris
* https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20180817T182406Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 23:51:47 +00:00
eregon fb01ef38a1 Add guard for Solaris in Socket#connect_nonblock spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 14:52:18 +00:00
eregon abd8880d27 Guard connect_nonblock spec on FreeBSD
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 13:07:37 +00:00
eregon 28ed3c0f80 Guard with a :pktinfo feature specs relying on PKTINFO
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 13:07:24 +00:00
eregon a48339c2c9 Re-add specs
* This reverts commit 325fd38901.
* Platform guards in the next commit.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 13:07:11 +00:00
eregon a88e5cccba Add a note how to run specs under older Ruby versions
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 11:22:55 +00:00
eregon 1630728e9d Fix typo in version guard
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 11:22:43 +00:00
eregon f3b347e109 Add version guards for Enumerator::ArithmeticSequence
* And keep specs for older versions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 11:22:30 +00:00
eregon 5032f6377b spec/README.md: add a note about version guards
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 10:14:01 +00:00
eregon 3993cd8058 Integrate new specs for ConditionVariable#wait to prevent regressions
* See [Bug #14999].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-17 09:51:26 +00:00
naruse 250bf32f97 skip examples failing on solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-16 10:50:53 +00:00
nobu bb8b44b078 apply r64239 to macOS too
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-16 00:05:08 +00:00
nobu 50ad099590 spec/ruby/optional/capi/ext/io_spec.c: guard unreachable code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-15 12:53:45 +00:00
nobu 9071cd6393 spec/ruby/optional/capi/ext/io_spec.c: guard unreachable code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-15 11:01:30 +00:00
nobu 438955efde -Wsuggest-attribute=noreturn on io_spec_rb_io_wait_readable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-15 02:05:20 +00:00
normal 17ed23bb6d spec/ruby/optional/capi/io_spec.rb: fix fragile spec from unpredictable errno
rb_io_wait_readable and rb_io_wait_writable depend on the TSD
errno value.  Due to the recent changes in r64352-r64353 to
restructure GVL, errno could be set to EAGAIN from the signal
self-pipe and cause the rb_io_wait_readable spec to block
unexpectedly.  This should fix rubyspec timeouts on Solaris:

  http://rubyci.s3.amazonaws.com/unstable11s/ruby-trunk/log/20180814T042506Z.fail.html.gz

* spec/ruby/optional/capi/ext/io_spec.c: add errno= setter method
* spec/ruby/optional/capi/io_spec.rb: set errno to appropriate values for tests

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-14 17:07:36 +00:00
nobu 37279d1546 non-symbol keys in kwargs
* class.c (separate_symbol): [EXPERIMENTAL] non-symbol key in keyword
  arguments hash causes an exception now.
  c.f. https://twitter.com/yukihiro_matz/status/1022287578995646464

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-14 11:58:17 +00:00
nobu aa6c02a5a5 skip non-IP interfaces
* spec/ruby/library/socket/socket/getifaddrs_spec.rb: VirtualBox host
  only adapter seems something different than ordinary interfaces.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-12 00:28:26 +00:00
naruse c7baa445ff fix r64296
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-11 16:25:21 +00:00
naruse 8b1ff4170b Solaris 10 doesn't have getifaddrs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-11 13:43:31 +00:00
naruse 984986a0a7 Solaris raises EAI_SERVICE if hints.ai_socktype=0
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-11 13:31:43 +00:00
naruse 325fd38901 Remove failing specs
https://rubyci.org/logs/rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/log/20180810T183001Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10 21:31:25 +00:00
naruse df9521fd04 Remove failing spec files
Re-commit after specs are fixed.
http://rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/log/20180810T063001Z.log.html.gz
http://rubyci.s3.amazonaws.com/unstable10x/ruby-trunk/log/20180809T191808Z.log.html.gz
http://rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20180809T192406Z.log.html.gz
http://rubyci.s3.amazonaws.com/unstable10s/ruby-trunk/log/20180809T151911Z.log.html.gz
http://rubyci.s3.amazonaws.com/unstable11s/ruby-trunk/log/20180809T192507Z.log.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10 08:31:17 +00:00
mrkn c0d1a46fc3 process.c: fix rubyspec of Process.groups
getgroups(2) may return a GID list that includes duplicated GIDs.
The behavior is totaly depends on what OS is used.

This commit fixes the example of Process.groups so that the example
is independent of this OS-dependent features.

Additonaly, this commit adds the description of such system-dependent
characteristics of Process.groups.

[ruby-dev:50603] [Bug #14969]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10 05:18:03 +00:00
nobu a23c8414fe another test needs IO.select
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-10 00:53:49 +00:00
naruse ed4e38c4b0 Don't run the spec on Solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-09 12:45:02 +00:00
nobu 775a40f7d6 apply r64239 to macOS too
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-09 07:04:45 +00:00
nobu 2eea3288d6 apply r64239 to macOS too
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-09 07:01:09 +00:00
naruse d98e37ceb9 Don't run specs on Solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-09 05:28:33 +00:00
normal ab8791d7d2 spec/ruby/library/socket/*: more FreeBSD fixes
FreeBSD portability notes:

Loopback connections are not instantaneous (unlike Linux), so
non-blocking read-after-write MUST check for readability via
IO.select or IO#wait_readable before attempting non-blocking
recv/read operations.

IPv6 seems favored, so we'll get "::" instead of "0.0.0.0"

Some constants are different or obsolete, so that should be
self-explanatory.

There are still other failures I or somebody else needs to get
to when we have time and feel like dealing with spec DSL:

      http://rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/recent.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-09 03:32:51 +00:00
naruse 4b13656e39 fix MSG_OOB spec
* OOBINLINE should be set for accepted socket
* When OOBINLINE is set, MSG_OOB shouldn't be passed to recv

Merge spec/ruby's commit 5b418374f8006318434ee9a2366382d004f585df

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-08 13:50:25 +00:00
naruse e0cece9d4d Add colon to avoid chkbuild's alert
c0448670a9/chkbuild/ruby.rb (L847)

Merge ruby/spec's commit 5a6ac7dbef3d59fe279303bf3346d92f1e620f12

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-08 13:44:25 +00:00
kazu 60012d130c Some environments do not have IPv6 address of localhost in /etc/hosts
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-08 08:00:45 +00:00
nobu ca5c3f1efc skip hanging-up tests on macOS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-08 02:56:04 +00:00
normal 3b8b668806 spec/ruby/library/socket/*: fix hanging on FreeBSD 11.1
There are still other test failures which need fixing on FreeBSD.
Keep an eye on:

  http://rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/recent.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-08 01:16:37 +00:00
mrkn f15069338d enumerator.c: Introduce Enumerator::ArithmeticSequence
This commit introduces new core class Enumerator::ArithmeticSequence.
Enumerator::ArithmeticSequence is a subclass of Enumerator, and
represents a number generator of an arithmetic sequence.

After this commit, Numeric#step and Range#step without blocks
returned an ArithmeticSequence object instead of an Enumerator.

This class introduces the following incompatibilities:

- You can create a zero-step ArithmeticSequence,
  and its size is not ArgumentError, but Infinity.
- You can create a negative-step ArithmeticSequence from a range.

[ruby-core:82816] [Feature #13904]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-06 09:08:28 +00:00
normal 81f1285b9c spec/ruby/library/socket/socket/getaddrinfo_spec.rb: avoid nonsensical lookup
"http" is a TCP service, so /etc/services on typical GNU/Linux systems
only specify a TCP port for it.  Use "discard" since it seems
used for other specs and is specified as both TCP and UDP.

This caused many CI failures like the following:
  git clone https://gist.github.com/812a9b747e4c4cb2e844d4be7991cd2d

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 21:53:21 +00:00
eregon b53cf149ad Update to ruby/spec@9be7c7e
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 16:19:40 +00:00
eregon aeeaadaad0 Update to ruby/mspec@072849e
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 16:19:10 +00:00
eregon a2c7d0cea9 encoding.c (rb_enc_get_index): return -1 for non-encoding capable objects
* Clarify logic and add spec.
* Now passes test-all with the JSON fix.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 15:11:49 +00:00
eregon bd58361e58 Revert "encoding.c (rb_enc_get_index): return -1 for non-encoding capable objects"
* This reverts commit fb253d2032.
* The CI is failing, this seems a bug in the JSON C extension.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 14:31:39 +00:00
eregon fb253d2032 encoding.c (rb_enc_get_index): return -1 for non-encoding capable objects
* Clarify logic and add spec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 13:52:26 +00:00
eregon 080d700e1d encoding.c (enc_set_index): raise instead of rb_bug() for non-encoding capable objects
* Add spec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-03 13:52:13 +00:00
normal 9366d7092f spec/ruby/security/cve_2018_6914_spec.rb: get rid of leftover files
I ran out of inodes in $TMPDIR :<

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-11 08:33:32 +00:00
normal ac41c2c132 process.c (rb_f_exec): pause MJIT before replacing process
Non-parallel "make test-spec" caused
spec/ruby/core/process/wait2_spec.rb failures because mspec
uses "exec" in single-process mode, so there's no chance
the post-exec state could know about the MJIT child process
from its pre-exec state.

[ruby-core:87846] [Bug #14867]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-07 23:59:23 +00:00
k0kubun a854e4dd18 wait2_spec.rb: skip leak checker for now
This is not working with cppflags="-DMJIT_FORCE_ENABLE" on my machine.

```
$ make test-spec
$ /home/k0kubun/src/github.com/ruby/ruby-svn/.ruby-force/miniruby -I/home/k0kubun/src/github.com/ruby/ruby-svn/lib /home/k0kubun/src/github.com/ruby/ruby-svn/tool/runruby.rb --archdir=/home/k0kubun/src/github.com/ruby/ruby-svn/.ruby-force --extout=.ext -- /home/k0kubun/src/github.com/ruby/ruby-svn/spec/mspec/bin/mspec-run -B ../spec/default.mspec
ruby 2.6.0dev (2018-07-07 trunk 63874) +JIT [x86_64-linux]
[| | ================  40%                    | 00:02:03]      0F      0E leaked before wait2 specs: [[31406, #<Process::Status: pid 31406 exit 0>]]

1)
An exception occurred during: before :all FAILED
Expected [[31406, #<Process::Status: pid 31406 exit 0>]] to be empty
/home/k0kubun/src/github.com/ruby/ruby-svn/spec/ruby/core/process/wait2_spec.rb:18:in `block (3 levels) in <top (required)>'
/home/k0kubun/src/github.com/ruby/ruby-svn/spec/ruby/core/process/wait2_spec.rb:16:in `block (2 levels) in <top (required)>'
/home/k0kubun/src/github.com/ruby/ruby-svn/spec/ruby/core/process/wait2_spec.rb:3:in `<top (required)>'
[- | ==================100%================== | 00:00:00]      1F      0E

Finished in 103.288794 seconds

3607 files, 28545 examples, 208272 expectations, 1 failure, 0 errors, 0 tagged
uncommon.mk:777: recipe for target 'yes-test-spec' failed
make: *** [yes-test-spec] Error 1
```

Let me skip this for now and enable MJIT CI again.

Related to Bug#14867

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-07 14:55:22 +00:00
nobu 7387c08373 const_missing on private constants
* variable.c (rb_const_search): call #const_missing method on
  private constants, as well as uninitialized constants.
  [Feature #14328]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-06 13:56:58 +00:00
normal 44fc3d08eb unrevert r63852 but keep SIGCHLD path disabled for win32
Reading win32/win32.c waitpid implementation, maybe waitpid(-1, ...)
on that platform will never conflict with mjit use of waitpid.

In any case, I've added WAITPID_USE_SIGCHLD macro to vm_core.h
so it can be easy for Linux/BSD users to test (hopefully!)
win32-compatible code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-05 03:02:33 +00:00
naruse df4a126d65 Revert r63758 and related commits
The change is unstable on Windows. Please re-commit it when it correctly
supports Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-04 15:08:56 +00:00
nobu 6e65c89d3d rubyopt_spec.rb: skip -v in RUBYOPT examples
* spec/ruby/command_line/rubyopt_spec.rb: skip -v in RUBYOPT
  examples when CROSS_COMPILING is set by fake.rb.  the version
  number by -v is printed before loading libraries by -r options,
  so setting RUBY_DESCRIPTION in fake.rb has no effect.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-03 04:43:25 +00:00
nobu 482bbde6e2 time.c: [DOC] Time#localtime
* time.c: state that Time#localtime does nothing when nothing
  changes.  [ruby-core:87675] [Bug #14880]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-02 07:46:38 +00:00
kazu 52f269e085 Remove unused variable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-01 01:38:16 +00:00
eregon 5235d57b07 Fix spec/ruby/command_line/rubylib_spec.rb for use with make test-spec
* Current code clears ENV['RUBYLIB'], but on Windows it's needed when
  running from build 'src' (or running make test-spec).
* Patch by MSP-Greg, from https://github.com/ruby/spec/pull/607.
* Imported manually to fix CI on Windows, without needing a full sync.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-30 13:53:10 +00:00
nobu c69b33c468 rb_enc_alias
`rb_encdb`-prefixed functions are only for internal use.
use rb_enc_alias instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-28 23:46:59 +00:00
mame 4aaceb29bc Revert "rb_enc_alias"
This reverts commit r63779 which made test-spec fail.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-28 14:18:56 +00:00
nobu 7b3878e1d0 rb_enc_alias
`rb_encdb`-prefixed functions are only for internal use.
use rb_enc_alias instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-28 13:18:52 +00:00
nobu efd36e7104 fix feature name and removed a duplicate condition
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-28 09:59:35 +00:00
ko1 d0fb73a0f0 check enc_capable.
* encoding.c (rb_enc_capable): make it extern to check enc_capable.
  enc_index can be set to limited types such as T_STRING, T_REGEX
  and so on. This function check an object is this kind of types.

* include/ruby/encoding.h: ditto.

* encoding.c (enc_set_index): check a given object is enc_capable.

* include/ruby/encoding.h (PUREFUNC):

* marshal.c (encoding_name): check `rb_enc_capable` first.

* marshal.c (r_ivar): ditto. If it is not enc_capable, it should be
  malformed data.

* spec/ruby/optional/capi/encoding_spec.rb: remove tests depending
  on the wrong feature: all objects can set enc_index.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-28 08:35:48 +00:00
eregon 636ae897c6 Update to ruby/spec@98c7d74
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 13:41:29 +00:00
eregon 9dc121cc57 Update to ruby/spec@a454137
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 12:30:05 +00:00
eregon fc1f3f14d3 Update to ruby/spec@41068a6
* Only small fixes to specs from CRuby to review the diff more easily.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 11:37:31 +00:00
eregon 80fdfbf809 Update to ruby/mspec@7074b56
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 11:37:19 +00:00
normal 92f5653f45 process.c (waitpid_wait): do not set ECHILD prematurely
It is possible to have both MJIT and normal child processes
alive, so we cannot set ECHILD based on such a guess.  We can
still elide waitpid(PID <= 0) calls if we have callers in
vm->waiting_pids, however.

For specs, ensure Process.waitall does not leak MJIT
PIDs to Rubyspace.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 10:09:33 +00:00
normal 910418fca6 Revert "spec: skip Process wait specs on MJIT"
This reverts r63731 (commit 359dd59db2).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-27 03:16:59 +00:00
k0kubun 359dd59db2 spec: skip Process wait specs on MJIT
until [Bug #14867] is fixed. I want to start running CI with MJIT
enabled before fixing the problem.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-23 08:29:20 +00:00
nobu f194979bae skip when group name is not found
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-20 11:14:08 +00:00
nobu 9d55666225 describe about NameError by #private_constant
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-19 08:45:17 +00:00
ko1 61391616f4 NULL class Data_Wrap_Struct is not allowed.
* spec/ruby/optional/capi/typed_data_spec.rb: same as r63692.

* spec/ruby/optional/capi/ext/typed_data_spec.c: ditto.

* vm_insnhelper.h (PUSH): re-enable assertion to check hidden objects.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-19 02:46:10 +00:00
nobu 24aa9ecc47 Removed unobservable behavior
The klass for Data_Wrap_Struct can be NULL, but it MUST NOT appear
in the Ruby level.  It is only for the C level implementation.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-18 23:19:38 +00:00
nobu 90d0655307 compare with correct values
* spec/ruby/shared/rational/exponent.rb: compare with
  mathematically expected values without errors.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-17 01:24:25 +00:00
mame bf7a32d220 Remove warnings of flip-flop deprecation from tests and specs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-15 08:53:16 +00:00
usa fa0f702c5b HTTPServerException is deprecated
* spec/ruby/library/net/http/HTTPClientException_spec.rb: add.
* spec/ruby/library/net/http/HTTPServerException_spec.rb: check deprecated message.
* spec/ruby/library/net/http/httpresponse/*_spec.rb: use HTTPClientException instead of HTTPServerException.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-14 06:41:09 +00:00
svn ee6aa1505e * append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-13 21:58:55 +00:00
eregon b46da8d84e Update to ruby/spec@4bb0f25
* Specs added by TruffleRuby.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-13 21:58:54 +00:00
eregon 67078e81f5 Update to ruby/spec@4bc7a2b
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-13 21:41:45 +00:00
normal 256411b47f String#uminus dedupes unconditionally
[Feature #14478] [ruby-core:85669]

Thanks-to: Sam Saffron <sam.saffron@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-04 23:26:03 +00:00
mame cd0fec3728 Add TracePoint#parameters
It can be used to get the parameters' information of method and block.
There was no way to get block parameters.
It was possible but ineffective to get method parameters via Method
object: `tp.defined_class.method(tp.method_id).parameters`
TracePoint#parameters allows us to get the information easily.
[Feature #14694]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-03 05:10:41 +00:00
matz d53ee00891 object.c: Add a new alias `then` to `Kernel#yield_self`; [Feature #14594]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-30 08:24:52 +00:00
nobu 2df80d30fe spec/ruby: revert r63503 and r63508
When RUBY_DESCRIPTION has `+JIT` already, it will be doubled.
Just fake.rb.in always has copied `RUBY_DESCRIPTION`, regardless
MJIT is enabled or not.  `BOOTSTRAPRUBY` is not involved.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-29 08:46:36 +00:00
eregon 96e6eb380d Specs must keep working on older versions and other implementations
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-27 09:52:04 +00:00
k0kubun 506512c028 spec/ruby: fix RUBY_DESCRIPTION check with JIT enabled
`make test-spec` adds `-r./$(arch)-fake` to pass header options.
But the $(arch)-fake.rb unexpectedly modifies RUBY_DESCRIPTION and it
always drops +JIT from it since the fake.rb is built with BOOTSTRAPRUBY,
which can be miniruby. miniruby can't find MJIT header and thus
mjit_init_p is always FALSE.

So, to pass `make test-spec` with JIT enabled, we can't use
RUBY_DESCRIPTION.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-24 14:32:05 +00:00
nobu 989e07c0f2 range.c: === by cover?
* range.c (range_eqq): switch `Range#===` to use `cover?` instead
  of `include?`.  [Feature #14575]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-17 10:46:21 +00:00
usa 6199c9acff * spec/ruby/command_line/dash_upper_i_spec.rb: skip symlink on Windows like
other specs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-04-29 13:45:11 +00:00
eregon 5470172519 Generalize the check to MRI in the -I spec
* The current check seems to fail with AppVeyor.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-04-28 23:04:56 +00:00
eregon aaac5df365 Ignore the extension of miniruby on Windows in the -I spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-04-28 20:37:20 +00:00