Age | Commit message (Collapse) | Author |
|
Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199
Notes:
Merged: https://github.com/ruby/ruby/pull/6224
|
|
Pick from https://github.com/rubygems/rubygems/commit/8331e63263081a6aa690d8025d2957f30c4e814a
Notes:
Merged: https://github.com/ruby/ruby/pull/6209
|
|
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
|
|
If directories are already created (the common case), fileutils won't be
required at all.
https://github.com/rubygems/rubygems/commit/63a9b94fc9
|
|
to load
Show an absolute path instead of an unhelpful relative path.
https://github.com/rubygems/rubygems/commit/f1eed36e2f
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6054
|
|
It was being explicitly required from `Gem::Specification` but also a
strange autoload was set for it at `Gem::Version`. The autoload was non
standard because it should've been done in the `Gem` module, not in
`Gem::Specification`, since that's where the constant is expected to get
defined. Doing this might get deprecated in the future, and it was not
being effective anyways due to the explicit require.
Unify everything with an `autoload` at the right place.
https://github.com/rubygems/rubygems/commit/174ea3e24c
|
|
https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51
|
|
https://github.com/rubygems/rubygems/commit/3f7d0352e84b29d4a2d4cd93b31e5ebdb5f79cc6
Notes:
Merged: https://github.com/ruby/ruby/pull/5669
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5669
|
|
rdoc uses + for typewriter font rather than backticks.
https://github.com/rubygems/rubygems/commit/be320f1e0c
|
|
https://github.com/rubygems/rubygems/commit/3e06a91435
|
|
Since it only uses `flock` on Windows.
https://github.com/rubygems/rubygems/commit/b877de4d9c
|
|
It was introduced to fix some race conditions there, but it doesn't seem
necessary on other systems and it's actually causing issues there.
https://github.com/rubygems/rubygems/commit/27b682c812
|
|
Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a
Notes:
Merged: https://github.com/ruby/ruby/pull/5462
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5350
|
|
It reduces memory usage about 204kb (1.4%).
https://github.com/rubygems/rubygems/commit/b7d4b8c8a6
Notes:
Merged: https://github.com/ruby/ruby/pull/5350
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5342
|
|
`io.flock(File::LOCK_EX)` fails on Solaris when the io is opened as
read-only. Due to this issue, `make install` of the ruby package failed
on Solaris.
https://github.com/rubygems/rubygems/commit/5905d17ab2
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5334
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5325
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5317
|
|
The `File::BINARY` flag is apparently ignored due to a ruby bug, and
thus writing can cause encoding issues.
https://github.com/rubygems/rubygems/commit/db4efbebf2
|
|
Merge from https://github.com/rubygems/rubygems/commit/793ad95ecb40e84a1dcb4cb60f2686843ed90de5
Notes:
Merged: https://github.com/ruby/ruby/pull/5265
|
|
https://github.com/rubygems/rubygems/commit/a93ec63df3
|
|
|
|
concurrently
When bundler parallel installer installs gems concurrently, one can get
confusing warnings like the following:
```
"[/home/runner/work/rubygems/rubygems/bundler/tmp/2/gems/system/specifications/zeitwerk-2.4.2.gemspec] isn't a Gem::Specification (NilClass instead).
```
I've got these warnings several times in the past, but I never managed
to reproduce them, and never look deeply into the root cause, but this
time a got a cause that reproduced quite frequently, so I looked into
it.
The problem is one thread reading a gemspec while another thread is
writing it. The write of the gemspec was not protected, so
`Gem::Specification.load` could end up seeing a truncated gemspec and
thus throw this warning.
The fix involve two changes:
* Change the methods that write gemspecs to use `Gem.binary_write` which
is protected by a lock.
* Fix `Gem.binary_write` to create the file lock at file creation time,
not when the file already exists after.
The realworld user problem caused by this issue happens in bundler, but
I'm fixing it in rubygems first, and then I'll backport to bundler
whatever needs backporting to fix the issue on the bundler side.
https://github.com/rubygems/rubygems/commit/a672e7555c
|
|
https://github.com/rubygems/rubygems/commit/c74fc58695
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
We think it's unlikely that `rubygems/defaults/operating_system` could be shipped with a SyntaxError so StandardError could be better choice to prevent "false positives" errors.
https://github.com/rubygems/rubygems/commit/1f73e784dd
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
For errors that could happened while loading `rubygems/defaults/operating_system`
https://github.com/rubygems/rubygems/commit/6e1e2141f8
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
rubygems/defaults/operating_system file
When loading `rubygems/defaults/operating_system`
- we want to keep it silent if the raised exception is a LoadError
- we want to print a message in other cases and ask users to report the issue to their OS support.
Ruby 3 comes with special error handling for loading `rubygems` and it will show a warning when LoadError exception raised for requiring 'rubygem'.
Because of that, we decided to leave the LoadError scenario as it is.
Reference: https://github.com/ruby/ruby/blob/d1998d8767affe58be0bd09ec536dae9198a7fbd/gem_prelude.rb#L1-L5
https://github.com/rubygems/rubygems/commit/0a97e12fe1
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/82960c262f
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/4028cbc408
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
As far as I understand, this block should only be run when
`bundler/setup` fails. The only other case where these errors could be
run is when bundler itself is required.
If bundler itself fails to be required or activated (like in old rubies
where it was not a default gem, for example), the raw error is much more
helpful than this message.
So we can move the rescue after bundler is succesfully required, and
that simplifies the list of exceptions that we need to track to just
`Bundler::Error`.
https://github.com/rubygems/rubygems/commit/3663c11e93
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
Instead of having to match classes and re-raise in the exception body.
https://github.com/rubygems/rubygems/commit/5edf74b781
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
The previous behavior was to automatically require `bundler/setup`
everytime `rubygems` was required, which I think was too much.
https://github.com/rubygems/rubygems/commit/b25379a295
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
The commented out code causes failing tests because it's not correct.
https://github.com/rubygems/rubygems/commit/38f0eca91a
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/c7c00c280f
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
After reading [this blog
post](https://blog.rubygems.org/2011/08/31/shaving-the-yaml-yak.html),
published almost 10 years ago already, my understanding is that this
problem could come up in two ways:
* Rubygems.org serving corrupted gemspecs". As far as I understand this
was fixed in rubygems.org a lot time ago, since
https://github.com/rubygems/rubygems.org/pull/331.
* Clients having a ten years old gemspec cache with some of these bad
gemspecs. In this case, there's no easy solution but I think ten years
is enough and rebuilding the cache should do the trick.
So, I think it's time we remove this.
https://github.com/rubygems/rubygems/commit/afcb15d556
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4634
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4367
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4383
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4143
|
|
55634a8af18a52df86c4275d70fa1179118bcc20
Notes:
Merged: https://github.com/ruby/ruby/pull/4021
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3982
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3930
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3901
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3864
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3660
|
|
31a6eaabc165d8a222e176f2c809d90622d88ec2 is obsoleted with
https://github.com/rubygems/rubygems/pull/3820
|