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

1557 Коммитов

Автор SHA1 Сообщение Дата
Hiroshi SHIBATA bd2674ad33 [rubygems/rubygems] Use bundler-graph instead of bundler-viz
https://github.com/rubygems/rubygems/commit/a54cca13db
2021-11-08 22:15:21 +09:00
haruuzion 82ae9b092c [rubygems/rubygems] Fix url
https://github.com/rubygems/rubygems/commit/6a5a80eff7
2021-11-06 01:39:24 +09:00
Nobuyoshi Nakada 539c42ed89 [rubygems/rubygems] Fix typos
https://github.com/rubygems/rubygems/commit/f328ef6f77
2021-11-04 23:06:25 +09:00
Nobuyoshi Nakada a202408180
Fix typos 2021-11-02 19:17:37 +09:00
David Rodríguez ed0f326e88 [rubygems/rubygems] Leave ":" after MANPATH when not set
So that system man pages still work after a gem with man pages overrides
it.

https://github.com/rubygems/rubygems/commit/1031879b87
2021-11-02 00:28:28 +09:00
David Rodríguez 4e7e057692 [rubygems/rubygems] Memoize materialized specs when requiring `bundler/setup`
Calling `Bundler.definition.specs` will memoize materialized specs.
However, requiring `bundler/setup` will end up materializing the same
set of specs, but not memoize them.

This change makes things consistent.

https://github.com/rubygems/rubygems/commit/e4c2b52824
2021-11-01 02:01:36 +09:00
David Rodríguez f634d1ee00 [rubygems/rubygems] Better error when installing a git lockfile and git not present
https://github.com/rubygems/rubygems/commit/28f4842196
2021-10-30 06:11:39 +09:00
Benoit Daloze a954f273a8 Cleanup GC.auto_compact spec
* Make the supported check more obvious.
2021-10-29 21:59:35 +02:00
Benoit Daloze 800dad6297 Skip GC.auto_compact= spec for platforms not supporting it
* See https://github.com/ruby/spec/pull/891
2021-10-29 21:54:17 +02:00
Josef Šimánek 71b370f6dd
[rubygems/rubygems] Enforce bundler platform (and default gem) to keep invalid gemspec test compatible with ruby-trunk.
https://github.com/rubygems/rubygems/commit/a77061d4e9
2021-10-29 18:00:47 +09:00
Josef Šimánek 9b7afd3cff
[rubygems/rubygems] Update mirror_probe realword specs to not rely exactly at raised HTTP exception.
- this exception differs across Ruby versions.

https://github.com/rubygems/rubygems/commit/38c6927a5f
2021-10-29 18:00:47 +09:00
Josef Šimánek 0029e0948a
[rubygems/rubygems] Install stringio for standalone spec.
- previously it was required already by net/http, but it is not anymore using ruby-trunk
- 996d18a43f
- 364044e090 (diff-a1d29a94def02829fd4f9ba591199acf079e028f5a2002a77c363eb01212e112)

https://github.com/rubygems/rubygems/commit/be1779655a
2021-10-29 18:00:46 +09:00
Josef Šimánek b179166421
[rubygems/rubygems] Assert NoMethodError message only partialy in downloader_spec.
- latest ruby adds error_highlight gem introducing backtrace into exception message

https://github.com/rubygems/rubygems/commit/08c70f9dd0
2021-10-29 18:00:46 +09:00
Josef Šimánek fd17ae8205
[rubygems/rubygems] Lock racc version in platform_spec.
- latest ruby is shipped with racc 1.6 making this spec failing
- this spec is related to platform locking, changing version should not do any harm

https://github.com/rubygems/rubygems/commit/3e18b626cb
2021-10-29 18:00:46 +09:00
Frederik Dudzik f45af5f0a4
Support gemification of tsort
Co-authored-by: Frederik Dudzik <frederik.dudzik@shopify.com>
Co-authored-by: Jacques Chester <jacques.chester@shopify.com>
2021-10-29 17:32:52 +09:00
Josef Šimánek a9be84db82 [rubygems/rubygems] Add new default gems to setup_spec exempts.
- error_highlight was introduced at e946049665
  orriginally as error_squiggle later renamed at 9438c99590

- ruby2_keywords was introduced as a placeholder gem only at 21d2463fbc

https://github.com/rubygems/rubygems/commit/c9ebe7c7d2
2021-10-29 17:22:25 +09:00
David Rodríguez 79f9053599 [rubygems/rubygems] Unskip inline spec that can pass now on the latest rubies
https://github.com/rubygems/rubygems/commit/a81d4421b4
2021-10-29 17:13:18 +09:00
Frederik Dudzik 2a90ad7aa5 [rubygems/rubygems] use Rubocop Lint/Debugger check rather than custom spec
We have a quality spec that check for debugger statements. Rubocop has a
cop that tests for the same thing. As such it makes sense to remove the
spec and activate the cop.

https://github.com/rubygems/rubygems/commit/dc1eb6eec5
2021-10-29 17:13:03 +09:00
Alan Wu e53d07f583 Rename ::YJIT to RubyVM::YJIT
Since the YJIT Ruby module is CRuby specific and not meant for general
use, it should live under RubyVM instead of at top level.
2021-10-28 13:43:02 -04:00
Benoit Daloze c75df796d8 Update to ruby/spec@21a48d9 2021-10-28 18:54:01 +02:00
David Rodríguez ed5f8eaf49 [rubygems/rubygems] Don't warn when a lockfile is locked to a dev version
Even if it's newer than the running versions. Dev versions are not
released to rubygems.org, so the warning message suggests a command that
doesn't work. And dev versions are currently non deterministic
(2.3.0.dev can be many different versions), so the warning doesn't
really make sense at the moment.

https://github.com/rubygems/rubygems/commit/6f31af27ef
2021-10-27 14:47:21 +09:00
Jean Boussier e5319dc985 pack.c: add an offset argument to unpack and unpack1
[Feature #18254]

This is useful to avoid repeteadly copying strings when parsing binary formats
2021-10-26 22:27:30 +02:00
Jeremy Evans 717ab0bb2e
Add Class#descendants
Doesn't include receiver or singleton classes.

Implements [Feature #14394]

Co-authored-by: fatkodima <fatkodima123@gmail.com>
Co-authored-by: Benoit Daloze <eregontp@gmail.com>
2021-10-26 12:35:21 -07:00
Peter Zhu a5b6598192 [Feature #18239] Implement VWA for strings
This commit adds support for embedded strings with variable capacity and
uses Variable Width Allocation to allocate strings.
2021-10-25 13:26:23 -04:00
David Rodriguez b4a43e4f57
[rubygems/rubygems] Show proper error when previous installation of gem can't be deleted
Instead of showing the bug report template with an error at a random
place.

https://github.com/rubygems/rubygems/commit/882ad3ab57
2021-10-25 20:48:51 +09:00
David Rodriguez 00412be204
[rubygems/rubygems] Show a proper error if gem path is not writable
Instead of showing the bug report place with an error at a randome
place.

https://github.com/rubygems/rubygems/commit/241854ce73
2021-10-25 20:48:51 +09:00
David Rodriguez f6d1909500
[rubygems/rubygems] Catch up with recent error message modification
https://github.com/rubygems/rubygems/commit/ae374c1f31
2021-10-25 20:48:51 +09:00
David Rodriguez f7f85c1feb
[rubygems/rubygems] Manage global gem cache directly
Previously, it was maintained in sync with the standard cache. That was
less efficient, and it caused some error messages to point to non
existent files.

https://github.com/rubygems/rubygems/commit/931f8cb8a9
2021-10-25 20:48:51 +09:00
David Rodriguez 4edcda67b3
[rubygems/rubygems] Simplify gem downloading inside bundler
We can skip most stuff in `Gem::RemoteFetcher#download`, and use
`Gem::RemoteFetcher#update_cache_path` directly.

This has the benefit of allowing us to remove some workarounds to
support several rubygems versions, but also allows us to pass the target
folder where the gem should be downloaded directly and skip the logic
inside `Gem::RemoteFetcher#download` to infer the cache path. This will
be useful later to fix some issues with the `global_gem_cache` feature
flag.

https://github.com/rubygems/rubygems/commit/8fe74a77e4
2021-10-25 20:48:51 +09:00
David Rodriguez 03a563b47e
[rubygems/rubygems] Remove unused `let`
https://github.com/rubygems/rubygems/commit/7e1316e454
2021-10-25 20:48:51 +09:00
Jean Boussier 5af3f7f357
[rubygems/rubygems] Vendor a pure ruby implementation of SHA1
This allows `Source::Git` to no longer load the `digest` gem as it is causing
issues on Ruby 3.1.

https://github.com/rubygems/rubygems/pull/4989/commits/c19a9f2ff7
2021-10-25 20:24:32 +09:00
Yusuke Endoh 86e3d77abb
Make Coverage suspendable (#4856)
* Make Coverage suspendable

Add `Coverage.suspend`, `Coverage.resume` and some methods.

[Feature #18176] [ruby-core:105321]
2021-10-25 20:00:51 +09:00
180909 66d09501c2
fix typo [ci skip] 2021-10-25 12:15:55 +09:00
TSUYUSATO Kitsune dfb47bbd17
Fix `Enumerable#each_cons` and `Enumerable#each_slice` to return a receiver
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2021-10-25 12:13:44 +09:00
Nobuyoshi Nakada 22a7f7ec5a
Refinement#include and Refinement#prepend have been deprecated 2021-10-22 15:06:41 +09:00
Nobuyoshi Nakada 9f4f3bd1cc
Refinement#include and Refinement#prepend have been deprecated 2021-10-22 13:53:21 +09:00
Takashi Kokubun 66a64e6f16
Fix tests with cppflags=-DYJIT_FORCE_ENABLE
0dbd95c625
2021-10-20 20:52:21 -07:00
Benoit Daloze 030b1892d5 Update to ruby/spec@254c380 2021-10-20 21:57:05 +02:00
Benoit Daloze 6aa1acb03d Add extra files from ruby/spec which were skipped due to .gitignore 2021-10-20 21:43:00 +02:00
Benoit Daloze a6c6eef04a Update to ruby/spec@d6921ef 2021-10-20 21:41:46 +02:00
Benoit Daloze 207a5a5bc1 Update to ruby/mspec@08e1275 2021-10-20 21:41:45 +02:00
Nobuyoshi Nakada 0bbfb6a37b
Fix error when srcdir not found
So that `spec/mspec/bin/mspec --help` works at least.
2021-10-18 11:44:20 +09:00
Nobuyoshi Nakada e1e3657746
Simplify srcdir fallback 2021-10-18 11:43:50 +09:00
Nobuyoshi Nakada 0871652f21
Not all environment variables can be convertible to IBM-437 2021-10-18 00:23:59 +09:00
David Rodríguez 30b6df4144 [rubygems/rubygems] Improve error messages in gem helpers
Previously they were printing the original command that was run, and
telling the user to rerun it. However, the command sometimes would not
match the exact command that was run (for example, when using the
`--local` flag), and in any case, it's simpler and more useful to print
the underlying error anyways.

https://github.com/rubygems/rubygems/commit/5bc0d51b58
2021-10-13 23:30:11 +09:00
David Rodríguez 853004e04d [rubygems/rubygems] Fix `bundle install` crash due to an incorrectly incomplete resolve
In case we have a corrupted lockfile that claims to support a platform, but
it's missing platform specific gems for it, bundler has a check that
detects the situation and forces a re-resolve. The result of this check
is kept under the `@locked_specs_incomplete_for_platformn` instance
variable in `Definition`.

The installer, however, calls `Definition#nothing_changed?` before this
instance variable has been filled, so the result of it is actually
incorrect here since it will claim that nothing has changed, but
something has changed (locked specs are incomplete for the current
platform).

The consequence of this incorrect result is that the installer thinks it
can go on without re-resolving, resulting in the incomplete resolution
from the lockfile being used, and in a crash being triggered due to
that.

The solution is to make sure the `@locked_specs_incomplete_for_platform`
instance variable is filled before `nothing_changed?` gets called.
Moving it to `initialize` makes the most sense, not because it's the
best place for it (we can refactor this later), but because all of the
other "outdated definition" checks are already set there.

https://github.com/rubygems/rubygems/commit/708afdd789
2021-10-13 21:16:40 +09:00
David Rodriguez 0f1f95a3e3 [rubygems/rubygems] Fix `bundle install` to force reinstallation of deleted gems
https://github.com/rubygems/rubygems/commit/8950631f02
2021-10-13 16:21:42 +09:00
David Rodríguez bd87397f73 [rubygems/rubygems] Use correct way to detect default gems
The other way, in particular matching a substring in the gemspec
summary, is brittle and no longer used since Ruby 2.0.

This needed rewriting the specs that depended on that way.

https://github.com/rubygems/rubygems/commit/059dbfa971
2021-10-13 16:21:42 +09:00
David Rodríguez d6627ab85c [rubygems/rubygems] Remove unnecessary code
All supported rubygems versions implement this.

https://github.com/rubygems/rubygems/commit/2130782ef6
2021-10-13 16:21:41 +09:00
David Rodriguez ad4e7308d2 [rubygems/rubygems] Make spec more realistic
The spec was just faking an installed gemspec without any installed gem
backing it up, resulting in `bundle install` claiming that the gem was
already installed when it was not.

https://github.com/rubygems/rubygems/commit/c35531d1c7
2021-10-13 16:21:41 +09:00