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

9675 Коммитов

Автор SHA1 Сообщение Дата
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
Yusuke Endoh 4c32fcb84f [ruby/error_highlight] Make the formatter mechanism support Ractor
Now the formatter configuration is per Ractor. DefaultFormatter is used
if not set.

DefaultFormatter#message_for is now a class method to allow sub-Ractors
to call the method.

https://github.com/ruby/error_highlight/commit/9fbaa8ab7c
2021-10-27 11:29:20 +09:00
Jenny Shen 92ec010595
[rubygems/rubygems] Add support to build and sign certificates with multiple key algorithms
https://github.com/rubygems/rubygems/commit/967876f15d

Co-Authored-By: Frederik Dudzik <frederik.dudzik@shopify.com>
2021-10-26 08:01:55 +09:00
Jean Boussier 557fa38915 [rubygems/rubygems] Fix Bundler::Digest#sha1 on big-endian systems
As noticed by @nobu https://github.com/rubygems/rubygems/pull/4989#discussion_r735674633

From wikipedia: https://en.wikipedia.org/wiki/SHA-1#SHA-1_pseudocode

> append ml, the original message length in bits, as a 64-bit big-endian integer.

`Q` is native endian, so little-endian on most modern hardware.
The original code from RubyDigest reverses the bytes:
d15f906caf/lib/ruby_digest.rb (L521)

But that makes the code non-portable, the correct way is to directly ask
for a big-endian representation.

https://github.com/rubygems/rubygems/commit/ba2be01ea4
2021-10-26 01:51:05 +09:00
David Rodriguez 9d28618091
[rubygems/rubygems] Avoid loading the `digest` gem unnecessarily
OpenSSL includes what we need.

https://github.com/rubygems/rubygems/commit/955f3b72ca
2021-10-25 20:48:52 +09:00
David Rodriguez a959342abf
[rubygems/rubygems] Remove comment that seems no longer accurate
We require things inline or autoload them for efficiency and to avoid as
much as possible conflicting with user's choice of gems.

But I removed the require and observed no deadlocks when activating
gems.

https://github.com/rubygems/rubygems/commit/7d6333e842
2021-10-25 20:48:52 +09:00
David Rodriguez 9fbf3a1f6f
Unify issue template and ISSUES.md document
Some crucial information to ease maintainers work, like the advice of
upgrading rubygems and bundler, was one step away from the issue
template, making it easier for some users to miss.

Now all relevant information is written directly in the bug report
template.
2021-10-25 20:48:51 +09: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 7073870dfa
[rubygems/rubygems] Improve readability by splitting updating the cache and searching it
https://github.com/rubygems/rubygems/commit/d0df25bb0f
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 4fc29d17b3
[rubygems/rubygems] Cached gem path resolution should consider default gems
https://github.com/rubygems/rubygems/commit/83b2b845b3
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 57d990ddab
[rubygems/rubygems] Raise original exception
https://github.com/rubygems/rubygems/commit/3c93b9fd21
2021-10-25 20:48:51 +09:00
David Rodriguez 7b821bc9b5
[rubygems/rubygems] Add missing requires
These methods rescue a constant defined by `rubygems/remote_fetcher`,
so they should technically require it.

The require is provided by `gem_remote_fetcher` anyways but I was
running a unit spec that stubs that method, so I was getting an
undefined constant error hiding another error.

https://github.com/rubygems/rubygems/commit/8bedae4034
2021-10-25 20:48:50 +09:00
David Rodriguez 9b1b171866
[rubygems/rubygems] Use `Gem::Specification#file_name` consistently
https://github.com/rubygems/rubygems/commit/13b933f49a
2021-10-25 20:48:50 +09:00
David Rodriguez 38542cfffc
[rubygems/rubygems] Extract a `default_cache_path` helper
https://github.com/rubygems/rubygems/commit/8319305d58
2021-10-25 20:48:50 +09:00
David Rodriguez edc1813190
[rubygems/rubygems] Small refactor
Extract final cache path to a variable and pass that to `download_gem`.
It actually fits better the parameters documentation since it's the
final directory where the downloaded gem will be placed.

https://github.com/rubygems/rubygems/commit/1429db6a04
2021-10-25 20:48:50 +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
Daniel Colson 7394514bde [rubygems/rubygems] Simplify and remove some unused code
When `install_with_build_args` was added in
be96283985,
there were two versions of the method: the default version in the base class that still
used the locking `with_build_args`, and an override in the `Future`
class (for Rubygems 2.0 and up) that yielded without calling
`with_build_args`.

The `with_build_args` version of the method was removed in
8a5b71e3e8
while removing a bunch of the old Rubygems compatibility code.

This commit removes `with_build_args`, since it no longer appears to be
used (the build args are passed as a keyword argument to
`spec.source.install` instead, since
be96283985).

The commit also removes `install_with_build_args` and the conditional
around it, since the method wasn't doing anything different than
`install`, and it had a comment that was no longer accurate.

https://github.com/rubygems/rubygems/commit/ba543a60eb
2021-10-25 19:02:50 +09:00
rm155 ee948fc1b4 [ruby/csv] Add support for Ractor (https://github.com/ruby/csv/pull/218)
https://github.com/ruby/csv/commit/a802690e11
2021-10-24 05:57:33 +09:00
Sutou Kouhei 274882be62 [ruby/csv] Use test-unit gem instead of test-framework of ruby repo
https://github.com/ruby/csv/commit/9c4add0d31
2021-10-24 05:57:33 +09:00
Anthony Hernandez 8fde54a3b5 [ruby/csv] CSV(): Add support for Ruby 3 (https://github.com/ruby/csv/pull/215)
The implementation of the `CSV` shortcut method is broken in Ruby 3
for calls that look like this:

```ruby
CSV(write_stream, col_sep: "|", headers: headers, write_headers: true) do |csv|
  ...
end
```

The above will result in the following error when the `CSV` method attempts to pass
on arguments to `CSV#instance`:

```
ArgumentError: wrong number of arguments (given 2, expected 0..1)
```

The issue is due to the changes in Ruby 3 relating to positional & keyword arguments.

This commit updates the `CSV()` shortcut implementation to work with Ruby 3, and also
updates the documentation for the shortcut method.

https://github.com/ruby/csv/commit/310dee45fa
2021-10-24 05:57:33 +09:00
Kenta Murata 1073975013 [ruby/csv] CI: Stop coverage mesurement
https://github.com/ruby/csv/commit/5ff3b95018
2021-10-24 05:57:33 +09:00
Sutou Kouhei 8ba98f83b0 [ruby/csv] Use "\n" for the default row separator on Ruby 3.0 or later
https://github.com/ruby/csv/commit/1f9cbc170e
2021-10-24 05:57:33 +09:00
Joakim Antman 7f3dd601c8 [ruby/csv] Changed line ending handling to consider the combination \r\n as a single entry when row is faulty (https://github.com/ruby/csv/pull/220)
https://github.com/ruby/csv/commit/29cef9ea9d
2021-10-24 05:57:33 +09:00
Sutou Kouhei 39ecdabe67 [ruby/csv] Resolve CSV::Converters and HeaderConverters lazy
It's for Ractor. If you want to use the built-in converters, you
should call Ractor.make_shareable(CSV::Converters) and/or
Ractor.make_shareable(CSV::HeaderConverters).

https://github.com/ruby/csv/commit/b0b1325d6b
2021-10-24 05:57:33 +09:00
Vince 8aaa1c279f [ruby/csv] doc: Match text to the struct name (https://github.com/ruby/csv/pull/217)
https://github.com/ruby/csv/commit/744e41130c
2021-10-24 05:57:33 +09:00
Sutou Kouhei e40baca33d [ruby/csv] Bump version
https://github.com/ruby/csv/commit/3025070cea
2021-10-24 05:57:33 +09:00
Yuki Nishijima e353bcd111 Sync did_you_mean 2021-10-22 21:56:26 -04:00
Yuki Nishijima 66df18c55e Sync did_you_mean again 2021-10-22 21:00:23 -04:00
Yuki Nishijima 22249bbb37 Revert "Sync did_you_mean"
This reverts commit e22d293e06.
2021-10-22 20:56:26 -04:00
Yuki Nishijima e22d293e06 Sync did_you_mean 2021-10-22 20:35:40 -04:00
rm155 d09cb64ae5 [ruby/mutex_m] Make VERSION shareable
https://github.com/ruby/mutex_m/commit/a839e29d04
2021-10-22 19:49:34 +09:00
Tiago 553f234a07 [ruby/uri] URI#HTTP#origin and URI#HTTP#authority (https://github.com/ruby/uri/pull/30)
https://github.com/ruby/uri/commit/bf13946c32

Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz>
2021-10-22 19:48:36 +09:00
Olle Jonsson c8ad024e8e [ruby/delegate] gemspec: Drop unused executables directives
https://github.com/ruby/delegate/commit/81a3c32140
2021-10-22 19:48:22 +09:00
Justin Searls d0cad8ad83 [rubygems/rubygems] Re-enable `default_ignores` option for standard
I am not sure why this flag was turned off (it wasn't explained in my commit message in 0365dc852767ae589376a7aad1fb129738e408b0 or in my PR in #4411). 

Whatever the reason, without `default_ignores` turned on, most default CI configurations will immediately fail, as they most likely vendor and cache their dependencies under `vendor`, which will cause standard to run against all the vendored gems and (most likely) fail. I think we should remove this before this feature is released.

https://github.com/rubygems/rubygems/commit/677f74be48
2021-10-22 03:33:44 +09:00
Hiroshi SHIBATA eac7a71062 [ruby/prettyprint] Bump up prettyprint version to 0.1.1
https://github.com/ruby/prettyprint/commit/0e8eee5f5f
2021-10-21 21:05:39 +09:00
Hiroshi SHIBATA ba3c2593ab [ruby/pp] Bump up pp version to 0.2.1
https://github.com/ruby/pp/commit/06b839b9ca
2021-10-21 21:04:14 +09:00
Hiroshi SHIBATA 9f398d023b [ruby/securerandom] Bump up securerandom version to 0.1.1
https://github.com/ruby/securerandom/commit/5f9d3d1dfa
2021-10-21 21:03:08 +09:00
Hiroshi SHIBATA aca0dcc5f9 [ruby/rinda] Bump up rinda version to 0.1.1
https://github.com/ruby/rinda/commit/d394ba107e
2021-10-21 21:02:37 +09:00
Hiroshi SHIBATA b8d49d0d01 [ruby/optparse] Bump up optparse version to 0.2.0
https://github.com/ruby/optparse/commit/1226b670e6
2021-10-21 21:01:34 +09:00
Hiroshi SHIBATA cb4c98f949 [ruby/net-http] Bump up net-http version to 0.2.0
https://github.com/ruby/net-http/commit/f3e65e2a31
2021-10-21 21:01:06 +09:00
Hiroshi SHIBATA cc2f76041d [ruby/net-protocol] Bump up net-protocol version to 0.1.2
https://github.com/ruby/net-protocol/commit/088e52609a
2021-10-21 21:00:53 +09:00
Hiroshi SHIBATA 8ef125c838 [ruby/uri] Bump up uri version to 0.11.0
https://github.com/ruby/uri/commit/1619f713e6
2021-10-21 21:00:04 +09:00
Hiroshi SHIBATA 422b057d65 [ruby/ostruct] Bump up ostruct version to 0.5.0
https://github.com/ruby/ostruct/commit/c535a406f8
2021-10-21 20:54:33 +09:00
Hiroshi SHIBATA 6b08aaf228 [ruby/fileutils] Bump up fileutils version to 1.6.0
https://github.com/ruby/fileutils/commit/918d19e4f2
2021-10-21 20:14:57 +09:00
Hiroshi SHIBATA 6b1efc54c8 [ruby/racc] Bump up racc version to 1.6.0
https://github.com/ruby/racc/commit/0c5fe2637c
2021-10-19 21:13:29 +09:00
Hiroshi SHIBATA de68de87ea [ruby/logger] Bump up logger version to 1.4.4
https://github.com/ruby/logger/commit/82a59c8d3f
2021-10-19 21:08:48 +09:00
Hiroshi SHIBATA a7d07ee90d [ruby/tempfile] Bump up tempfile version to 0.1.2
https://github.com/ruby/tempfile/commit/e5ec902256
2021-10-19 20:55:55 +09:00