bundler 2.2.26 → 2.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +166 -1
- data/README.md +1 -1
- data/exe/bundle +7 -8
- data/lib/bundler/.document +1 -0
- data/lib/bundler/build_metadata.rb +2 -2
- data/lib/bundler/cli/check.rb +1 -1
- data/lib/bundler/cli/doctor.rb +3 -2
- data/lib/bundler/cli/gem.rb +88 -9
- data/lib/bundler/cli/info.rb +16 -4
- data/lib/bundler/cli/install.rb +2 -3
- data/lib/bundler/cli/issue.rb +4 -3
- data/lib/bundler/cli/remove.rb +1 -2
- data/lib/bundler/cli/update.rb +2 -2
- data/lib/bundler/cli.rb +10 -1
- data/lib/bundler/compact_index_client/updater.rb +0 -5
- data/lib/bundler/compact_index_client.rb +2 -2
- data/lib/bundler/definition.rb +77 -124
- data/lib/bundler/dependency.rb +5 -7
- data/lib/bundler/digest.rb +71 -0
- data/lib/bundler/dsl.rb +18 -30
- data/lib/bundler/endpoint_specification.rb +0 -8
- data/lib/bundler/environment_preserver.rb +4 -1
- data/lib/bundler/errors.rb +18 -2
- data/lib/bundler/fetcher/compact_index.rb +9 -4
- data/lib/bundler/fetcher.rb +4 -6
- data/lib/bundler/friendly_errors.rb +5 -30
- data/lib/bundler/gem_helper.rb +6 -17
- data/lib/bundler/injector.rb +10 -1
- data/lib/bundler/installer/gem_installer.rb +1 -6
- data/lib/bundler/installer.rb +1 -5
- data/lib/bundler/lazy_specification.rb +17 -1
- data/lib/bundler/lockfile_parser.rb +10 -12
- data/lib/bundler/man/bundle-add.1 +10 -2
- data/lib/bundler/man/bundle-add.1.ronn +7 -1
- data/lib/bundler/man/bundle-binstubs.1 +1 -1
- data/lib/bundler/man/bundle-cache.1 +1 -1
- data/lib/bundler/man/bundle-check.1 +1 -1
- data/lib/bundler/man/bundle-clean.1 +1 -1
- data/lib/bundler/man/bundle-config.1 +5 -5
- data/lib/bundler/man/bundle-config.1.ronn +5 -5
- data/lib/bundler/man/bundle-doctor.1 +1 -1
- data/lib/bundler/man/bundle-exec.1 +1 -1
- data/lib/bundler/man/bundle-gem.1 +14 -1
- data/lib/bundler/man/bundle-gem.1.ronn +16 -0
- data/lib/bundler/man/bundle-info.1 +1 -1
- data/lib/bundler/man/bundle-init.1 +1 -1
- data/lib/bundler/man/bundle-inject.1 +1 -1
- data/lib/bundler/man/bundle-install.1 +2 -2
- data/lib/bundler/man/bundle-install.1.ronn +2 -2
- data/lib/bundler/man/bundle-list.1 +1 -1
- data/lib/bundler/man/bundle-lock.1 +1 -1
- data/lib/bundler/man/bundle-open.1 +1 -1
- data/lib/bundler/man/bundle-outdated.1 +1 -1
- data/lib/bundler/man/bundle-platform.1 +1 -1
- data/lib/bundler/man/bundle-pristine.1 +1 -1
- data/lib/bundler/man/bundle-remove.1 +1 -1
- data/lib/bundler/man/bundle-show.1 +1 -1
- data/lib/bundler/man/bundle-update.1 +2 -2
- data/lib/bundler/man/bundle-update.1.ronn +2 -1
- data/lib/bundler/man/bundle-viz.1 +1 -1
- data/lib/bundler/man/bundle.1 +1 -1
- data/lib/bundler/man/gemfile.5 +28 -2
- data/lib/bundler/man/gemfile.5.ronn +9 -1
- data/lib/bundler/plugin/api/source.rb +1 -0
- data/lib/bundler/plugin/installer.rb +3 -1
- data/lib/bundler/plugin.rb +23 -6
- data/lib/bundler/process_lock.rb +1 -1
- data/lib/bundler/psyched_yaml.rb +1 -13
- data/lib/bundler/resolver.rb +34 -31
- data/lib/bundler/ruby_version.rb +1 -1
- data/lib/bundler/rubygems_ext.rb +6 -0
- data/lib/bundler/rubygems_gem_installer.rb +21 -5
- data/lib/bundler/rubygems_integration.rb +39 -57
- data/lib/bundler/runtime.rb +2 -2
- data/lib/bundler/self_manager.rb +94 -0
- data/lib/bundler/settings.rb +10 -1
- data/lib/bundler/shared_helpers.rb +4 -12
- data/lib/bundler/source/git/git_proxy.rb +7 -4
- data/lib/bundler/source/git.rb +22 -4
- data/lib/bundler/source/metadata.rb +1 -1
- data/lib/bundler/source/rubygems.rb +60 -85
- data/lib/bundler/source/rubygems_aggregate.rb +1 -1
- data/lib/bundler/source.rb +3 -1
- data/lib/bundler/source_list.rb +11 -29
- data/lib/bundler/spec_set.rb +2 -2
- data/lib/bundler/templates/Executable.bundler +1 -1
- data/lib/bundler/templates/Gemfile +0 -2
- data/lib/bundler/templates/gems.rb +0 -3
- data/lib/bundler/templates/newgem/Gemfile.tt +5 -2
- data/lib/bundler/templates/newgem/Rakefile.tt +15 -2
- data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +4 -3
- data/lib/bundler/templates/newgem/newgem.gemspec.tt +14 -14
- data/lib/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
- data/lib/bundler/templates/newgem/standard.yml.tt +2 -0
- data/lib/bundler/templates/newgem/test/minitest/{newgem_test.rb.tt → test_newgem.rb.tt} +1 -1
- data/lib/bundler/ui/shell.rb +1 -1
- data/lib/bundler/vendor/.document +1 -0
- data/lib/bundler/vendor/connection_pool/LICENSE +20 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +19 -21
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +57 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +39 -74
- data/lib/bundler/vendor/fileutils/LICENSE.txt +22 -0
- data/lib/bundler/vendor/molinillo/LICENSE +9 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +2 -2
- data/lib/bundler/vendor/net-http-persistent/README.rdoc +82 -0
- data/lib/bundler/vendor/thor/LICENSE.md +20 -0
- data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +6 -6
- data/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +5 -3
- data/lib/bundler/vendor/thor/lib/thor/actions.rb +6 -2
- data/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +6 -0
- data/lib/bundler/vendor/thor/lib/thor/error.rb +9 -4
- data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +19 -1
- data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +22 -4
- data/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
- data/lib/bundler/vendor/tsort/LICENSE.txt +22 -0
- data/lib/bundler/vendor/tsort/lib/tsort.rb +453 -0
- data/lib/bundler/vendor/uri/LICENSE.txt +22 -0
- data/lib/bundler/vendor/uri/lib/uri/common.rb +17 -80
- data/lib/bundler/vendor/uri/lib/uri/ftp.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/generic.rb +5 -6
- data/lib/bundler/vendor/uri/lib/uri/http.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/https.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/mailto.rb +0 -1
- data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +1 -14
- data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +1 -12
- data/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
- data/lib/bundler/vendor/uri/lib/uri/ws.rb +84 -0
- data/lib/bundler/vendor/uri/lib/uri/wss.rb +22 -0
- data/lib/bundler/vendor/uri/lib/uri.rb +0 -1
- data/lib/bundler/vendored_tsort.rb +4 -0
- data/lib/bundler/version.rb +1 -1
- data/lib/bundler/worker.rb +2 -2
- data/lib/bundler.rb +22 -21
- metadata +25 -9
- data/lib/bundler/gemdeps.rb +0 -29
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb +0 -66
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '07833d3c4b77a6566dce7964d5a9aa188967a39df2a81a78d145de9f27159019'
|
|
4
|
+
data.tar.gz: eb3e37e52c9ec73e4f59a63fca82d09b0469910a7f01f86ed734e4799926856c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3c58cbd37d07fff2205a51f8157146d80eca0f155c1ec5d7396801bc5bc482767ec7e418e6549d7fed88904ab7fa9588b47f36b8bce8f2176dbe2062ffcd397b
|
|
7
|
+
data.tar.gz: '0118cc34cd853d7b51d116eb88d692b2637ab894a8029ee9d853ee2824705b55d6685ecfeaf51dd102fe8361afef0e606a581a511beaf91a92fef50403a56cec'
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,168 @@
|
|
|
1
|
+
# 2.3.4 (December 29, 2021)
|
|
2
|
+
|
|
3
|
+
## Enhancements:
|
|
4
|
+
|
|
5
|
+
- Improve error message when `BUNDLED WITH` version does not exist [#5205](https://github.com/rubygems/rubygems/pull/5205)
|
|
6
|
+
|
|
7
|
+
## Bug fixes:
|
|
8
|
+
|
|
9
|
+
- Fix `bundle update --bundler` no longer updating lockfile [#5224](https://github.com/rubygems/rubygems/pull/5224)
|
|
10
|
+
|
|
11
|
+
# 2.3.3 (December 24, 2021)
|
|
12
|
+
|
|
13
|
+
## Bug fixes:
|
|
14
|
+
|
|
15
|
+
- Fix locked bundler not installed to the right path when `deployment` is set [#5217](https://github.com/rubygems/rubygems/pull/5217)
|
|
16
|
+
|
|
17
|
+
# 2.3.2 (December 23, 2021)
|
|
18
|
+
|
|
19
|
+
## Enhancements:
|
|
20
|
+
|
|
21
|
+
- Remove unnecessary lockfile upgrade warning [#5209](https://github.com/rubygems/rubygems/pull/5209)
|
|
22
|
+
|
|
23
|
+
# 2.3.1 (December 22, 2021)
|
|
24
|
+
|
|
25
|
+
## Enhancements:
|
|
26
|
+
|
|
27
|
+
- Vendor latest `thor` with fixes for latest `did_you_mean` deprecations [#5202](https://github.com/rubygems/rubygems/pull/5202)
|
|
28
|
+
- Avoid unnecessary `shellwords` require on newer rubygems [#5195](https://github.com/rubygems/rubygems/pull/5195)
|
|
29
|
+
- Re-exec prepending command with `Gem.ruby` if `$PROGRAM_NAME` is not executable [#5193](https://github.com/rubygems/rubygems/pull/5193)
|
|
30
|
+
|
|
31
|
+
# 2.3.0 (December 21, 2021)
|
|
32
|
+
|
|
33
|
+
## Features:
|
|
34
|
+
|
|
35
|
+
- Change `bundle install` with a lockfile to respect the `BUNDLED WITH` bundler version [#4076](https://github.com/rubygems/rubygems/pull/4076)
|
|
36
|
+
|
|
37
|
+
## Enhancements:
|
|
38
|
+
|
|
39
|
+
- Print warning when running Bundler on potentially problematic RubyGems & Ruby combinations [#5177](https://github.com/rubygems/rubygems/pull/5177)
|
|
40
|
+
- Error tracing should be printed to stderr [#5179](https://github.com/rubygems/rubygems/pull/5179)
|
|
41
|
+
- Add `github` and `ref` options to `bundle add` [#5159](https://github.com/rubygems/rubygems/pull/5159)
|
|
42
|
+
- Add require parameter to `bundle add` [#5021](https://github.com/rubygems/rubygems/pull/5021)
|
|
43
|
+
- Enable parallel installation on Windows by default [#4822](https://github.com/rubygems/rubygems/pull/4822)
|
|
44
|
+
- More logging when compact index is not used and we fallback to other APIs [#4546](https://github.com/rubygems/rubygems/pull/4546)
|
|
45
|
+
- `bundle gem` generated MiniTest file and class now start with 'test' [#3893](https://github.com/rubygems/rubygems/pull/3893)
|
|
46
|
+
- Add `Bundler::Definition.no_lock` accessor for skipping lock file creation/update [#3401](https://github.com/rubygems/rubygems/pull/3401)
|
|
47
|
+
|
|
48
|
+
## Bug fixes:
|
|
49
|
+
|
|
50
|
+
- Fix crash when when no platform specific matches exist and show a proper error [#5168](https://github.com/rubygems/rubygems/pull/5168)
|
|
51
|
+
- Ignore dependencies not actually locked from frozen check [#5152](https://github.com/rubygems/rubygems/pull/5152)
|
|
52
|
+
- Fix `bundle cache --all-platforms` on Windows [#4552](https://github.com/rubygems/rubygems/pull/4552)
|
|
53
|
+
|
|
54
|
+
## Documentation:
|
|
55
|
+
|
|
56
|
+
- Fix gemspec template typo [#4545](https://github.com/rubygems/rubygems/pull/4545)
|
|
57
|
+
|
|
58
|
+
# 2.2.33 (December 7, 2021)
|
|
59
|
+
|
|
60
|
+
## Security fixes:
|
|
61
|
+
|
|
62
|
+
- Pass "--" to git commands to separate positional and optional args [#5142](https://github.com/rubygems/rubygems/pull/5142)
|
|
63
|
+
|
|
64
|
+
## Enhancements:
|
|
65
|
+
|
|
66
|
+
- Accept pull request URLs as github source [#5126](https://github.com/rubygems/rubygems/pull/5126)
|
|
67
|
+
- Add `--version` parameter to `bundle info` command [#5137](https://github.com/rubygems/rubygems/pull/5137)
|
|
68
|
+
- Let original `Errno::EACCES` error be raised in compact index updater [#5110](https://github.com/rubygems/rubygems/pull/5110)
|
|
69
|
+
- Improve gemfile-lockfile source equivalence errors [#5120](https://github.com/rubygems/rubygems/pull/5120)
|
|
70
|
+
- Avoid float-to-string loss of characters in GitHub Actions configuration labels in new gem template [#5089](https://github.com/rubygems/rubygems/pull/5089)
|
|
71
|
+
- Add an initial rbs template to `bundle gem` skeleton [#5041](https://github.com/rubygems/rubygems/pull/5041)
|
|
72
|
+
- Avoid shared libraries not getting environment passed right after argv in memory when `bundle exec` is used [#4815](https://github.com/rubygems/rubygems/pull/4815)
|
|
73
|
+
|
|
74
|
+
## Bug fixes:
|
|
75
|
+
|
|
76
|
+
- Don't cleanup paths from gems already activated from `$LOAD_PATH` [#5111](https://github.com/rubygems/rubygems/pull/5111)
|
|
77
|
+
- Fix handling prereleases of 0 versions, like 0.0.0.dev or 0.0.0.SNAPSHOT [#5116](https://github.com/rubygems/rubygems/pull/5116)
|
|
78
|
+
- Fix escape of filenames in `bundle doctor` [#5102](https://github.com/rubygems/rubygems/pull/5102)
|
|
79
|
+
- Don't unlock dependencies when running `bundle install` after changing global source [#5090](https://github.com/rubygems/rubygems/pull/5090)
|
|
80
|
+
- Fix missing locked specs when depended on another platform [#5092](https://github.com/rubygems/rubygems/pull/5092)
|
|
81
|
+
- Fix `bundle info` sometimes claiming that bundler has been deleted [#5097](https://github.com/rubygems/rubygems/pull/5097)
|
|
82
|
+
|
|
83
|
+
## Documentation:
|
|
84
|
+
|
|
85
|
+
- Ignore to generate the documentation from vendored libraries [#5118](https://github.com/rubygems/rubygems/pull/5118)
|
|
86
|
+
|
|
87
|
+
# 2.2.32 (November 23, 2021)
|
|
88
|
+
|
|
89
|
+
## Enhancements:
|
|
90
|
+
|
|
91
|
+
- Clarify `bundle viz` deprecation [#5083](https://github.com/rubygems/rubygems/pull/5083)
|
|
92
|
+
- Unlock dependencies that no longer match lockfile [#5068](https://github.com/rubygems/rubygems/pull/5068)
|
|
93
|
+
- Use `shellsplit` instead of array of strings for git push [#5062](https://github.com/rubygems/rubygems/pull/5062)
|
|
94
|
+
- Re-enable `default_ignores` option for standard [#5003](https://github.com/rubygems/rubygems/pull/5003)
|
|
95
|
+
|
|
96
|
+
## Bug fixes:
|
|
97
|
+
|
|
98
|
+
- Fix downgrading dependencies by changing the `Gemfile` and running `bundle update` [#5078](https://github.com/rubygems/rubygems/pull/5078)
|
|
99
|
+
|
|
100
|
+
# 2.2.31 (November 8, 2021)
|
|
101
|
+
|
|
102
|
+
## Enhancements:
|
|
103
|
+
|
|
104
|
+
- Link to working `bundler-graph` plugin in `bundle viz` deprecation message [#5061](https://github.com/rubygems/rubygems/pull/5061)
|
|
105
|
+
- Memoize materialized specs when requiring `bundler/setup` [#5033](https://github.com/rubygems/rubygems/pull/5033)
|
|
106
|
+
- Allow custom LicenseRef [#5013](https://github.com/rubygems/rubygems/pull/5013)
|
|
107
|
+
- Better error when installing a lockfile with git sources and git is not installed [#5036](https://github.com/rubygems/rubygems/pull/5036)
|
|
108
|
+
- Only delete cached gem when it's corrupted [#5031](https://github.com/rubygems/rubygems/pull/5031)
|
|
109
|
+
- Support gemified `tsort` [#5032](https://github.com/rubygems/rubygems/pull/5032)
|
|
110
|
+
- Add standard option alongside rubocop to `bundle gem` [#4411](https://github.com/rubygems/rubygems/pull/4411)
|
|
111
|
+
|
|
112
|
+
## Bug fixes:
|
|
113
|
+
|
|
114
|
+
- Fix system man pages no longer working after bundler overrides `MANPATH` [#5039](https://github.com/rubygems/rubygems/pull/5039)
|
|
115
|
+
- Don't warn when a lockfile is locked to a dev version [#5018](https://github.com/rubygems/rubygems/pull/5018)
|
|
116
|
+
|
|
117
|
+
# 2.2.30 (October 26, 2021)
|
|
118
|
+
|
|
119
|
+
## Enhancements:
|
|
120
|
+
|
|
121
|
+
- Add a custom SHA1 digest implementation to no longer depend on the digest gem before we know which version to activate [#4989](https://github.com/rubygems/rubygems/pull/4989)
|
|
122
|
+
- Ensure vendored gems have licenses [#4998](https://github.com/rubygems/rubygems/pull/4998)
|
|
123
|
+
- Update broken link in Bundler::Fetcher::CertificateFailureError [#4987](https://github.com/rubygems/rubygems/pull/4987)
|
|
124
|
+
- Give better errors for some permission issues [#4965](https://github.com/rubygems/rubygems/pull/4965)
|
|
125
|
+
- Print better errors when `bundler/gem_tasks` fail [#4872](https://github.com/rubygems/rubygems/pull/4872)
|
|
126
|
+
- Fix `bundle install` to reinstall deleted gems [#4974](https://github.com/rubygems/rubygems/pull/4974)
|
|
127
|
+
- Unify issue template and ISSUES.md document [#4980](https://github.com/rubygems/rubygems/pull/4980)
|
|
128
|
+
- Bump vendored connection_pool to 2.2.5 [#4738](https://github.com/rubygems/rubygems/pull/4738)
|
|
129
|
+
|
|
130
|
+
## Bug fixes:
|
|
131
|
+
|
|
132
|
+
- Fix error message pointing to non existing file when using a global gem cache [#4999](https://github.com/rubygems/rubygems/pull/4999)
|
|
133
|
+
- Fix install crash when lockfile has missing dependencies for the current platform [#4941](https://github.com/rubygems/rubygems/pull/4941)
|
|
134
|
+
- Make `bundle info` show a proper warning every time it finds a deleted gem [#4971](https://github.com/rubygems/rubygems/pull/4971)
|
|
135
|
+
|
|
136
|
+
# 2.2.29 (October 8, 2021)
|
|
137
|
+
|
|
138
|
+
## Enhancements:
|
|
139
|
+
|
|
140
|
+
- Require at least Ruby 2.6.0 for gems created with recent rubies [#4920](https://github.com/rubygems/rubygems/pull/4920)
|
|
141
|
+
- Include glob information in string representation of git sources to make generated lockfiles deterministic [#4947](https://github.com/rubygems/rubygems/pull/4947)
|
|
142
|
+
- Add missing `rubygem_push` prerequisite [#4930](https://github.com/rubygems/rubygems/pull/4930)
|
|
143
|
+
|
|
144
|
+
# 2.2.28 (September 23, 2021)
|
|
145
|
+
|
|
146
|
+
## Enhancements:
|
|
147
|
+
|
|
148
|
+
- Use example.com in new gem template, since it will never have a potentially dangerous backing website [#4918](https://github.com/rubygems/rubygems/pull/4918)
|
|
149
|
+
- Deprecate `--install` flag to `bundle remove` and trigger install by default [#4891](https://github.com/rubygems/rubygems/pull/4891)
|
|
150
|
+
|
|
151
|
+
# 2.2.27 (September 3, 2021)
|
|
152
|
+
|
|
153
|
+
## Enhancements:
|
|
154
|
+
|
|
155
|
+
- Optimize some requires [#4887](https://github.com/rubygems/rubygems/pull/4887)
|
|
156
|
+
- Correctly redact credentials when using x-oauth-basic [#4866](https://github.com/rubygems/rubygems/pull/4866)
|
|
157
|
+
|
|
158
|
+
## Bug fixes:
|
|
159
|
+
|
|
160
|
+
- Add missing key `branches:` to template for GitHub Actions [#4883](https://github.com/rubygems/rubygems/pull/4883)
|
|
161
|
+
- Fix `bundle plugin install` detection of already installed plugins [#4869](https://github.com/rubygems/rubygems/pull/4869)
|
|
162
|
+
- Make plugin installation idempotent [#4864](https://github.com/rubygems/rubygems/pull/4864)
|
|
163
|
+
- Fix `bundle check` showing duplicated gems when multiple platforms are locked [#4854](https://github.com/rubygems/rubygems/pull/4854)
|
|
164
|
+
- Fix `bundle check` incorrectly considering cached gems [#4853](https://github.com/rubygems/rubygems/pull/4853)
|
|
165
|
+
|
|
1
166
|
# 2.2.26 (August 17, 2021)
|
|
2
167
|
|
|
3
168
|
## Enhancements:
|
|
@@ -77,7 +242,7 @@
|
|
|
77
242
|
- Fix `bundle doctor` crashing when finding a broken symlink [#4707](https://github.com/rubygems/rubygems/pull/4707)
|
|
78
243
|
- Fix incorrect re-resolve edge case [#4700](https://github.com/rubygems/rubygems/pull/4700)
|
|
79
244
|
- Fix some gems being unintentionally locked under multiple lockfile sections [#4701](https://github.com/rubygems/rubygems/pull/4701)
|
|
80
|
-
- Fix `--conservative` flag unexpectedly updating indirect dependencies [#4692](https://github.com/rubygems/rubygems/pull/4692)
|
|
245
|
+
- Fix `--conservative` flag unexpectedly updating indirect dependencies. NOTE: As part of this bug fix, some undocumented, unintentional code causing `bundle update --source <gem>` to update conservatively was fixed. Use the documented `bundle update --conservative <gem>` instead [#4692](https://github.com/rubygems/rubygems/pull/4692)
|
|
81
246
|
|
|
82
247
|
# 2.2.21 (June 23, 2021)
|
|
83
248
|
|
data/README.md
CHANGED
|
@@ -32,7 +32,7 @@ See [bundler.io](https://bundler.io) for the full documentation.
|
|
|
32
32
|
|
|
33
33
|
For help with common problems, see [TROUBLESHOOTING](doc/TROUBLESHOOTING.md).
|
|
34
34
|
|
|
35
|
-
Still stuck? Try [filing an issue](
|
|
35
|
+
Still stuck? Try [filing an issue](https://github.com/rubygems/rubygems/issues/new?labels=Bundler&template=bundler-related-issue.md).
|
|
36
36
|
|
|
37
37
|
### Other questions
|
|
38
38
|
|
data/exe/bundle
CHANGED
|
@@ -18,14 +18,13 @@ end
|
|
|
18
18
|
# Workaround for non-activated bundler spec due to missing https://github.com/rubygems/rubygems/commit/4e306d7bcdee924b8d80ca9db6125aa59ee4e5a3
|
|
19
19
|
gem "bundler", Bundler::VERSION if Gem.rubygems_version < Gem::Version.new("2.6.2")
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
abort(err)
|
|
21
|
+
if Gem.rubygems_version < Gem::Version.new("3.2.3") && Gem.ruby_version < Gem::Version.new("2.6.a") && !ENV["BUNDLER_NO_OLD_RUBYGEMS_WARNING"]
|
|
22
|
+
Bundler.ui.warn \
|
|
23
|
+
"Your RubyGems version (#{Gem::VERSION})) has a bug that prevents " \
|
|
24
|
+
"`required_ruby_version` from working for Bundler. Any scripts that use " \
|
|
25
|
+
"`gem install bundler` will break as soon as Bundler drops support for " \
|
|
26
|
+
"your Ruby version. Please upgrade RubyGems to avoid future breakage " \
|
|
27
|
+
"and silence this warning by running `gem update --system 3.2.3`"
|
|
29
28
|
end
|
|
30
29
|
|
|
31
30
|
if File.exist?(base_path)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# not in RDoc
|
|
@@ -4,8 +4,8 @@ module Bundler
|
|
|
4
4
|
# Represents metadata from when the Bundler gem was built.
|
|
5
5
|
module BuildMetadata
|
|
6
6
|
# begin ivars
|
|
7
|
-
@built_at = "2021-
|
|
8
|
-
@git_commit_sha = "
|
|
7
|
+
@built_at = "2021-12-29".freeze
|
|
8
|
+
@git_commit_sha = "2296a0d6cc".freeze
|
|
9
9
|
@release = true
|
|
10
10
|
# end ivars
|
|
11
11
|
|
data/lib/bundler/cli/check.rb
CHANGED
|
@@ -15,7 +15,7 @@ module Bundler
|
|
|
15
15
|
definition.validate_runtime!
|
|
16
16
|
|
|
17
17
|
begin
|
|
18
|
-
definition.
|
|
18
|
+
definition.resolve_only_locally!
|
|
19
19
|
not_installed = definition.missing_specs
|
|
20
20
|
rescue GemNotFound, VersionConflict
|
|
21
21
|
Bundler.ui.error "Bundler can't satisfy your Gemfile's dependencies."
|
data/lib/bundler/cli/doctor.rb
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require "rbconfig"
|
|
4
|
+
require "shellwords"
|
|
4
5
|
|
|
5
6
|
module Bundler
|
|
6
7
|
class CLI::Doctor
|
|
@@ -22,14 +23,14 @@ module Bundler
|
|
|
22
23
|
end
|
|
23
24
|
|
|
24
25
|
def dylibs_darwin(path)
|
|
25
|
-
output = `/usr/bin/otool -L
|
|
26
|
+
output = `/usr/bin/otool -L #{path.shellescape}`.chomp
|
|
26
27
|
dylibs = output.split("\n")[1..-1].map {|l| l.match(DARWIN_REGEX).captures[0] }.uniq
|
|
27
28
|
# ignore @rpath and friends
|
|
28
29
|
dylibs.reject {|dylib| dylib.start_with? "@" }
|
|
29
30
|
end
|
|
30
31
|
|
|
31
32
|
def dylibs_ldd(path)
|
|
32
|
-
output = `/usr/bin/ldd
|
|
33
|
+
output = `/usr/bin/ldd #{path.shellescape}`.chomp
|
|
33
34
|
output.split("\n").map do |l|
|
|
34
35
|
match = l.match(LDD_REGEX)
|
|
35
36
|
next if match.nil?
|
data/lib/bundler/cli/gem.rb
CHANGED
|
@@ -68,7 +68,7 @@ module Bundler
|
|
|
68
68
|
:bundler_version => bundler_dependency_version,
|
|
69
69
|
:git => use_git,
|
|
70
70
|
:github_username => github_username.empty? ? "[USERNAME]" : github_username,
|
|
71
|
-
:required_ruby_version =>
|
|
71
|
+
:required_ruby_version => required_ruby_version,
|
|
72
72
|
}
|
|
73
73
|
ensure_safe_gem_name(name, constant_array)
|
|
74
74
|
|
|
@@ -76,6 +76,7 @@ module Bundler
|
|
|
76
76
|
"#{Bundler.preferred_gemfile_name}.tt" => Bundler.preferred_gemfile_name,
|
|
77
77
|
"lib/newgem.rb.tt" => "lib/#{namespaced_path}.rb",
|
|
78
78
|
"lib/newgem/version.rb.tt" => "lib/#{namespaced_path}/version.rb",
|
|
79
|
+
"sig/newgem.rbs.tt" => "sig/#{namespaced_path}.rbs",
|
|
79
80
|
"newgem.gemspec.tt" => "#{name}.gemspec",
|
|
80
81
|
"Rakefile.tt" => "Rakefile",
|
|
81
82
|
"README.md.tt" => "README.md",
|
|
@@ -105,7 +106,7 @@ module Bundler
|
|
|
105
106
|
when "minitest"
|
|
106
107
|
templates.merge!(
|
|
107
108
|
"test/minitest/test_helper.rb.tt" => "test/test_helper.rb",
|
|
108
|
-
"test/minitest/
|
|
109
|
+
"test/minitest/test_newgem.rb.tt" => "test/test_#{namespaced_path}.rb"
|
|
109
110
|
)
|
|
110
111
|
config[:test_task] = :test
|
|
111
112
|
when "test-unit"
|
|
@@ -163,15 +164,16 @@ module Bundler
|
|
|
163
164
|
templates.merge!("CHANGELOG.md.tt" => "CHANGELOG.md")
|
|
164
165
|
end
|
|
165
166
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
"and the Ruby Style Guides (https://github.com/rubocop-hq/ruby-style-guide).")
|
|
171
|
-
config[:rubocop] = true
|
|
172
|
-
config[:rubocop_version] = Gem.ruby_version < Gem::Version.new("2.4.a") ? "0.81.0" : "1.7"
|
|
167
|
+
config[:linter] = ask_and_set_linter
|
|
168
|
+
case config[:linter]
|
|
169
|
+
when "rubocop"
|
|
170
|
+
config[:linter_version] = rubocop_version
|
|
173
171
|
Bundler.ui.info "RuboCop enabled in config"
|
|
174
172
|
templates.merge!("rubocop.yml.tt" => ".rubocop.yml")
|
|
173
|
+
when "standard"
|
|
174
|
+
config[:linter_version] = standard_version
|
|
175
|
+
Bundler.ui.info "Standard enabled in config"
|
|
176
|
+
templates.merge!("standard.yml.tt" => ".standard.yml")
|
|
175
177
|
end
|
|
176
178
|
|
|
177
179
|
templates.merge!("exe/newgem.tt" => "exe/#{name}") if config[:exe]
|
|
@@ -317,6 +319,58 @@ module Bundler
|
|
|
317
319
|
ci_template
|
|
318
320
|
end
|
|
319
321
|
|
|
322
|
+
def ask_and_set_linter
|
|
323
|
+
linter_template = options[:linter] || Bundler.settings["gem.linter"]
|
|
324
|
+
linter_template = deprecated_rubocop_option if linter_template.nil?
|
|
325
|
+
|
|
326
|
+
if linter_template.to_s.empty?
|
|
327
|
+
Bundler.ui.confirm "Do you want to add a code linter and formatter to your gem? " \
|
|
328
|
+
"Supported Linters:\n" \
|
|
329
|
+
"* RuboCop: https://rubocop.org\n" \
|
|
330
|
+
"* Standard: https://github.com/testdouble/standard\n" \
|
|
331
|
+
"\n"
|
|
332
|
+
Bundler.ui.info hint_text("linter")
|
|
333
|
+
|
|
334
|
+
result = Bundler.ui.ask "Enter a linter. rubocop/standard/(none):"
|
|
335
|
+
if result =~ /rubocop|standard/
|
|
336
|
+
linter_template = result
|
|
337
|
+
else
|
|
338
|
+
linter_template = false
|
|
339
|
+
end
|
|
340
|
+
end
|
|
341
|
+
|
|
342
|
+
if Bundler.settings["gem.linter"].nil?
|
|
343
|
+
Bundler.settings.set_global("gem.linter", linter_template)
|
|
344
|
+
end
|
|
345
|
+
|
|
346
|
+
# Once gem.linter safely set, unset the deprecated gem.rubocop
|
|
347
|
+
unless Bundler.settings["gem.rubocop"].nil?
|
|
348
|
+
Bundler.settings.set_global("gem.rubocop", nil)
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
if options[:linter] == Bundler.settings["gem.linter"]
|
|
352
|
+
Bundler.ui.info "#{options[:linter]} is already configured, ignoring --linter flag."
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
linter_template
|
|
356
|
+
end
|
|
357
|
+
|
|
358
|
+
def deprecated_rubocop_option
|
|
359
|
+
if !options[:rubocop].nil?
|
|
360
|
+
if options[:rubocop]
|
|
361
|
+
Bundler::SharedHelpers.major_deprecation 2, "--rubocop is deprecated, use --linter=rubocop"
|
|
362
|
+
"rubocop"
|
|
363
|
+
else
|
|
364
|
+
Bundler::SharedHelpers.major_deprecation 2, "--no-rubocop is deprecated, use --linter"
|
|
365
|
+
false
|
|
366
|
+
end
|
|
367
|
+
elsif !Bundler.settings["gem.rubocop"].nil?
|
|
368
|
+
Bundler::SharedHelpers.major_deprecation 2,
|
|
369
|
+
"config gem.rubocop is deprecated; we've updated your config to use gem.linter instead"
|
|
370
|
+
Bundler.settings["gem.rubocop"] ? "rubocop" : false
|
|
371
|
+
end
|
|
372
|
+
end
|
|
373
|
+
|
|
320
374
|
def bundler_dependency_version
|
|
321
375
|
v = Gem::Version.new(Bundler::VERSION)
|
|
322
376
|
req = v.segments[0..1]
|
|
@@ -350,5 +404,30 @@ module Bundler
|
|
|
350
404
|
def open_editor(editor, file)
|
|
351
405
|
thor.run(%(#{editor} "#{file}"))
|
|
352
406
|
end
|
|
407
|
+
|
|
408
|
+
def required_ruby_version
|
|
409
|
+
if Gem.ruby_version < Gem::Version.new("2.4.a") then "2.3.0"
|
|
410
|
+
elsif Gem.ruby_version < Gem::Version.new("2.5.a") then "2.4.0"
|
|
411
|
+
elsif Gem.ruby_version < Gem::Version.new("2.6.a") then "2.5.0"
|
|
412
|
+
else
|
|
413
|
+
"2.6.0"
|
|
414
|
+
end
|
|
415
|
+
end
|
|
416
|
+
|
|
417
|
+
def rubocop_version
|
|
418
|
+
if Gem.ruby_version < Gem::Version.new("2.4.a") then "0.81.0"
|
|
419
|
+
elsif Gem.ruby_version < Gem::Version.new("2.5.a") then "1.12"
|
|
420
|
+
else
|
|
421
|
+
"1.21"
|
|
422
|
+
end
|
|
423
|
+
end
|
|
424
|
+
|
|
425
|
+
def standard_version
|
|
426
|
+
if Gem.ruby_version < Gem::Version.new("2.4.a") then "0.2.5"
|
|
427
|
+
elsif Gem.ruby_version < Gem::Version.new("2.5.a") then "1.0"
|
|
428
|
+
else
|
|
429
|
+
"1.3"
|
|
430
|
+
end
|
|
431
|
+
end
|
|
353
432
|
end
|
|
354
433
|
end
|
data/lib/bundler/cli/info.rb
CHANGED
|
@@ -18,6 +18,7 @@ module Bundler
|
|
|
18
18
|
|
|
19
19
|
if spec
|
|
20
20
|
return print_gem_path(spec) if @options[:path]
|
|
21
|
+
return print_gem_version(spec) if @options[:version]
|
|
21
22
|
print_gem_info(spec)
|
|
22
23
|
end
|
|
23
24
|
end
|
|
@@ -39,13 +40,18 @@ module Bundler
|
|
|
39
40
|
raise GemNotFound, Bundler::CLI::Common.gem_not_found_message(gem_name, Bundler.definition.dependencies)
|
|
40
41
|
end
|
|
41
42
|
|
|
43
|
+
def print_gem_version(spec)
|
|
44
|
+
Bundler.ui.info spec.version.to_s
|
|
45
|
+
end
|
|
46
|
+
|
|
42
47
|
def print_gem_path(spec)
|
|
43
|
-
|
|
48
|
+
name = spec.name
|
|
49
|
+
if name == "bundler"
|
|
44
50
|
path = File.expand_path("../../../..", __FILE__)
|
|
45
51
|
else
|
|
46
52
|
path = spec.full_gem_path
|
|
47
|
-
|
|
48
|
-
return Bundler.ui.warn "The gem #{
|
|
53
|
+
if spec.deleted_gem?
|
|
54
|
+
return Bundler.ui.warn "The gem #{name} has been deleted. It was installed at: #{path}"
|
|
49
55
|
end
|
|
50
56
|
end
|
|
51
57
|
|
|
@@ -54,8 +60,9 @@ module Bundler
|
|
|
54
60
|
|
|
55
61
|
def print_gem_info(spec)
|
|
56
62
|
metadata = spec.metadata
|
|
63
|
+
name = spec.name
|
|
57
64
|
gem_info = String.new
|
|
58
|
-
gem_info << " * #{
|
|
65
|
+
gem_info << " * #{name} (#{spec.version}#{spec.git_version})\n"
|
|
59
66
|
gem_info << "\tSummary: #{spec.summary}\n" if spec.summary
|
|
60
67
|
gem_info << "\tHomepage: #{spec.homepage}\n" if spec.homepage
|
|
61
68
|
gem_info << "\tDocumentation: #{metadata["documentation_uri"]}\n" if metadata.key?("documentation_uri")
|
|
@@ -67,6 +74,11 @@ module Bundler
|
|
|
67
74
|
gem_info << "\tMailing List: #{metadata["mailing_list_uri"]}\n" if metadata.key?("mailing_list_uri")
|
|
68
75
|
gem_info << "\tPath: #{spec.full_gem_path}\n"
|
|
69
76
|
gem_info << "\tDefault Gem: yes" if spec.respond_to?(:default_gem?) && spec.default_gem?
|
|
77
|
+
|
|
78
|
+
if name != "bundler" && spec.deleted_gem?
|
|
79
|
+
return Bundler.ui.warn "The gem #{name} has been deleted. Gemspec information is still available though:\n#{gem_info}"
|
|
80
|
+
end
|
|
81
|
+
|
|
70
82
|
Bundler.ui.info gem_info
|
|
71
83
|
end
|
|
72
84
|
end
|
data/lib/bundler/cli/install.rb
CHANGED
|
@@ -12,6 +12,8 @@ module Bundler
|
|
|
12
12
|
|
|
13
13
|
warn_if_root
|
|
14
14
|
|
|
15
|
+
Bundler.self_manager.install_locked_bundler_and_restart_with_it_if_needed
|
|
16
|
+
|
|
15
17
|
Bundler::SharedHelpers.set_env "RB_USER_INSTALL", "1" if Bundler::FREEBSD
|
|
16
18
|
|
|
17
19
|
# Disable color in deployment mode
|
|
@@ -163,9 +165,6 @@ module Bundler
|
|
|
163
165
|
|
|
164
166
|
def normalize_settings
|
|
165
167
|
Bundler.settings.set_command_option :path, nil if options[:system]
|
|
166
|
-
Bundler.settings.temporary(:path_relative_to_cwd => false) do
|
|
167
|
-
Bundler.settings.set_command_option :path, "vendor/bundle" if Bundler.settings[:deployment] && Bundler.settings[:path].nil?
|
|
168
|
-
end
|
|
169
168
|
Bundler.settings.set_command_option_if_given :path, options[:path]
|
|
170
169
|
Bundler.settings.temporary(:path_relative_to_cwd => false) do
|
|
171
170
|
Bundler.settings.set_command_option :path, "bundle" if options["standalone"] && Bundler.settings[:path].nil?
|
data/lib/bundler/cli/issue.rb
CHANGED
|
@@ -20,9 +20,10 @@ module Bundler
|
|
|
20
20
|
|
|
21
21
|
Hopefully the troubleshooting steps above resolved your problem! If things
|
|
22
22
|
still aren't working the way you expect them to, please let us know so
|
|
23
|
-
that we can diagnose and help fix the problem you're having
|
|
24
|
-
|
|
25
|
-
https://github.com/rubygems/rubygems/
|
|
23
|
+
that we can diagnose and help fix the problem you're having, by filling
|
|
24
|
+
in the new issue form located at
|
|
25
|
+
https://github.com/rubygems/rubygems/issues/new?labels=Bundler&template=bundler-related-issue.md,
|
|
26
|
+
and copy and pasting the information below.
|
|
26
27
|
|
|
27
28
|
EOS
|
|
28
29
|
|
data/lib/bundler/cli/remove.rb
CHANGED
|
@@ -11,8 +11,7 @@ module Bundler
|
|
|
11
11
|
raise InvalidOption, "Please specify gems to remove." if @gems.empty?
|
|
12
12
|
|
|
13
13
|
Injector.remove(@gems, {})
|
|
14
|
-
|
|
15
|
-
Installer.install(Bundler.root, Bundler.definition) if @options["install"]
|
|
14
|
+
Installer.install(Bundler.root, Bundler.definition)
|
|
16
15
|
end
|
|
17
16
|
end
|
|
18
17
|
end
|
data/lib/bundler/cli/update.rb
CHANGED
|
@@ -66,7 +66,7 @@ module Bundler
|
|
|
66
66
|
|
|
67
67
|
if locked_gems = Bundler.definition.locked_gems
|
|
68
68
|
previous_locked_info = locked_gems.specs.reduce({}) do |h, s|
|
|
69
|
-
h[s.name] = { :spec => s, :version => s.version, :source => s.source.
|
|
69
|
+
h[s.name] = { :spec => s, :version => s.version, :source => s.source.identifier }
|
|
70
70
|
h
|
|
71
71
|
end
|
|
72
72
|
end
|
|
@@ -95,7 +95,7 @@ module Bundler
|
|
|
95
95
|
end
|
|
96
96
|
|
|
97
97
|
locked_source = locked_info[:source]
|
|
98
|
-
new_source = new_spec.source.
|
|
98
|
+
new_source = new_spec.source.identifier
|
|
99
99
|
next if locked_source != new_source
|
|
100
100
|
|
|
101
101
|
new_version = new_spec.version
|
data/lib/bundler/cli.rb
CHANGED
|
@@ -61,6 +61,8 @@ module Bundler
|
|
|
61
61
|
Bundler.reset_settings_and_root!
|
|
62
62
|
end
|
|
63
63
|
|
|
64
|
+
Bundler.self_manager.restart_with_locked_bundler_if_needed
|
|
65
|
+
|
|
64
66
|
Bundler.settings.set_command_option_if_given :retry, options[:retry]
|
|
65
67
|
|
|
66
68
|
current_cmd = args.last[:current_command].name
|
|
@@ -184,6 +186,7 @@ module Bundler
|
|
|
184
186
|
method_option "install", :type => :boolean, :banner =>
|
|
185
187
|
"Runs 'bundle install' after removing the gems from the Gemfile"
|
|
186
188
|
def remove(*gems)
|
|
189
|
+
SharedHelpers.major_deprecation(2, "The `--install` flag has been deprecated. `bundle install` is triggered by default.") if ARGV.include?("--install")
|
|
187
190
|
require_relative "cli/remove"
|
|
188
191
|
Remove.new(gems, options).run
|
|
189
192
|
end
|
|
@@ -330,6 +333,7 @@ module Bundler
|
|
|
330
333
|
|
|
331
334
|
desc "info GEM [OPTIONS]", "Show information for the given gem"
|
|
332
335
|
method_option "path", :type => :boolean, :banner => "Print full path to gem"
|
|
336
|
+
method_option "version", :type => :boolean, :banner => "Print gem version"
|
|
333
337
|
def info(gem_name)
|
|
334
338
|
require_relative "cli/info"
|
|
335
339
|
Info.new(options, gem_name).run
|
|
@@ -365,8 +369,11 @@ module Bundler
|
|
|
365
369
|
method_option "version", :aliases => "-v", :type => :string
|
|
366
370
|
method_option "group", :aliases => "-g", :type => :string
|
|
367
371
|
method_option "source", :aliases => "-s", :type => :string
|
|
372
|
+
method_option "require", :aliases => "-r", :type => :string, :banner => "Adds require path to gem. Provide false, or a path as a string."
|
|
368
373
|
method_option "git", :type => :string
|
|
374
|
+
method_option "github", :type => :string
|
|
369
375
|
method_option "branch", :type => :string
|
|
376
|
+
method_option "ref", :type => :string
|
|
370
377
|
method_option "skip-install", :type => :boolean, :banner =>
|
|
371
378
|
"Adds gem to the Gemfile but does not install it"
|
|
372
379
|
method_option "optimistic", :type => :boolean, :banner => "Adds optimistic declaration of version to gem"
|
|
@@ -551,7 +558,7 @@ module Bundler
|
|
|
551
558
|
method_option :version, :type => :boolean, :default => false, :aliases => "-v", :desc => "Set to show each gem version."
|
|
552
559
|
method_option :without, :type => :array, :default => [], :aliases => "-W", :banner => "GROUP[ GROUP...]", :desc => "Exclude gems that are part of the specified named group."
|
|
553
560
|
def viz
|
|
554
|
-
SharedHelpers.major_deprecation 2, "The `viz` command has been
|
|
561
|
+
SharedHelpers.major_deprecation 2, "The `viz` command has been renamed to `graph` and moved to a plugin. See https://github.com/rubygems/bundler-graph"
|
|
555
562
|
require_relative "cli/viz"
|
|
556
563
|
Viz.new(options.dup).run
|
|
557
564
|
end
|
|
@@ -574,6 +581,8 @@ module Bundler
|
|
|
574
581
|
:desc => "Generate a test directory for your library, either rspec, minitest or test-unit. Set a default with `bundle config set --global gem.test (rspec|minitest|test-unit)`."
|
|
575
582
|
method_option :ci, :type => :string, :lazy_default => Bundler.settings["gem.ci"] || "",
|
|
576
583
|
:desc => "Generate CI configuration, either GitHub Actions, Travis CI, GitLab CI or CircleCI. Set a default with `bundle config set --global gem.ci (github|travis|gitlab|circle)`"
|
|
584
|
+
method_option :linter, :type => :string, :lazy_default => Bundler.settings["gem.linter"] || "",
|
|
585
|
+
:desc => "Add a linter and code formatter, either RuboCop or Standard. Set a default with `bundle config set --global gem.linter (rubocop|standard)`"
|
|
577
586
|
method_option :github_username, :type => :string, :default => Bundler.settings["gem.github_username"], :banner => "Set your username on GitHub", :desc => "Fill in GitHub username on README so that you don't have to do it manually. Set a default with `bundle config set --global gem.github_username <your_username>`."
|
|
578
587
|
|
|
579
588
|
def gem(name)
|
|
@@ -76,11 +76,6 @@ module Bundler
|
|
|
76
76
|
|
|
77
77
|
update(local_path, remote_path, :retrying)
|
|
78
78
|
end
|
|
79
|
-
rescue Errno::EACCES
|
|
80
|
-
raise Bundler::PermissionError,
|
|
81
|
-
"Bundler does not have write access to create a temp directory " \
|
|
82
|
-
"within #{Dir.tmpdir}. Bundler must have write access to your " \
|
|
83
|
-
"systems temp directory to function properly. "
|
|
84
79
|
rescue Zlib::GzipFile::Error
|
|
85
80
|
raise Bundler::HTTPError
|
|
86
81
|
end
|
|
@@ -5,7 +5,7 @@ require "set"
|
|
|
5
5
|
|
|
6
6
|
module Bundler
|
|
7
7
|
class CompactIndexClient
|
|
8
|
-
DEBUG_MUTEX = Mutex.new
|
|
8
|
+
DEBUG_MUTEX = Thread::Mutex.new
|
|
9
9
|
def self.debug
|
|
10
10
|
return unless ENV["DEBUG_COMPACT_INDEX"]
|
|
11
11
|
DEBUG_MUTEX.synchronize { warn("[#{self}] #{yield}") }
|
|
@@ -25,7 +25,7 @@ module Bundler
|
|
|
25
25
|
@endpoints = Set.new
|
|
26
26
|
@info_checksums_by_name = {}
|
|
27
27
|
@parsed_checksums = false
|
|
28
|
-
@mutex = Mutex.new
|
|
28
|
+
@mutex = Thread::Mutex.new
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
def execution_mode=(block)
|