Age | Commit message (Collapse) | Author |
|
On `rails/rails` repository Gemfile, running the following script
```
# script.rb
require "bundler/setup"
```
#### Before
```
➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
Total allocated: 24.37 MB (207937 objects)
Total retained: 2.98 MB (34152 objects)
```
#### After
```
➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
Total allocated: 22.27 MB (206856 objects)
Total retained: 2.98 MB (34152 objects)
```
https://github.com/rubygems/rubygems/commit/2ea2523afd
Co-authored-by: Josh Nichols <josh.nichols@gusto.com>
|
|
On a different patch, it was noticed Ngam Pham that we are calling
`LazySpecification#hash` many times, and simply memoizing that led to a
very considerable performance improvement in his app.
I noticed though that we shouldn't be calling `LazySpecification#hash`
that many times, and I located the culprit at `SpecSet#for` where we
were deduplicating the partial aggregated result on every iteration. It
is enough to do it just once at the end.
This leads on a 12% speedup on Rails repository Gemfile vs the previous
8% I was getting from memoizing `LazySpecification#hash`. Also, after
this patch memoizing `LazySpecification#hash` has no effect in
performance anymore.
https://github.com/rubygems/rubygems/commit/68d00a9edd
Co-authored-by: Ngan Pham <ngan@users.noreply.github.com>
|
|
install output
The lockfile is completely ignored in inline mode, yet the previous
output would suggest it wasn't.
https://github.com/rubygems/rubygems/commit/763125a745
|
|
The other sources use `options` which reads better.
https://github.com/rubygems/rubygems/commit/a672f9d602
|
|
Previously we were removing not installable specs. However, if those are
the only ones, that would result in a bad error message. If we still
choose them as a last resort, Bundler will later check metadata right
before installing a give a proper error.
This is a regression of https://github.com/rubygems/rubygems/commit/565549260be5 and the
fix is to revert that commit.
https://github.com/rubygems/rubygems/commit/bc18912257
|
|
https://github.com/rubygems/rubygems/commit/531d6b5fee
|
|
https://github.com/rubygems/rubygems/commit/08a0a5b7d1
|
|
https://github.com/rubygems/rubygems/commit/fa0ac74883
|
|
https://github.com/rubygems/rubygems/commit/c43d5f979a
|
|
https://github.com/rubygems/rubygems/commit/ea09bc4680
|
|
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
|
|
https://github.com/rubygems/rubygems/commit/c60ed4878c
Notes:
Merged: https://github.com/ruby/ruby/pull/5669
|
|
https://github.com/rubygems/rubygems/commit/fe96fb6e2ac5a8b6df5e852470d11fa854301eca
Notes:
Merged: https://github.com/ruby/ruby/pull/5669
|
|
A while ago, we fixed resolution when using old dependency endpoints to
also consider metadata dependencies, by requesting the full gemspec from
the marsahaled index, which includes this information as opposed to
these old APIs. This has made resolution slower, but correct, but also
introduced the issue that some old marshaled gemspecs don't include the
`required_rubygems_version` field because they were created with a
RubyGems version that predates its addition.
Use a default value in this case.
https://github.com/rubygems/rubygems/commit/5dc94afcc0
Co-authored-by: Ilya Dudarenko <i.dudarenko@tinkoff.ru>
|
|
https://github.com/rubygems/rubygems/commit/5462322f8f
|
|
Dependabot bumped the repo's configuration in 0c996fa but it did not
bump the version in the template for `bundler gem`
https://github.com/rubygems/rubygems/commit/e14980e169
|
|
scope changes
In https://github.com/rubygems/rubygems/pull/4152 `bundle config` was changed
to default to local scope (instead of global) if the command was executed
from inside an application directory.
Updated documentation reflects this change.
https://github.com/rubygems/rubygems/commit/d92d42cae5
|
|
See
https://docs.github.com/es/actions/learn-github-actions/environment-variables#default-environment-variables.
So that we can show stats about it at https://ecosystem.rubytogether.org
https://github.com/rubygems/rubygems/commit/48d6dc68f8
|
|
is missing
When I run bundle install with BUNDLE_DEPLOYMENT=true in the environment
on a different platform than I usually do development, I get the
following output to the console (wrapped exactly as shown):
Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform
is x86_64-linux. Add the current platform to the lockfile with `bundle lock
--add-platform x86_64-linux` and try again.
Because the way the message wraps, its not as simple as copying the
suggested command to the clipboard because it contains a newline:
$ bundle lock
Writing lockfile to [...]/Gemfile.lock
$ --add-platform x86_64-linux
Adding a newline right before the command forces the command in the
error message to be on the same line, which facilitates copy-pasting the
command in the message.
https://github.com/rubygems/rubygems/commit/4cf6989b11
|
|
Reduce the number of steps required to install a gem from two steps to one by using `bundle add`
https://github.com/rubygems/rubygems/commit/2c968420cd
|
|
consistent
Previously they had slightly different behavior when combined with
conservative updating flags.
The correct behavior is the `--update-strict` option, so `--script` now
does that, The `--update-strict` option is left there for now but I will
deprecate it later.
https://github.com/rubygems/rubygems/commit/ab42046229
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5606
|
|
https://github.com/rubygems/rubygems/commit/666f3cc724
|
|
sources
https://github.com/rubygems/rubygems/commit/9712262d90
|
|
https://github.com/rubygems/rubygems/commit/bc69d19097
|
|
If a Shipment has been delivered, there is no point in notifying the
buyer that the seller shipped. Instead, we should simply notify the
buyer that the shipment was delivered. This is relevant in cases where
the seller is late to mark a Shipment as shipped, so the first EasyPost
Tracker update marks it as delivered, or in cases where the seller
fails to mark as shipped and the buyer marks it as delivered.
This fixes a Shipment event handler so the buyer notification for
shipment is no longer invoked if the Shipment is already delivered.
https://github.com/rubygems/rubygems/commit/09c2cadc86
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5512
|
|
the current specific platform
https://github.com/rubygems/rubygems/commit/9ca371adf8
|
|
In certain places, we want to display the platform name with
`Gem::Platform.local` instead of `RUBY_PLATFORM`.
Fixes https://github.com/rubygems/rubygems/issues/5264
https://github.com/rubygems/rubygems/commit/bdd1848ae8
|
|
* `foo` => `TestFoo`
* `foo_bar` => `TestFooBar`
* `foo-bar` => `Foo::TestBar`
https://github.com/rubygems/rubygems/commit/353cdd61c3
|
|
foo => test/test_foo.rb
foo-bar => test/foo/test_bar.rb
foo_bar => test/test_foo_bar.rb
https://github.com/rubygems/rubygems/commit/c795e5d40d
|
|
command
...with dashed gem name
In "bundle gem" command with dashed name gem (e.g. foo-bar) generates
`test/test_foo/bar.rb`, but this file contains undefined class `TestFoo`
and moreover, does not include in "bundle exec rake test" target.
Therefore, intentially the first test after gem created is fail, but in
case of gem name contains dash character is not.
The change doings...
(when "bundle gem foo-bar" called)
* create `test/test_foo_bar.rb`
* define `TestFooBar` class in `test/test_foo_bar.rb`
https://github.com/rubygems/rubygems/commit/5d9a69fc0f
|
|
Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a
Notes:
Merged: https://github.com/ruby/ruby/pull/5462
|
|
required_rubygems_version
https://github.com/rubygems/rubygems/commit/91f07a0208
|
|
https://github.com/rubygems/rubygems/commit/1791b5b9e5
|
|
library presence
https://github.com/rubygems/rubygems/commit/ecd495ce1b
|
|
contains only development script
https://github.com/rubygems/rubygems/commit/01017ee8ca
|
|
https://github.com/rubygems/rubygems/commit/48ea2778e9
|
|
Calculate the checksum of the content, not the given pathname at
the build time itself.
https://github.com/rubygems/rubygems/commit/b60ee97ee9
|
|
https://github.com/rubygems/rubygems/commit/a053b7e4d4
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5350
|
|
Since we're at it. This generates a bunch of warnings and seems like a
brittle way to test things, so let's get rid of it.
https://github.com/rubygems/rubygems/commit/f5d45520e0
Notes:
Merged: https://github.com/ruby/ruby/pull/5350
|
|
Probably `RUBY_VERSION` seems overwritten somewhere in the tests.
Notes:
Merged: https://github.com/ruby/ruby/pull/5349
Merged-By: nobu <nobu@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5342
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5334
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5325
|
|
We stay to the stable version for releasing Ruby 3.1.0.
Revert commits:
b86a7ba49252e00e19c22bbcdc821b5acc31ff92
ef973aa7aa65143a4f05d623c016d459426770d0
|
|
different platforms
https://github.com/rubygems/rubygems/commit/83bc87ca98
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5317
|