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

833 Коммитов

Автор SHA1 Сообщение Дата
Yusuke Endoh cce6cfbe48 Make test-all and test-spec runnable on Android
Calling some syscall functions such as Dir.chroot causes SIGSYS instead
of EPERM on Android.
This change skips all tests that stops the test-suite run.
2019-09-09 20:24:03 +09:00
Benoit Daloze b10940a839 Improve Proc#to_s specs 2019-09-08 12:41:14 +02:00
Nobuyoshi Nakada aedf6946a7
Removed useless braces to suppress a warning 2019-09-08 12:54:06 +09:00
Benoit Daloze 324dd9d01f armv7l and armv7l are the same platform, generalize to armv7
[Bug #16007]
2019-09-07 12:53:47 +02:00
David Rodríguez 2a166cfea2 Add `File.absolute_path?` (#2198)
In order to check whether a path is absolute or not in a portable way.

[Feature #15868]
2019-09-05 20:00:50 +09:00
Jeremy Evans 4a3972c261 Remove bad expectation in spec
This spec should not be checking where methods are defined, only
that the method works as expected (returns a Lazy instance).
2019-09-03 11:30:49 -07:00
Nobuyoshi Nakada 6f206b8ec6
Prohibit nul-separated glob pattern [Feature #14643] (#2419) 2019-09-02 15:08:53 +09:00
Hiroshi SHIBATA 1756ec2065
Ignore the all of warnings with inline_spec.rb of bundler examples. 2019-09-01 08:56:00 +09:00
Jeremy Evans 3463e83192 Warn for keyword to last hash parameter when method has no optional/rest parameters
Previously, there was no warning in this case, even though we will
be changing the behavior in Ruby 3.

Fixes [Bug #14130]
2019-08-30 19:25:46 -07:00
Jeremy Evans b5b3afadfa Fix a couple of bundler issues with keyword argument separation
There are more issues than this, but hopefully this is enough
to get make test-bundler passing in CI.
2019-08-30 12:39:31 -07:00
Jeremy Evans a810f6cbef Update specs to handle non-Symbols for keyword splats in 2.7
Also handle some warnings for behavior that will change in 3.0.
2019-08-30 12:39:31 -07:00
Yusuke Endoh ba9adcc175 spec/ruby/core/unboundmethod/bind_call_spec.rb: Add ruby_version_is guard 2019-08-30 11:49:42 +09:00
Yusuke Endoh 09c940b17f spec/ruby/core/unboundmethod/bind_call_spec.rb: Added
For UnboundMethod#bind_call [Feature #15955] introduced in
002e592e0d67bb0271d16314a32380ad947c9ae9.
2019-08-30 11:13:00 +09:00
Nobuyoshi Nakada d3e0bc07e2
Fixed a comment [ci skip]
A range literal in conditional expression is turned into a
flip-flop, as a Range object is never falsy and does not make a
sense.
2019-08-29 11:23:16 +09:00
Nobuyoshi Nakada d92289cd8d
Revert "Remove warnings of flip-flop deprecation from tests and specs"
This reverts commit bf7a32d220.

flip-flop is no longer deprecated.

[Feature #5400]
2019-08-29 11:10:45 +09:00
Nobuyoshi Nakada 6a0d2bc2af
Follows callback declaration updates 2019-08-28 00:09:14 +09:00
Takashi Kokubun eaff19de2b
Fix rb_thread_create argument type
in response to the declaration change in
e3fc30564e.

Fixing the AppVeyor mswin CI failure:
https://ci.appveyor.com/project/ruby/ruby/builds/26980881/job/2j6h1qwjnbc8cpop

ref: https://github.com/ruby/ruby/pull/2404
2019-08-27 23:41:52 +09:00
Hiroshi SHIBATA d9b73dcc0d Remove github_action_linux tag from bundler examples.
Maybe it has fixed at 5a384e2c08
2019-08-23 19:05:45 +10:00
Nobuyoshi Nakada 4419b5dbc2
The investigation is going on... 2019-08-21 13:31:22 +09:00
lolwut a230e65e8b
[bundler/bundler] Freeze time to avoid failures at midnight
Specify just a string

set @built_at as nil before testing

https://github.com/bundler/bundler/commit/578ec96c9c
2019-08-21 08:10:49 +09:00
Hiroshi SHIBATA 1c2774526e
[bundler/bundler] Share test fixtures with parallel_tests
https://github.com/bundler/bundler/commit/a38161c5be
2019-08-21 08:10:49 +09:00
Hiroshi SHIBATA 10011f4371
[bundler/bundler] Try to use RunTimeLogger for parallel_tests
https://github.com/bundler/bundler/commit/faccc522d1
2019-08-21 08:10:48 +09:00
David Rodríguez ace88852f2
[bundler/bundler] Parallelize test suite
https://github.com/bundler/bundler/commit/23007cb107
2019-08-21 08:10:48 +09:00
David Rodríguez ede77d82e7
[bundler/bundler] Fix a couple of typos
https://github.com/bundler/bundler/commit/52b6b94068
2019-08-21 07:58:46 +09:00
David Rodríguez 1120bacd8b
[bundler/bundler] Remove the :ruby exclusion tag
Our current set of specs is the same for all supported rubies, and we
should keep it that way.

https://github.com/bundler/bundler/commit/c9dc0f6f2c
2019-08-21 07:58:46 +09:00
David Rodríguez bcc4ac924d
[bundler/bundler] Remove another 1.8.7 specific bit
https://github.com/bundler/bundler/commit/8c7942d2c6
2019-08-21 07:58:46 +09:00
David Rodríguez 5ea08883cf
[bundler/bundler] Remove old rubies stuff no longer needed
https://github.com/bundler/bundler/commit/36fb3287f4
2019-08-21 07:58:46 +09:00
Nobuyoshi Nakada dd58c4ba35
Investigation of a sporadic error at Github Actions 2019-08-20 16:07:43 +09:00
David Rodríguez 5a384e2c08 Fix some bundler specs (#2380)
* These seem to consistenly pass already

* Show actual command when running `make test-bundler`

Current the setup command that installs the necessary gems for testing
bundler was printed, but not the actual command that runs the tests.
That was a bit confusing.

* Borrow trick from setproctitle specs

* A title that long doesn't get set sometimes

No idea why, but the test doesn't need that the title is that long.

* Fix most gem helper spec ruby-core failures

* Fix the rest of the gem helper failures

* Fix version spec by improving the assertion

* Remove unnecessary `BUNDLE_RUBY` environment var

We can use `RUBY` when necessary, and `BUNDLE_RUBY` is not a good name
because bundler considers `BUNDLE_*` variables as settings.

* Rename `BUNDLE_GEM` to `GEM_COMMAND`

This is more descriptive I think, and also friendlier for bundler
because `BUNDLE_` env variables are interpreted by bundler as settings,
and this is not a bundler setting.

This fixes one bundler spec failure in config specs against ruby-core.

* Fix quality spec when run in core

Use the proper path helper.

* Fix dummy lib builder to never load default gems

If a dummy library is named as a default gem, when requiring the library
from its executable, the default gem would be loaded when running from
core, because in core all default gems share path with bundler, and thus
they are always in the $LOAD_PATH. We fix the issue by loading lib
relatively inside dummy lib executables.

* More exact assertions

Sometimes I have the problem that I do some "print debugging" inside
specs, and suddently the spec passes. This happens when the assertion is
too relaxed, and the things I print make it match, specially when they
are simple strings like "1.0" than can be easily be part of gem paths
that I print for debugging.

I fix this by making a more exact assertion.

* Detect the correct shebang when ENV["RUBY"] is set

* Relax assertion

So that the spec passes even if another paths containing "ext" are in
the load path. This works to fix a ruby-core issue, but it's a better
assertion in general. We just want to know that the extension path was
added.

* Use folder structure independent path helper

It should fix this spec for ruby-core.

* Fix the last failing spec on ruby-core

* Skip `bundle open <default_gem>` spec when no default gems
2019-08-20 09:46:31 +09:00
Hiroshi SHIBATA d3da1d57d3
Skip open_spec.rb:L95 because ruby repo doesn't have json as default gems. 2019-08-18 15:02:21 +09:00
David Rodríguez a77b3b4476 [bundler/bundler] Remove unnecessary require
https://github.com/bundler/bundler/commit/8ef571ed4e
2019-08-18 13:45:57 +09:00
David Rodríguez 683f9e1dbf [bundler/bundler] No need to activate the `fileutils` default gem
The version we're vendoring actually relaxed this restriction back to
2.3.0+, so we can always use the vendored version.

https://github.com/bundler/bundler/commit/d366cbfe5d
2019-08-18 13:45:45 +09:00
David Rodríguez 4756c5f7e7 [bundler/bundler] Remove unnecessary rubygems monkeypatch
Instead, make sure we always load the local copy of bundler during
specs, and never end up using the default copy.

https://github.com/bundler/bundler/commit/ac655ffeda
2019-08-18 13:45:35 +09:00
David Rodríguez 5a69a23afc [bundler/bundler] Don't use system bundler on this spec
If we use system bundler, when booting the "outermost" bundler process,
bundler will save the path to the system bundler in BUNDLE_BIN_PATH, and
use it again when booting the "innermost" bundler process (`bundle exec
echo foo`).

That means that second process will use the system bundler path again.
However, we have `-rsupport/hax` in RUBYOPT, so that file will load from
the local copy of bundler, and that file will load `bundler/version`
from the project (not from system), because -Ilib is in the LOAD_PATH.

That will end up causing redefinition errors because the same constant
will be loaded from two different locations.

In general, this is expected behavior, normally you will wrap the
process with `Bundler.with_original_env` to reset the environment.
However, the easiest fix here is to not use system bundler, because it's
not really necessary and thus doesn't help the readability of the spec.

https://github.com/bundler/bundler/commit/a3d72a34ab
2019-08-18 13:45:25 +09:00
David Rodríguez 0653d8c601 [bundler/bundler] Fix spec using the deprecated `bundle config` mode
https://github.com/bundler/bundler/commit/789dd1864f
2019-08-18 13:45:15 +09:00
David Rodríguez f753961611 [bundler/bundler] Remove a bunch of unneeded rubygems requires
https://github.com/bundler/bundler/commit/f9cb39e614
2019-08-18 13:44:46 +09:00
Zehan Zhao d80f5399ad [bundler/bundler] Fix open default gem error
https://github.com/bundler/bundler/commit/792d724752
2019-08-18 13:44:26 +09:00
David Rodríguez 98841b2b19 [bundler/bundler] Wrap `open` specs with a context
So I can add another context that doesn't run the `before` block.

https://github.com/bundler/bundler/commit/06d0acc45a
2019-08-18 13:44:22 +09:00
David Rodríguez e6e8d2d8c0 [bundler/bundler] Prefer `before` to `before :each`
https://github.com/bundler/bundler/commit/6678747fae
2019-08-18 13:44:13 +09:00
David Rodríguez cc644c7116 [bundler/bundler] Fix `bundle doctor` command
Previously `bundle doctor` would fail on any bundle that does not
include git gems or plugins. This is because the previously used
`Bundler.home` does not exist unless the bundle includes git gems or
plugins. For example, with `bundle config set path .bundle`, it points
to which does not exist unless this kind of gems exist in the Gemfile.

The name `Bundler.home` is really unfortunate, it should probably be
have more descriptive name, and be private. But for now I just want to
make `bundle doctor` usable.

https://github.com/bundler/bundler/commit/5531a18c1e
2019-08-18 13:44:03 +09:00
David Stosik a02dbcecb1 [bundler/bundler] Bundler displays a duplicate gem entries warning even if gems only appear once per group
https://github.com/bundler/bundler/commit/d18a83109e
2019-08-18 13:43:59 +09:00
David Rodríguez 08c58e3c0d
[bundler/bundler] Extract a `gemspec_dir` helper
https://github.com/bundler/bundler/commit/71a29e286a
2019-08-17 17:08:51 +09:00
David Rodríguez a2d7c97a91
[bundler/bundler] Extract yet another helper method
https://github.com/bundler/bundler/commit/948a863bd8
2019-08-17 17:08:51 +09:00
David Rodríguez 4318405609
[bundler/bundler] Extract a `root_gemspec` local variable
https://github.com/bundler/bundler/commit/a4beba4cbf
2019-08-17 17:08:51 +09:00
David Rodríguez 09455301ef
[bundler/bundler] Extract a `with_root_gemspec` helper
https://github.com/bundler/bundler/commit/f20c2bdf6a
2019-08-17 17:08:51 +09:00
David Rodríguez 20c5154f0b
[bundler/bundler] Only chdir when necessary
https://github.com/bundler/bundler/commit/07161ebc1a
2019-08-17 17:08:51 +09:00
David Rodríguez 580e093fdd
[bundler/bundler] Make sure gem has been built before deleteng it
https://github.com/bundler/bundler/commit/32520c7020
2019-08-17 17:08:51 +09:00
David Rodríguez a56bf5bfde
[bundler/bundler] Cleanup in a location independent way
https://github.com/bundler/bundler/commit/5b503a4bf1
2019-08-17 17:08:51 +09:00
David Rodríguez 9c0fcd1d0f
[bundler/bundler] Remove obvious comment
https://github.com/bundler/bundler/commit/91e7fe1b2f
2019-08-17 17:08:51 +09:00
David Rodríguez adfca752d6
[bundler/bundler] Remve another unneeded `to_s`
`FileUtils.rm` supports a `Pathname` argument.

https://github.com/bundler/bundler/commit/7d982a5be9
2019-08-17 17:08:51 +09:00