| Age | Commit message (Collapse) | Author |
|
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
|
|
sources
https://github.com/rubygems/rubygems/commit/9712262d90
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5512
|
|
the current specific platform
https://github.com/rubygems/rubygems/commit/9ca371adf8
|
|
Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a
Notes:
Merged: https://github.com/ruby/ruby/pull/5462
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5350
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5334
|
|
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
|
|
Only needed if there can be no explicit global source (bundler < 3).
https://github.com/rubygems/rubygems/commit/73923f4af5
|
|
https://github.com/rubygems/rubygems/commit/06b4a7994d
|
|
Since we no longer have multiple global sources, each top level dependency is
always pinned to a single source, so it makes little sense to talk about
adding or removing a source. Instead, source changes always mean to
change the source one or more dependencies are pinned to. This logic can
now be much simpler.
https://github.com/rubygems/rubygems/commit/f1d33fa0df
|
|
Otherwise we hide some useful message about dependency source changes.
https://github.com/rubygems/rubygems/commit/c926673c5b
|
|
https://github.com/rubygems/rubygems/commit/6f1b5f68de
|
|
Somehow this is trying to relax frozen mode constraints for path
sources. It doesn't make sense to me and it's not covered by any spec so
I'm killing it.
https://github.com/rubygems/rubygems/commit/17c978e161
|
|
It makes the code more consistent with the above line.
https://github.com/rubygems/rubygems/commit/f28d05a548
|
|
https://github.com/rubygems/rubygems/commit/11193be3f1
|
|
https://github.com/rubygems/rubygems/commit/d047b8935d
|
|
|
|
https://github.com/rubygems/rubygems/commit/0396e899db
|
|
https://github.com/rubygems/rubygems/commit/3241b34055
|
|
Gemfile
https://github.com/rubygems/rubygems/commit/6a19cca7e5
|
|
https://github.com/rubygems/rubygems/commit/e896e63ac3
|
|
https://github.com/rubygems/rubygems/commit/afaf868b68
|
|
Picked from https://github.com/rubygems/rubygems/commit/4b498709a015a94e14a3852a1841a7a3e669133d
|
|
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
|
|
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
|
|
This is exclusively about the lockfile.
https://github.com/rubygems/rubygems/commit/d6c6d040cd
|
|
https://github.com/rubygems/rubygems/commit/7326d47530
|
|
It doesn't really need converged specs, since it's only about the
lockfile.
https://github.com/rubygems/rubygems/commit/9cd6224b5e
|
|
As part of a recent bug fix where bundler was accidentally hitting the
network when not supposed to, I made some refactoring, and the commit I'm
reverting here
(https://github.com/rubygems/rubygems/commit/d74830d00bb541883377992f56818620a78930b0)
was some cleanup that those refactorings allowed according to "past me".
That was completely wrong, `bundle check` should never consider cached
gems, only installed gems, so the code that was removed was necessary.
https://github.com/rubygems/rubygems/commit/5483e98305
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/d74830d00b
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/06f5efce02
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
compatibility mode
Since this mode is only enabled in frozen mode, it's fine to use the
lockfile and means we don't have to "prepare" the replacement for
materialization.
https://github.com/rubygems/rubygems/commit/dda01b288e
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
installing it
Not only the first one that's missing.
This also allows us to simplify things.
https://github.com/rubygems/rubygems/commit/69718a9509
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
https://github.com/rubygems/rubygems/commit/c7e3c092e1
Notes:
Merged: https://github.com/ruby/ruby/pull/4789
|
|
Bundler has deprecated gemfiles without a global source and this feature
is now obsolete. `Bundler::Definition#has_rubygems_remotes?` is removed
because it's not used anymore.
https://github.com/rubygems/rubygems/commit/d29dd2cb7b
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4648
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4634
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4533
|
|
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/3901
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3864
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3659
|
|
The `only_update_to_newer_versions` feature flag will enable some new
behaviour in bundler 3 (or maybe earlier if we decide to consider it a
bug fix) that prevents `bundle update` from unexpectedly downgrading
direct dependencies.
This seems reasonable, but the current implementation is adding
additional requirements for all locked dependencies, not only from the
ones in the `Gemfile`. That causes some situations where the `Gemfile`
is edited and will resolve to older versions to start failing.
This commit fixes the problem by making sure extra requirements are
added exclusively for direct dependencies in the `Gemfile`, not for all
direct dependencies in the lock file.
https://github.com/rubygems/rubygems/commit/128b4596e1
Notes:
Merged: https://github.com/ruby/ruby/pull/3212
|