rubygems-update 3.7.0 → 3.7.2
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 +47 -0
- data/CODE_OF_CONDUCT.md +1 -1
- data/bundler/CHANGELOG.md +43 -0
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/checksum.rb +6 -0
- data/bundler/lib/bundler/cli/cache.rb +0 -1
- data/bundler/lib/bundler/cli/common.rb +1 -1
- data/bundler/lib/bundler/cli/install.rb +1 -3
- data/bundler/lib/bundler/cli/lock.rb +5 -5
- data/bundler/lib/bundler/cli/show.rb +2 -6
- data/bundler/lib/bundler/cli/update.rb +1 -1
- data/bundler/lib/bundler/cli.rb +43 -43
- data/bundler/lib/bundler/definition.rb +77 -60
- data/bundler/lib/bundler/dsl.rb +1 -1
- data/bundler/lib/bundler/feature_flag.rb +1 -1
- data/bundler/lib/bundler/man/bundle-add.1 +1 -1
- data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
- data/bundler/lib/bundler/man/bundle-cache.1 +1 -1
- data/bundler/lib/bundler/man/bundle-check.1 +1 -1
- data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
- data/bundler/lib/bundler/man/bundle-config.1 +31 -14
- data/bundler/lib/bundler/man/bundle-config.1.ronn +49 -20
- data/bundler/lib/bundler/man/bundle-console.1 +1 -1
- data/bundler/lib/bundler/man/bundle-doctor.1 +4 -4
- data/bundler/lib/bundler/man/bundle-doctor.1.ronn +4 -4
- data/bundler/lib/bundler/man/bundle-env.1 +1 -1
- data/bundler/lib/bundler/man/bundle-exec.1 +1 -1
- data/bundler/lib/bundler/man/bundle-fund.1 +1 -1
- data/bundler/lib/bundler/man/bundle-gem.1 +1 -1
- data/bundler/lib/bundler/man/bundle-help.1 +1 -1
- data/bundler/lib/bundler/man/bundle-info.1 +1 -1
- data/bundler/lib/bundler/man/bundle-init.1 +1 -1
- data/bundler/lib/bundler/man/bundle-inject.1 +1 -1
- data/bundler/lib/bundler/man/bundle-install.1 +4 -4
- data/bundler/lib/bundler/man/bundle-install.1.ronn +3 -4
- data/bundler/lib/bundler/man/bundle-issue.1 +1 -1
- data/bundler/lib/bundler/man/bundle-licenses.1 +1 -1
- data/bundler/lib/bundler/man/bundle-list.1 +1 -1
- data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
- data/bundler/lib/bundler/man/bundle-open.1 +1 -1
- data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
- data/bundler/lib/bundler/man/bundle-platform.1 +1 -1
- data/bundler/lib/bundler/man/bundle-plugin.1 +40 -15
- data/bundler/lib/bundler/man/bundle-plugin.1.ronn +44 -15
- data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
- data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
- data/bundler/lib/bundler/man/bundle-show.1 +1 -1
- data/bundler/lib/bundler/man/bundle-update.1 +5 -5
- data/bundler/lib/bundler/man/bundle-update.1.ronn +4 -4
- data/bundler/lib/bundler/man/bundle-version.1 +1 -1
- data/bundler/lib/bundler/man/bundle-viz.1 +1 -1
- data/bundler/lib/bundler/man/bundle.1 +1 -1
- data/bundler/lib/bundler/man/gemfile.5 +1 -1
- data/bundler/lib/bundler/resolver/package.rb +1 -0
- data/bundler/lib/bundler/settings.rb +1 -1
- data/bundler/lib/bundler/source/gemspec.rb +4 -0
- data/bundler/lib/bundler/source/path.rb +2 -0
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +3 -3
- data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +42 -6
- data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +1 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/runner.rb +1 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +3 -7
- data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/bundler/lib/bundler/version.rb +1 -1
- data/doc/bundler/UPGRADING.md +0 -27
- data/lib/rubygems/commands/sources_command.rb +122 -18
- data/lib/rubygems/defaults.rb +1 -1
- data/lib/rubygems/exceptions.rb +3 -12
- data/lib/rubygems/platform.rb +1 -1
- data/lib/rubygems/s3_uri_signer.rb +54 -7
- data/lib/rubygems/source_list.rb +36 -0
- data/lib/rubygems.rb +8 -1
- data/rubygems-update.gemspec +1 -1
- metadata +2 -2
@@ -6,6 +6,7 @@ bundle-install(1) -- Install the dependencies specified in your Gemfile
|
|
6
6
|
`bundle install` [--binstubs[=DIRECTORY]]
|
7
7
|
[--clean]
|
8
8
|
[--deployment]
|
9
|
+
[--force]
|
9
10
|
[--frozen]
|
10
11
|
[--full-index]
|
11
12
|
[--gemfile=GEMFILE]
|
@@ -16,7 +17,6 @@ bundle-install(1) -- Install the dependencies specified in your Gemfile
|
|
16
17
|
[--path PATH]
|
17
18
|
[--prefer-local]
|
18
19
|
[--quiet]
|
19
|
-
[--redownload]
|
20
20
|
[--retry=NUMBER]
|
21
21
|
[--shebang=SHEBANG]
|
22
22
|
[--standalone[=GROUP[ GROUP...]]]
|
@@ -80,9 +80,8 @@ automatically and that requires `bundler` to silently remember them. Since
|
|
80
80
|
|
81
81
|
This option is deprecated in favor of the `deployment` setting.
|
82
82
|
|
83
|
-
* `--
|
84
|
-
Force
|
85
|
-
locally.
|
83
|
+
* `--force`, `--redownload`:
|
84
|
+
Force reinstalling every gem, even if already installed.
|
86
85
|
|
87
86
|
* `--frozen`:
|
88
87
|
Do not allow the Gemfile.lock to be updated after this install. Exits
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-LICENSES" "1" "
|
3
|
+
.TH "BUNDLE\-LICENSES" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-licenses\fR \- Print the license of all gems in the bundle
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-LOCK" "1" "
|
3
|
+
.TH "BUNDLE\-LOCK" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-lock\fR \- Creates / Updates a lockfile without installing
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-OPEN" "1" "
|
3
|
+
.TH "BUNDLE\-OPEN" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-OUTDATED" "1" "
|
3
|
+
.TH "BUNDLE\-OUTDATED" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-outdated\fR \- List installed gems with newer versions available
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-PLATFORM" "1" "
|
3
|
+
.TH "BUNDLE\-PLATFORM" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-platform\fR \- Displays platform compatibility information
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,12 +1,12 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-PLUGIN" "1" "
|
3
|
+
.TH "BUNDLE\-PLUGIN" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-plugin\fR \- Manage Bundler plugins
|
6
6
|
.SH "SYNOPSIS"
|
7
|
-
\fBbundle plugin\fR install PLUGINS [\-\-source
|
7
|
+
\fBbundle plugin\fR install PLUGINS [\-\-source=SOURCE] [\-\-version=VERSION] [\-\-git=GIT] [\-\-branch=BRANCH|\-\-ref=REF] [\-\-local\-git=LOCAL_GIT] [\-\-path=PATH]
|
8
8
|
.br
|
9
|
-
\fBbundle plugin\fR uninstall PLUGINS
|
9
|
+
\fBbundle plugin\fR uninstall PLUGINS [\-\-all]
|
10
10
|
.br
|
11
11
|
\fBbundle plugin\fR list
|
12
12
|
.br
|
@@ -16,18 +16,23 @@ You can install, uninstall, and list plugin(s) with this command to extend funct
|
|
16
16
|
.SH "SUB\-COMMANDS"
|
17
17
|
.SS "install"
|
18
18
|
Install the given plugin(s)\.
|
19
|
+
.P
|
20
|
+
For example, \fBbundle plugin install bundler\-graph\fR will install bundler\-graph gem from globally configured sources (defaults to RubyGems\.org)\. Note that the global source specified in Gemfile is ignored\.
|
21
|
+
.P
|
22
|
+
\fBOPTIONS\fR
|
19
23
|
.TP
|
20
|
-
\
|
21
|
-
Install
|
22
|
-
.
|
23
|
-
\fBbundle plugin install bundler\-graph \-\-source https://example\.com\fR
|
24
|
-
Install bundler\-graph gem from example\.com\. The global source, specified in source in Gemfile is not considered\.
|
24
|
+
\fB\-\-source=SOURCE\fR
|
25
|
+
Install the plugin gem from a specific source, rather than from globally configured sources\.
|
26
|
+
.IP
|
27
|
+
Example: \fBbundle plugin install bundler\-graph \-\-source https://example\.com\fR
|
25
28
|
.TP
|
26
|
-
\
|
27
|
-
|
29
|
+
\fB\-\-version=VERSION\fR
|
30
|
+
Specify a version of the plugin gem to install via \fB\-\-version\fR\.
|
31
|
+
.IP
|
32
|
+
Example: \fBbundle plugin install bundler\-graph \-\-version 0\.2\.1\fR
|
28
33
|
.TP
|
29
|
-
\
|
30
|
-
Install
|
34
|
+
\fB\-\-git=GIT\fR
|
35
|
+
Install the plugin gem from a Git repository\. You can use standard Git URLs like:
|
31
36
|
.IP
|
32
37
|
\fBssh://[user@]host\.xz[:port]/path/to/repo\.git\fR
|
33
38
|
.br
|
@@ -37,12 +42,32 @@ Install bundler\-graph gem from Git repository\. You can use standard Git URLs l
|
|
37
42
|
.br
|
38
43
|
\fBfile:///path/to/repo\fR
|
39
44
|
.IP
|
40
|
-
|
45
|
+
Example: \fBbundle plugin install bundler\-graph \-\-git https://github\.com/rubygems/bundler\-graph\fR
|
46
|
+
.TP
|
47
|
+
\fB\-\-branch=BRANCH\fR
|
48
|
+
When you specify \fB\-\-git\fR, you can use \fB\-\-branch\fR to use\.
|
49
|
+
.TP
|
50
|
+
\fB\-\-ref=REF\fR
|
51
|
+
When you specify \fB\-\-git\fR, you can use \fB\-\-ref\fR to specify any tag, or commit hash (revision) to use\.
|
41
52
|
.TP
|
42
|
-
\
|
43
|
-
Install
|
53
|
+
\fB\-\-path=PATH\fR
|
54
|
+
Install the plugin gem from a local path\.
|
55
|
+
.IP
|
56
|
+
Example: \fBbundle plugin install bundler\-graph \-\-path \.\./bundler\-graph\fR
|
57
|
+
.TP
|
58
|
+
\fB\-\-local\-git=LOCAL_GIT\fR
|
59
|
+
Install the plugin gem from a local Git repository\.
|
60
|
+
.IP
|
61
|
+
Example: \fBbundle plugin install bundler\-graph \-\-local\-git \.\./bundler\-graph\fR\.
|
62
|
+
.IP
|
63
|
+
This option is deprecated in favor of \fB\-\-git\fR\.
|
44
64
|
.SS "uninstall"
|
45
65
|
Uninstall the plugin(s) specified in PLUGINS\.
|
66
|
+
.P
|
67
|
+
\fBOPTIONS\fR
|
68
|
+
.TP
|
69
|
+
\fB\-\-all\fR
|
70
|
+
Uninstall all the installed plugins\. If no plugin is installed, then it does nothing\.
|
46
71
|
.SS "list"
|
47
72
|
List the installed plugins and available commands\.
|
48
73
|
.P
|
@@ -3,10 +3,11 @@ bundle-plugin(1) -- Manage Bundler plugins
|
|
3
3
|
|
4
4
|
## SYNOPSIS
|
5
5
|
|
6
|
-
`bundle plugin` install PLUGINS [--source
|
7
|
-
[--git
|
8
|
-
[--
|
9
|
-
|
6
|
+
`bundle plugin` install PLUGINS [--source=SOURCE] [--version=VERSION]
|
7
|
+
[--git=GIT] [--branch=BRANCH|--ref=REF]
|
8
|
+
[--local-git=LOCAL_GIT]
|
9
|
+
[--path=PATH]<br>
|
10
|
+
`bundle plugin` uninstall PLUGINS [--all]<br>
|
10
11
|
`bundle plugin` list<br>
|
11
12
|
`bundle plugin` help [COMMAND]
|
12
13
|
|
@@ -20,32 +21,60 @@ You can install, uninstall, and list plugin(s) with this command to extend funct
|
|
20
21
|
|
21
22
|
Install the given plugin(s).
|
22
23
|
|
23
|
-
|
24
|
-
|
24
|
+
For example, `bundle plugin install bundler-graph` will install bundler-graph
|
25
|
+
gem from globally configured sources (defaults to RubyGems.org). Note that the
|
26
|
+
global source specified in Gemfile is ignored.
|
25
27
|
|
26
|
-
|
27
|
-
Install bundler-graph gem from example.com. The global source, specified in source in Gemfile is not considered.
|
28
|
+
**OPTIONS**
|
28
29
|
|
29
|
-
*
|
30
|
-
|
30
|
+
* `--source=SOURCE`:
|
31
|
+
Install the plugin gem from a specific source, rather than from globally configured sources.
|
31
32
|
|
32
|
-
|
33
|
-
|
33
|
+
Example: `bundle plugin install bundler-graph --source https://example.com`
|
34
|
+
|
35
|
+
* `--version=VERSION`:
|
36
|
+
Specify a version of the plugin gem to install via `--version`.
|
37
|
+
|
38
|
+
Example: `bundle plugin install bundler-graph --version 0.2.1`
|
39
|
+
|
40
|
+
* `--git=GIT`:
|
41
|
+
Install the plugin gem from a Git repository. You can use standard Git URLs like:
|
34
42
|
|
35
43
|
`ssh://[user@]host.xz[:port]/path/to/repo.git`<br>
|
36
44
|
`http[s]://host.xz[:port]/path/to/repo.git`<br>
|
37
45
|
`/path/to/repo`<br>
|
38
46
|
`file:///path/to/repo`
|
39
47
|
|
40
|
-
|
48
|
+
Example: `bundle plugin install bundler-graph --git https://github.com/rubygems/bundler-graph`
|
49
|
+
|
50
|
+
* `--branch=BRANCH`:
|
51
|
+
When you specify `--git`, you can use `--branch` to use.
|
52
|
+
|
53
|
+
* `--ref=REF`:
|
54
|
+
When you specify `--git`, you can use `--ref` to specify any tag, or commit
|
55
|
+
hash (revision) to use.
|
56
|
+
|
57
|
+
* `--path=PATH`:
|
58
|
+
Install the plugin gem from a local path.
|
41
59
|
|
42
|
-
|
43
|
-
|
60
|
+
Example: `bundle plugin install bundler-graph --path ../bundler-graph`
|
61
|
+
|
62
|
+
* `--local-git=LOCAL_GIT`:
|
63
|
+
Install the plugin gem from a local Git repository.
|
64
|
+
|
65
|
+
Example: `bundle plugin install bundler-graph --local-git ../bundler-graph`.
|
66
|
+
|
67
|
+
This option is deprecated in favor of `--git`.
|
44
68
|
|
45
69
|
### uninstall
|
46
70
|
|
47
71
|
Uninstall the plugin(s) specified in PLUGINS.
|
48
72
|
|
73
|
+
**OPTIONS**
|
74
|
+
|
75
|
+
* `--all`:
|
76
|
+
Uninstall all the installed plugins. If no plugin is installed, then it does nothing.
|
77
|
+
|
49
78
|
### list
|
50
79
|
|
51
80
|
List the installed plugins and available commands.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-PRISTINE" "1" "
|
3
|
+
.TH "BUNDLE\-PRISTINE" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-SHOW" "1" "
|
3
|
+
.TH "BUNDLE\-SHOW" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
|
6
6
|
.SH "SYNOPSIS"
|
@@ -1,10 +1,10 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-UPDATE" "1" "
|
3
|
+
.TH "BUNDLE\-UPDATE" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-update\fR \- Update your gems to the latest available versions
|
6
6
|
.SH "SYNOPSIS"
|
7
|
-
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-pre] [\-\-
|
7
|
+
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-force] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-pre] [\-\-strict] [\-\-conservative]
|
8
8
|
.SH "DESCRIPTION"
|
9
9
|
Update the gems specified (all gems, if \fB\-\-all\fR flag is used), ignoring the previously installed gems specified in the \fBGemfile\.lock\fR\. In general, you should use bundle install(1) \fIbundle\-install\.1\.html\fR to install the same exact gems and versions across machines\.
|
10
10
|
.P
|
@@ -29,6 +29,9 @@ Update the locked version of Ruby to the current version of Ruby\.
|
|
29
29
|
\fB\-\-bundler[=BUNDLER]\fR
|
30
30
|
Update the locked version of bundler to the invoked bundler version\.
|
31
31
|
.TP
|
32
|
+
\fB\-\-force\fR, \fB\-\-redownload\fR
|
33
|
+
Force reinstalling every gem, even if already installed\.
|
34
|
+
.TP
|
32
35
|
\fB\-\-full\-index\fR
|
33
36
|
Fall back to using the single\-file index of all gems\.
|
34
37
|
.TP
|
@@ -44,9 +47,6 @@ Retry failed network or git requests for \fInumber\fR times\.
|
|
44
47
|
\fB\-\-quiet\fR
|
45
48
|
Only output warnings and errors\.
|
46
49
|
.TP
|
47
|
-
\fB\-\-redownload\fR, \fB\-\-force\fR
|
48
|
-
Force downloading every gem\.
|
49
|
-
.TP
|
50
50
|
\fB\-\-patch\fR
|
51
51
|
Prefer updating only to next patch version\.
|
52
52
|
.TP
|
@@ -9,13 +9,13 @@ bundle-update(1) -- Update your gems to the latest available versions
|
|
9
9
|
[--local]
|
10
10
|
[--ruby]
|
11
11
|
[--bundler[=VERSION]]
|
12
|
+
[--force]
|
12
13
|
[--full-index]
|
13
14
|
[--gemfile=GEMFILE]
|
14
15
|
[--jobs=NUMBER]
|
15
16
|
[--quiet]
|
16
17
|
[--patch|--minor|--major]
|
17
18
|
[--pre]
|
18
|
-
[--redownload]
|
19
19
|
[--strict]
|
20
20
|
[--conservative]
|
21
21
|
|
@@ -54,6 +54,9 @@ gem.
|
|
54
54
|
* `--bundler[=BUNDLER]`:
|
55
55
|
Update the locked version of bundler to the invoked bundler version.
|
56
56
|
|
57
|
+
* `--force`, `--redownload`:
|
58
|
+
Force reinstalling every gem, even if already installed.
|
59
|
+
|
57
60
|
* `--full-index`:
|
58
61
|
Fall back to using the single-file index of all gems.
|
59
62
|
|
@@ -70,9 +73,6 @@ gem.
|
|
70
73
|
* `--quiet`:
|
71
74
|
Only output warnings and errors.
|
72
75
|
|
73
|
-
* `--redownload`, `--force`:
|
74
|
-
Force downloading every gem.
|
75
|
-
|
76
76
|
* `--patch`:
|
77
77
|
Prefer updating only to next patch version.
|
78
78
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.\" generated with Ronn-NG/v0.10.1
|
2
2
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
-
.TH "BUNDLE\-VIZ" "1" "
|
3
|
+
.TH "BUNDLE\-VIZ" "1" "August 2025" ""
|
4
4
|
.SH "NAME"
|
5
5
|
\fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
|
6
6
|
.SH "SYNOPSIS"
|
@@ -21,6 +21,7 @@ module Bundler
|
|
21
21
|
@locked_version = locked_specs.version_for(name)
|
22
22
|
@unlock = unlock
|
23
23
|
@dependency = dependency || Dependency.new(name, @locked_version)
|
24
|
+
@platforms |= [Gem::Platform::RUBY] if @dependency.default_force_ruby_platform
|
24
25
|
@top_level = !dependency.nil?
|
25
26
|
@prerelease = @dependency.prerelease? || @locked_version&.prerelease? || prerelease ? :consider_first : :ignore
|
26
27
|
@prefer_local = prefer_local
|
@@ -22,9 +22,9 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
|
23
23
|
spec.metadata["homepage_uri"] = spec.homepage
|
24
24
|
spec.metadata["source_code_uri"] = "<%= config[:source_code_uri] %>"
|
25
|
-
|
26
|
-
|
27
|
-
|
25
|
+
<%- if config[:changelog] -%>
|
26
|
+
spec.metadata["changelog_uri"] = "<%= config[:changelog_uri] %>"
|
27
|
+
<%- end -%>
|
28
28
|
|
29
29
|
# Specify which files should be added to the gem when it is released.
|
30
30
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
@@ -242,6 +242,35 @@ class Bundler::Thor
|
|
242
242
|
insert_into_file(path, *(args << config), &block)
|
243
243
|
end
|
244
244
|
|
245
|
+
# Run a regular expression replacement on a file, raising an error if the
|
246
|
+
# contents of the file are not changed.
|
247
|
+
#
|
248
|
+
# ==== Parameters
|
249
|
+
# path<String>:: path of the file to be changed
|
250
|
+
# flag<Regexp|String>:: the regexp or string to be replaced
|
251
|
+
# replacement<String>:: the replacement, can be also given as a block
|
252
|
+
# config<Hash>:: give :verbose => false to not log the status, and
|
253
|
+
# :force => true, to force the replacement regardless of runner behavior.
|
254
|
+
#
|
255
|
+
# ==== Example
|
256
|
+
#
|
257
|
+
# gsub_file! 'app/controllers/application_controller.rb', /#\s*(filter_parameter_logging :password)/, '\1'
|
258
|
+
#
|
259
|
+
# gsub_file! 'README', /rake/, :green do |match|
|
260
|
+
# match << " no more. Use thor!"
|
261
|
+
# end
|
262
|
+
#
|
263
|
+
def gsub_file!(path, flag, *args, &block)
|
264
|
+
config = args.last.is_a?(Hash) ? args.pop : {}
|
265
|
+
|
266
|
+
return unless behavior == :invoke || config.fetch(:force, false)
|
267
|
+
|
268
|
+
path = File.expand_path(path, destination_root)
|
269
|
+
say_status :gsub, relative_to_original_destination_root(path), config.fetch(:verbose, true)
|
270
|
+
|
271
|
+
actually_gsub_file(path, flag, args, true, &block) unless options[:pretend]
|
272
|
+
end
|
273
|
+
|
245
274
|
# Run a regular expression replacement on a file.
|
246
275
|
#
|
247
276
|
# ==== Parameters
|
@@ -267,11 +296,7 @@ class Bundler::Thor
|
|
267
296
|
path = File.expand_path(path, destination_root)
|
268
297
|
say_status :gsub, relative_to_original_destination_root(path), config.fetch(:verbose, true)
|
269
298
|
|
270
|
-
unless options[:pretend]
|
271
|
-
content = File.binread(path)
|
272
|
-
content.gsub!(flag, *args, &block)
|
273
|
-
File.open(path, "wb") { |file| file.write(content) }
|
274
|
-
end
|
299
|
+
actually_gsub_file(path, flag, args, false, &block) unless options[:pretend]
|
275
300
|
end
|
276
301
|
|
277
302
|
# Uncomment all lines matching a given regex. Preserves indentation before
|
@@ -348,7 +373,7 @@ class Bundler::Thor
|
|
348
373
|
end
|
349
374
|
|
350
375
|
def with_output_buffer(buf = "".dup) #:nodoc:
|
351
|
-
raise ArgumentError, "Buffer
|
376
|
+
raise ArgumentError, "Buffer cannot be a frozen object" if buf.frozen?
|
352
377
|
old_buffer = output_buffer
|
353
378
|
self.output_buffer = buf
|
354
379
|
yield
|
@@ -357,6 +382,17 @@ class Bundler::Thor
|
|
357
382
|
self.output_buffer = old_buffer
|
358
383
|
end
|
359
384
|
|
385
|
+
def actually_gsub_file(path, flag, args, error_on_no_change, &block)
|
386
|
+
content = File.binread(path)
|
387
|
+
success = content.gsub!(flag, *args, &block)
|
388
|
+
|
389
|
+
if success.nil? && error_on_no_change
|
390
|
+
raise Bundler::Thor::Error, "The content of #{path} did not change"
|
391
|
+
end
|
392
|
+
|
393
|
+
File.open(path, "wb") { |file| file.write(content) }
|
394
|
+
end
|
395
|
+
|
360
396
|
# Bundler::Thor::Actions#capture depends on what kind of buffer is used in ERB.
|
361
397
|
# Thus CapturableERB fixes ERB to use String buffer.
|
362
398
|
class CapturableERB < ERB
|
@@ -144,7 +144,7 @@ class Bundler::Thor
|
|
144
144
|
def check_exclusive!
|
145
145
|
opts = @assigns.keys
|
146
146
|
# When option A and B are exclusive, if A and B are given at the same time,
|
147
|
-
# the
|
147
|
+
# the difference of argument array size will decrease.
|
148
148
|
found = @exclusives.find{ |ex| (ex - opts).size < ex.size - 1 }
|
149
149
|
if found
|
150
150
|
names = names_to_switch_names(found & opts).map{|n| "'#{n}'"}
|
@@ -1,7 +1,6 @@
|
|
1
1
|
require_relative "../thor"
|
2
2
|
require_relative "group"
|
3
3
|
|
4
|
-
require "yaml"
|
5
4
|
require "digest/sha2"
|
6
5
|
require "pathname"
|
7
6
|
|
@@ -195,6 +194,7 @@ private
|
|
195
194
|
def thor_yaml
|
196
195
|
@thor_yaml ||= begin
|
197
196
|
yaml_file = File.join(thor_root, "thor.yml")
|
197
|
+
require "yaml"
|
198
198
|
yaml = YAML.load_file(yaml_file) if File.exist?(yaml_file)
|
199
199
|
yaml || {}
|
200
200
|
end
|
@@ -314,7 +314,7 @@ class Bundler::Thor
|
|
314
314
|
diff_cmd = ENV["THOR_DIFF"] || ENV["RAILS_DIFF"] || "diff -u"
|
315
315
|
|
316
316
|
require "tempfile"
|
317
|
-
Tempfile.open(File.basename(destination), File.dirname(destination)) do |temp|
|
317
|
+
Tempfile.open(File.basename(destination), File.dirname(destination), binmode: true) do |temp|
|
318
318
|
temp.write content
|
319
319
|
temp.rewind
|
320
320
|
system %(#{diff_cmd} "#{destination}" "#{temp.path}")
|
@@ -372,16 +372,12 @@ class Bundler::Thor
|
|
372
372
|
Tempfile.open([File.basename(destination), File.extname(destination)], File.dirname(destination)) do |temp|
|
373
373
|
temp.write content
|
374
374
|
temp.rewind
|
375
|
-
system
|
375
|
+
system(merge_tool, temp.path, destination)
|
376
376
|
end
|
377
377
|
end
|
378
378
|
|
379
379
|
def merge_tool #:nodoc:
|
380
|
-
@merge_tool ||= ENV["THOR_MERGE"] ||
|
381
|
-
end
|
382
|
-
|
383
|
-
def git_merge_tool #:nodoc:
|
384
|
-
`git config merge.tool`.rstrip rescue ""
|
380
|
+
@merge_tool ||= ENV["THOR_MERGE"] || "git difftool --no-index"
|
385
381
|
end
|
386
382
|
end
|
387
383
|
end
|
data/doc/bundler/UPGRADING.md
CHANGED
@@ -28,27 +28,6 @@ existing default by configuring
|
|
28
28
|
bundle config default_cli_command install
|
29
29
|
```
|
30
30
|
|
31
|
-
### Bundler will install to a `.bundle` folder relative to repository root by default
|
32
|
-
|
33
|
-
We're making this change to improve isolation.
|
34
|
-
|
35
|
-
The previous default of installing to system changes can be kept with `bundle
|
36
|
-
config path.system true`.
|
37
|
-
|
38
|
-
Related to this change, and to alleviate potential bad consequences from it,
|
39
|
-
we're also shipping some related changes:
|
40
|
-
|
41
|
-
* To keep disk usage under control, Bundler will cleanup unused gems when
|
42
|
-
installing gems per application using the new default. This new behavior can
|
43
|
-
be disabled by toggling back installing to system gems as explained before, or
|
44
|
-
by configuring `bundle config clean false`.
|
45
|
-
|
46
|
-
* To avoid duplicate downloads of `.gem` packages and recompilation of
|
47
|
-
extensions, Bundler will keep a global cache of gem packages and compiled
|
48
|
-
extensions. This new behaviour can be disabled with `bundle config
|
49
|
-
global_gem_cache false`, or by toggling back installing to system gems as
|
50
|
-
explained before.
|
51
|
-
|
52
31
|
### Flags passed to `bundle install` that relied on being remembered across invocations will be removed
|
53
32
|
|
54
33
|
In particular, the `--clean`, `--deployment`, `--frozen`, `--no-prune`,
|
@@ -144,12 +123,6 @@ Bundler will refuse to run otherwise.
|
|
144
123
|
|
145
124
|
#### Notable CLI changes
|
146
125
|
|
147
|
-
* The `--force` flag to `bundle install` and `bundle update` will be renamed to `--redownload`.
|
148
|
-
|
149
|
-
This is just a simple rename of the flag, to make more apparent what it
|
150
|
-
actually does. This flag forces redownloading every gem, it doesn't "force"
|
151
|
-
anything else.
|
152
|
-
|
153
126
|
* `bundle viz` will be removed and extracted to a plugin.
|
154
127
|
|
155
128
|
This is the only bundler command requiring external dependencies, both an OS
|