bundler 1.15.4 → 1.16.0.pre.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bundler might be problematic. Click here for more details.

Files changed (251) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +43 -0
  3. data/README.md +12 -7
  4. data/exe/bundle +1 -1
  5. data/exe/bundle_ruby +4 -3
  6. data/lib/bundler.rb +47 -37
  7. data/lib/bundler/build_metadata.rb +38 -0
  8. data/lib/bundler/capistrano.rb +5 -0
  9. data/lib/bundler/cli.rb +155 -67
  10. data/lib/bundler/cli/add.rb +0 -1
  11. data/lib/bundler/cli/binstubs.rb +9 -7
  12. data/lib/bundler/cli/cache.rb +5 -4
  13. data/lib/bundler/cli/check.rb +3 -5
  14. data/lib/bundler/cli/clean.rb +5 -6
  15. data/lib/bundler/cli/common.rb +11 -2
  16. data/lib/bundler/cli/config.rb +2 -1
  17. data/lib/bundler/cli/console.rb +2 -1
  18. data/lib/bundler/cli/doctor.rb +1 -0
  19. data/lib/bundler/cli/exec.rb +2 -1
  20. data/lib/bundler/cli/gem.rb +3 -2
  21. data/lib/bundler/cli/info.rb +0 -1
  22. data/lib/bundler/cli/init.rb +17 -6
  23. data/lib/bundler/cli/inject.rb +1 -0
  24. data/lib/bundler/cli/install.rb +61 -61
  25. data/lib/bundler/cli/issue.rb +1 -1
  26. data/lib/bundler/cli/list.rb +22 -0
  27. data/lib/bundler/cli/lock.rb +0 -1
  28. data/lib/bundler/cli/open.rb +2 -2
  29. data/lib/bundler/cli/outdated.rb +13 -8
  30. data/lib/bundler/cli/package.rb +9 -6
  31. data/lib/bundler/cli/platform.rb +1 -0
  32. data/lib/bundler/cli/plugin.rb +1 -0
  33. data/lib/bundler/cli/pristine.rb +9 -2
  34. data/lib/bundler/cli/show.rb +0 -1
  35. data/lib/bundler/cli/update.rb +31 -5
  36. data/lib/bundler/cli/viz.rb +1 -0
  37. data/lib/bundler/compact_index_client.rb +1 -0
  38. data/lib/bundler/compact_index_client/cache.rb +1 -0
  39. data/lib/bundler/compact_index_client/updater.rb +3 -2
  40. data/lib/bundler/compatibility_guard.rb +14 -0
  41. data/lib/bundler/constants.rb +1 -0
  42. data/lib/bundler/current_ruby.rb +5 -4
  43. data/lib/bundler/definition.rb +140 -95
  44. data/lib/bundler/dep_proxy.rb +2 -0
  45. data/lib/bundler/dependency.rb +6 -7
  46. data/lib/bundler/deployment.rb +1 -1
  47. data/lib/bundler/deprecate.rb +1 -0
  48. data/lib/bundler/dsl.rb +97 -62
  49. data/lib/bundler/endpoint_specification.rb +9 -0
  50. data/lib/bundler/env.rb +63 -27
  51. data/lib/bundler/environment_preserver.rb +26 -6
  52. data/lib/bundler/errors.rb +1 -0
  53. data/lib/bundler/feature_flag.rb +39 -4
  54. data/lib/bundler/fetcher.rb +15 -8
  55. data/lib/bundler/fetcher/base.rb +1 -0
  56. data/lib/bundler/fetcher/compact_index.rb +2 -11
  57. data/lib/bundler/fetcher/dependency.rb +1 -0
  58. data/lib/bundler/fetcher/downloader.rb +1 -0
  59. data/lib/bundler/fetcher/index.rb +1 -0
  60. data/lib/bundler/friendly_errors.rb +2 -1
  61. data/lib/bundler/gem_helper.rb +14 -9
  62. data/lib/bundler/gem_helpers.rb +1 -0
  63. data/lib/bundler/gem_remote_fetcher.rb +1 -0
  64. data/lib/bundler/gem_tasks.rb +1 -0
  65. data/lib/bundler/gem_version_promoter.rb +1 -0
  66. data/lib/bundler/gemdeps.rb +1 -0
  67. data/lib/bundler/graph.rb +1 -0
  68. data/lib/bundler/index.rb +15 -8
  69. data/lib/bundler/injector.rb +25 -22
  70. data/lib/bundler/inline.rb +5 -7
  71. data/lib/bundler/installer.rb +93 -45
  72. data/lib/bundler/installer/gem_installer.rb +2 -0
  73. data/lib/bundler/installer/parallel_installer.rb +73 -42
  74. data/lib/bundler/installer/standalone.rb +1 -0
  75. data/lib/bundler/lazy_specification.rb +2 -1
  76. data/lib/bundler/lockfile_generator.rb +95 -0
  77. data/lib/bundler/lockfile_parser.rb +10 -4
  78. data/lib/bundler/match_platform.rb +1 -0
  79. data/lib/bundler/mirror.rb +6 -3
  80. data/lib/bundler/plugin.rb +1 -0
  81. data/lib/bundler/plugin/api/source.rb +8 -0
  82. data/lib/bundler/plugin/installer.rb +7 -6
  83. data/lib/bundler/plugin/source_list.rb +7 -8
  84. data/lib/bundler/process_lock.rb +24 -0
  85. data/lib/bundler/psyched_yaml.rb +1 -0
  86. data/lib/bundler/remote_specification.rb +1 -0
  87. data/lib/bundler/resolver.rb +138 -191
  88. data/lib/bundler/resolver/spec_group.rb +111 -0
  89. data/lib/bundler/retry.rb +1 -0
  90. data/lib/bundler/ruby_dsl.rb +1 -0
  91. data/lib/bundler/ruby_version.rb +1 -0
  92. data/lib/bundler/rubygems_ext.rb +5 -4
  93. data/lib/bundler/rubygems_gem_installer.rb +23 -0
  94. data/lib/bundler/rubygems_integration.rb +56 -27
  95. data/lib/bundler/runtime.rb +3 -5
  96. data/lib/bundler/settings.rb +177 -76
  97. data/lib/bundler/settings/validator.rb +79 -0
  98. data/lib/bundler/setup.rb +1 -0
  99. data/lib/bundler/shared_helpers.rb +86 -26
  100. data/lib/bundler/similarity_detector.rb +1 -0
  101. data/lib/bundler/source.rb +32 -0
  102. data/lib/bundler/source/gemspec.rb +1 -0
  103. data/lib/bundler/source/git.rb +21 -16
  104. data/lib/bundler/source/git/git_proxy.rb +14 -10
  105. data/lib/bundler/source/metadata.rb +63 -0
  106. data/lib/bundler/source/path.rb +8 -8
  107. data/lib/bundler/source/path/installer.rb +2 -0
  108. data/lib/bundler/source/rubygems.rb +131 -84
  109. data/lib/bundler/source/rubygems/remote.rb +3 -0
  110. data/lib/bundler/source_list.rb +75 -15
  111. data/lib/bundler/spec_set.rb +2 -1
  112. data/lib/bundler/ssl_certs/certificate_manager.rb +2 -1
  113. data/lib/bundler/stub_specification.rb +1 -0
  114. data/lib/bundler/templates/Executable +4 -0
  115. data/lib/bundler/templates/Executable.bundler +105 -0
  116. data/lib/bundler/templates/Gemfile +1 -0
  117. data/lib/bundler/templates/gems.rb +8 -0
  118. data/lib/bundler/templates/newgem/README.md.tt +1 -1
  119. data/lib/bundler/templates/newgem/gitignore.tt +0 -1
  120. data/lib/bundler/templates/newgem/newgem.gemspec.tt +4 -1
  121. data/lib/bundler/templates/newgem/rspec.tt +1 -0
  122. data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +0 -2
  123. data/lib/bundler/ui.rb +1 -0
  124. data/lib/bundler/ui/rg_proxy.rb +1 -0
  125. data/lib/bundler/ui/shell.rb +15 -4
  126. data/lib/bundler/ui/silent.rb +1 -0
  127. data/lib/bundler/uri_credentials_filter.rb +1 -0
  128. data/lib/bundler/vendor/fileutils/lib/fileutils.rb +1638 -0
  129. data/lib/bundler/vendor/molinillo/lib/molinillo.rb +2 -0
  130. data/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +26 -0
  131. data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +7 -0
  132. data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +1 -0
  133. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +3 -2
  134. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +1 -0
  135. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +1 -0
  136. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +1 -0
  137. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +1 -0
  138. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +1 -0
  139. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +1 -0
  140. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +1 -0
  141. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +1 -0
  142. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +3 -2
  143. data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +69 -6
  144. data/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +2 -1
  145. data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +1 -0
  146. data/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +3 -1
  147. data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +487 -148
  148. data/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +1 -0
  149. data/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +8 -4
  150. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
  151. data/lib/bundler/vendored_fileutils.rb +9 -0
  152. data/lib/bundler/vendored_molinillo.rb +1 -0
  153. data/lib/bundler/vendored_persistent.rb +34 -0
  154. data/lib/bundler/vendored_thor.rb +1 -0
  155. data/lib/bundler/version.rb +6 -2
  156. data/lib/bundler/version_ranges.rb +1 -0
  157. data/lib/bundler/vlad.rb +5 -0
  158. data/lib/bundler/worker.rb +1 -0
  159. data/lib/bundler/yaml_serializer.rb +3 -3
  160. data/man/bundle-add.1 +43 -0
  161. data/man/bundle-add.1.txt +40 -0
  162. data/man/bundle-binstubs.1 +40 -0
  163. data/man/bundle-binstubs.1.txt +48 -0
  164. data/man/bundle-binstubs.ronn +14 -0
  165. data/man/bundle-check.1 +31 -0
  166. data/man/bundle-check.1.txt +32 -0
  167. data/man/bundle-clean.1 +24 -0
  168. data/man/bundle-clean.1.txt +26 -0
  169. data/man/bundle-config.1 +455 -0
  170. data/man/bundle-config.1.txt +491 -0
  171. data/man/bundle-config.ronn +133 -79
  172. data/man/bundle-exec.1 +165 -0
  173. data/man/bundle-exec.1.txt +178 -0
  174. data/man/bundle-exec.ronn +7 -0
  175. data/man/bundle-gem.1 +80 -0
  176. data/man/bundle-gem.1.txt +91 -0
  177. data/man/bundle-gem.ronn +2 -1
  178. data/man/bundle-info.1 +20 -0
  179. data/man/bundle-info.1.txt +21 -0
  180. data/man/bundle-init.1 +20 -0
  181. data/man/bundle-init.1.txt +24 -0
  182. data/man/bundle-inject.1 +33 -0
  183. data/man/bundle-inject.1.txt +32 -0
  184. data/man/bundle-install.1 +305 -0
  185. data/man/bundle-install.1.txt +385 -0
  186. data/man/bundle-install.ronn +32 -32
  187. data/man/bundle-list.1 +20 -0
  188. data/man/bundle-list.1.txt +21 -0
  189. data/man/bundle-list.ronn +15 -0
  190. data/man/bundle-lock.1 +84 -0
  191. data/man/bundle-lock.1.txt +93 -0
  192. data/man/bundle-open.1 +32 -0
  193. data/man/bundle-open.1.txt +29 -0
  194. data/man/bundle-outdated.1 +151 -0
  195. data/man/bundle-outdated.1.txt +127 -0
  196. data/man/bundle-outdated.ronn +1 -1
  197. data/man/bundle-package.1 +55 -0
  198. data/man/bundle-package.1.txt +79 -0
  199. data/man/bundle-package.ronn +5 -0
  200. data/man/bundle-platform.1 +61 -0
  201. data/man/bundle-platform.1.txt +57 -0
  202. data/man/bundle-pristine.1 +34 -0
  203. data/man/bundle-pristine.1.txt +44 -0
  204. data/man/bundle-pristine.ronn +24 -3
  205. data/man/bundle-show.1 +23 -0
  206. data/man/bundle-show.1.txt +25 -0
  207. data/man/bundle-update.1 +390 -0
  208. data/man/bundle-update.1.txt +386 -0
  209. data/man/bundle-update.ronn +2 -2
  210. data/man/bundle-viz.1 +39 -0
  211. data/man/bundle-viz.1.txt +38 -0
  212. data/man/bundle-viz.ronn +5 -5
  213. data/man/bundle.1 +132 -0
  214. data/man/bundle.1.txt +113 -0
  215. data/man/bundle.ronn +5 -2
  216. data/man/gemfile.5 +679 -0
  217. data/man/gemfile.5.ronn +31 -0
  218. data/man/gemfile.5.txt +636 -0
  219. data/man/index.txt +23 -0
  220. metadata +21 -36
  221. data/.codeclimate.yml +0 -25
  222. data/.gitignore +0 -18
  223. data/.rspec +0 -3
  224. data/.rubocop.yml +0 -131
  225. data/.rubocop_todo.yml +0 -418
  226. data/.travis.yml +0 -122
  227. data/CODE_OF_CONDUCT.md +0 -42
  228. data/CONTRIBUTING.md +0 -17
  229. data/Rakefile +0 -338
  230. data/bin/rake +0 -19
  231. data/bin/rspec +0 -15
  232. data/bin/rubocop +0 -17
  233. data/bin/with_rubygems +0 -39
  234. data/bundler.gemspec +0 -48
  235. data/doc/README.md +0 -30
  236. data/doc/TROUBLESHOOTING.md +0 -64
  237. data/doc/contributing/BUG_TRIAGE.md +0 -36
  238. data/doc/contributing/COMMUNITY.md +0 -13
  239. data/doc/contributing/GETTING_HELP.md +0 -11
  240. data/doc/contributing/HOW_YOU_CAN_HELP.md +0 -27
  241. data/doc/contributing/ISSUES.md +0 -51
  242. data/doc/contributing/README.md +0 -38
  243. data/doc/development/NEW_FEATURES.md +0 -10
  244. data/doc/development/PULL_REQUESTS.md +0 -40
  245. data/doc/development/README.md +0 -19
  246. data/doc/development/RELEASING.md +0 -9
  247. data/doc/development/SETUP.md +0 -27
  248. data/doc/documentation/README.md +0 -29
  249. data/doc/documentation/VISION.md +0 -26
  250. data/doc/documentation/WRITING.md +0 -54
  251. data/task/release.rake +0 -116
@@ -0,0 +1,127 @@
1
+ BUNDLE-OUTDATED(1) BUNDLE-OUTDATED(1)
2
+
3
+
4
+
5
+ 1mNAME0m
6
+ 1mbundle-outdated 22m- List installed gems with newer versions available
7
+
8
+ 1mSYNOPSIS0m
9
+ 1mbundle outdated 22m[GEM] [--local] [--pre] [--source] [--strict]
10
+ [--parseable | --porcelain] [--group=GROUP] [--groups]
11
+ [--update-strict] [--patch|--minor|--major] [--filter-major] [--fil-
12
+ ter-minor] [--filter-patch]
13
+
14
+ 1mDESCRIPTION0m
15
+ Outdated lists the names and versions of gems that have a newer version
16
+ available in the given source. Calling outdated with [GEM [GEM]] will
17
+ only check for newer versions of the given gems. Prerelease gems are
18
+ ignored by default. If your gems are up to date, Bundler will exit with
19
+ a status of 0. Otherwise, it will exit 1.
20
+
21
+ 1mOPTIONS0m
22
+ 1m--local0m
23
+ Do not attempt to fetch gems remotely and use the gem cache
24
+ instead.
25
+
26
+ 1m--pre 22mCheck for newer pre-release gems.
27
+
28
+ 1m--source0m
29
+ Check against a specific source.
30
+
31
+ 1m--strict0m
32
+ Only list newer versions allowed by your Gemfile requirements.
33
+
34
+ 1m--parseable22m, 1m--porcelain0m
35
+ Use minimal formatting for more parseable output.
36
+
37
+ 1m--group0m
38
+ List gems from a specific group.
39
+
40
+ 1m--groups0m
41
+ List gems organized by groups.
42
+
43
+ 1m--update-strict0m
44
+ Strict conservative resolution, do not allow any gem to be
45
+ updated past latest --patch | --minor| --major.
46
+
47
+ 1m--minor0m
48
+ Prefer updating only to next minor version.
49
+
50
+ 1m--major0m
51
+ Prefer updating to next major version (default).
52
+
53
+ 1m--patch0m
54
+ Prefer updating only to next patch version.
55
+
56
+ 1m--filter-major0m
57
+ Only list major newer versions.
58
+
59
+ 1m--filter-minor0m
60
+ Only list minor newer versions.
61
+
62
+ 1m--filter-patch0m
63
+ Only list patch newer versions.
64
+
65
+ 1mPATCH LEVEL OPTIONS0m
66
+ See [bundle update(1)][bundle-update] for details.
67
+
68
+ One difference between the patch level options in 1mbundle update 22mand
69
+ here is the 1m--strict 22moption. 1m--strict 22mwas already an option on outdated
70
+ before the patch level options were added. 1m--strict 22mwasn't altered, and
71
+ the 1m--update-strict 22moption on 1moutdated 22mreflects what 1m--strict 22mdoes on
72
+ 1mbundle update22m.
73
+
74
+ 1mFILTERING OUTPUT0m
75
+ The 3 filtering options do not affect the resolution of versions,
76
+ merely what versions are shown in the output.
77
+
78
+ If the regular output shows the following:
79
+
80
+
81
+
82
+ * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
83
+ * hashie (newest 3.4.6, installed 1.2.0, requested = 1.2.0) in groups "default"
84
+ * headless (newest 2.3.1, installed 2.2.3) in groups "test"
85
+
86
+
87
+
88
+ 1m--filter-major 22mwould only show:
89
+
90
+
91
+
92
+ * hashie (newest 3.4.6, installed 1.2.0, requested = 1.2.0) in groups "default"
93
+
94
+
95
+
96
+ 1m--filter-minor 22mwould only show:
97
+
98
+
99
+
100
+ * headless (newest 2.3.1, installed 2.2.3) in groups "test"
101
+
102
+
103
+
104
+ 1m--filter-patch 22mwould only show:
105
+
106
+
107
+
108
+ * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
109
+
110
+
111
+
112
+ Filter options can be combined. 1m--filter-minor 22mand 1m--filter-patch 22mwould
113
+ show:
114
+
115
+
116
+
117
+ * faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
118
+ * headless (newest 2.3.1, installed 2.2.3) in groups "test"
119
+
120
+
121
+
122
+ Combining all three 1mfilter 22moptions would be the same result as provid-
123
+ ing none of them.
124
+
125
+
126
+
127
+ August 2017 BUNDLE-OUTDATED(1)
@@ -37,7 +37,7 @@ are up to date, Bundler will exit with a status of 0. Otherwise, it will exit 1.
37
37
  * `--strict`:
38
38
  Only list newer versions allowed by your Gemfile requirements.
39
39
 
40
- * `--parseable`:
40
+ * `--parseable`, `--porcelain`:
41
41
  Use minimal formatting for more parseable output.
42
42
 
43
43
  * `--group`:
@@ -0,0 +1,55 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "BUNDLE\-PACKAGE" "1" "August 2017" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBbundle\-package\fR \- Package your needed \fB\.gem\fR files into your application
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBbundle package\fR
11
+ .
12
+ .SH "DESCRIPTION"
13
+ Copy all of the \fB\.gem\fR files needed to run the application into the \fBvendor/cache\fR directory\. In the future, when running [bundle install(1)][bundle\-install], use the gems in the cache in preference to the ones on \fBrubygems\.org\fR\.
14
+ .
15
+ .SH "GIT AND PATH GEMS"
16
+ Since Bundler 1\.2, the \fBbundle package\fR command can also package \fB:git\fR and \fB:path\fR dependencies besides \.gem files\. This needs to be explicitly enabled via the \fB\-\-all\fR option\. Once used, the \fB\-\-all\fR option will be remembered\.
17
+ .
18
+ .SH "SUPPORT FOR MULTIPLE PLATFORMS"
19
+ When using gems that have different packages for different platforms, Bundler 1\.8 and newer support caching of gems for other platforms where the Gemfile has been resolved (i\.e\. present in the lockfile) in \fBvendor/cache\fR\. This needs to be enabled via the \fB\-\-all\-platforms\fR option\. This setting will be remembered in your local bundler configuration\.
20
+ .
21
+ .SH "REMOTE FETCHING"
22
+ By default, if you run [bundle install(1)][bundle\-install] after running [bundle package(1)][bundle\-package], bundler will still connect to \fBrubygems\.org\fR to check whether a platform\-specific gem exists for any of the gems in \fBvendor/cache\fR\.
23
+ .
24
+ .P
25
+ For instance, consider this Gemfile(5):
26
+ .
27
+ .IP "" 4
28
+ .
29
+ .nf
30
+
31
+ source "https://rubygems\.org"
32
+
33
+ gem "nokogiri"
34
+ .
35
+ .fi
36
+ .
37
+ .IP "" 0
38
+ .
39
+ .P
40
+ If you run \fBbundle package\fR under C Ruby, bundler will retrieve the version of \fBnokogiri\fR for the \fB"ruby"\fR platform\. If you deploy to JRuby and run \fBbundle install\fR, bundler is forced to check to see whether a \fB"java"\fR platformed \fBnokogiri\fR exists\.
41
+ .
42
+ .P
43
+ Even though the \fBnokogiri\fR gem for the Ruby platform is \fItechnically\fR acceptable on JRuby, it has a C extension that does not run on JRuby\. As a result, bundler will, by default, still connect to \fBrubygems\.org\fR to check whether it has a version of one of your gems more specific to your platform\.
44
+ .
45
+ .P
46
+ This problem is also not limited to the \fB"java"\fR platform\. A similar (common) problem can happen when developing on Windows and deploying to Linux, or even when developing on OSX and deploying to Linux\.
47
+ .
48
+ .P
49
+ If you know for sure that the gems packaged in \fBvendor/cache\fR are appropriate for the platform you are on, you can run \fBbundle install \-\-local\fR to skip checking for more appropriate gems, and use the ones in \fBvendor/cache\fR\.
50
+ .
51
+ .P
52
+ One way to be sure that you have the right platformed versions of all your gems is to run \fBbundle package\fR on an identical machine and check in the gems\. For instance, you can run \fBbundle package\fR on an identical staging box during your staging process, and check in the \fBvendor/cache\fR before deploying to production\.
53
+ .
54
+ .P
55
+ By default, [bundle package(1)][bundle\-package] fetches and also installs the gems to the default location\. To package the dependencies to \fBvendor/cache\fR without installing them to the local install location, you can run \fBbundle package \-\-no\-install\fR\.
@@ -0,0 +1,79 @@
1
+ BUNDLE-PACKAGE(1) BUNDLE-PACKAGE(1)
2
+
3
+
4
+
5
+ 1mNAME0m
6
+ 1mbundle-package 22m- Package your needed 1m.gem 22mfiles into your application
7
+
8
+ 1mSYNOPSIS0m
9
+ 1mbundle package0m
10
+
11
+ 1mDESCRIPTION0m
12
+ Copy all of the 1m.gem 22mfiles needed to run the application into the 1mven-0m
13
+ 1mdor/cache 22mdirectory. In the future, when running [bundle
14
+ install(1)][bundle-install], use the gems in the cache in preference to
15
+ the ones on 1mrubygems.org22m.
16
+
17
+ 1mGIT AND PATH GEMS0m
18
+ Since Bundler 1.2, the 1mbundle package 22mcommand can also package 1m:git 22mand
19
+ 1m:path 22mdependencies besides .gem files. This needs to be explicitly
20
+ enabled via the 1m--all 22moption. Once used, the 1m--all 22moption will be
21
+ remembered.
22
+
23
+ 1mSUPPORT FOR MULTIPLE PLATFORMS0m
24
+ When using gems that have different packages for different platforms,
25
+ Bundler 1.8 and newer support caching of gems for other platforms where
26
+ the Gemfile has been resolved (i.e. present in the lockfile) in 1mven-0m
27
+ 1mdor/cache22m. This needs to be enabled via the 1m--all-platforms 22moption.
28
+ This setting will be remembered in your local bundler configuration.
29
+
30
+ 1mREMOTE FETCHING0m
31
+ By default, if you run [bundle install(1)][bundle-install] after run-
32
+ ning [bundle package(1)][bundle-package], bundler will still connect to
33
+ 1mrubygems.org 22mto check whether a platform-specific gem exists for any of
34
+ the gems in 1mvendor/cache22m.
35
+
36
+ For instance, consider this Gemfile(5):
37
+
38
+
39
+
40
+ source "https://rubygems.org"
41
+
42
+ gem "nokogiri"
43
+
44
+
45
+
46
+ If you run 1mbundle package 22munder C Ruby, bundler will retrieve the ver-
47
+ sion of 1mnokogiri 22mfor the 1m"ruby" 22mplatform. If you deploy to JRuby and
48
+ run 1mbundle install22m, bundler is forced to check to see whether a 1m"java"0m
49
+ platformed 1mnokogiri 22mexists.
50
+
51
+ Even though the 1mnokogiri 22mgem for the Ruby platform is 4mtechnically0m
52
+ acceptable on JRuby, it has a C extension that does not run on JRuby.
53
+ As a result, bundler will, by default, still connect to 1mrubygems.org 22mto
54
+ check whether it has a version of one of your gems more specific to
55
+ your platform.
56
+
57
+ This problem is also not limited to the 1m"java" 22mplatform. A similar
58
+ (common) problem can happen when developing on Windows and deploying to
59
+ Linux, or even when developing on OSX and deploying to Linux.
60
+
61
+ If you know for sure that the gems packaged in 1mvendor/cache 22mare appro-
62
+ priate for the platform you are on, you can run 1mbundle install --local0m
63
+ to skip checking for more appropriate gems, and use the ones in 1mven-0m
64
+ 1mdor/cache22m.
65
+
66
+ One way to be sure that you have the right platformed versions of all
67
+ your gems is to run 1mbundle package 22mon an identical machine and check in
68
+ the gems. For instance, you can run 1mbundle package 22mon an identical
69
+ staging box during your staging process, and check in the 1mvendor/cache0m
70
+ before deploying to production.
71
+
72
+ By default, [bundle package(1)][bundle-package] fetches and also
73
+ installs the gems to the default location. To package the dependencies
74
+ to 1mvendor/cache 22mwithout installing them to the local install location,
75
+ you can run 1mbundle package --no-install22m.
76
+
77
+
78
+
79
+ August 2017 BUNDLE-PACKAGE(1)
@@ -65,3 +65,8 @@ machine and check in the gems. For instance, you can run
65
65
  `bundle package` on an identical staging box during your
66
66
  staging process, and check in the `vendor/cache` before
67
67
  deploying to production.
68
+
69
+ By default, [bundle package(1)][bundle-package] fetches and also
70
+ installs the gems to the default location. To package the
71
+ dependencies to `vendor/cache` without installing them to the
72
+ local install location, you can run `bundle package --no-install`.
@@ -0,0 +1,61 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "BUNDLE\-PLATFORM" "1" "June 2017" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBbundle\-platform\fR \- Displays platform compatibility information
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBbundle platform\fR [\-\-ruby]
11
+ .
12
+ .SH "DESCRIPTION"
13
+ \fBplatform\fR will display information from your Gemfile, Gemfile\.lock, and Ruby VM about your platform\.
14
+ .
15
+ .P
16
+ For instance, using this Gemfile(5):
17
+ .
18
+ .IP "" 4
19
+ .
20
+ .nf
21
+
22
+ source "https://rubygems\.org"
23
+
24
+ ruby "1\.9\.3"
25
+
26
+ gem "rack"
27
+ .
28
+ .fi
29
+ .
30
+ .IP "" 0
31
+ .
32
+ .P
33
+ If you run \fBbundle platform\fR on Ruby 1\.9\.3, it will display the following output:
34
+ .
35
+ .IP "" 4
36
+ .
37
+ .nf
38
+
39
+ Your platform is: x86_64\-linux
40
+
41
+ Your app has gems that work on these platforms:
42
+ * ruby
43
+
44
+ Your Gemfile specifies a Ruby version requirement:
45
+ * ruby 1\.9\.3
46
+
47
+ Your current platform satisfies the Ruby version requirement\.
48
+ .
49
+ .fi
50
+ .
51
+ .IP "" 0
52
+ .
53
+ .P
54
+ \fBplatform\fR will list all the platforms in your \fBGemfile\.lock\fR as well as the \fBruby\fR directive if applicable from your Gemfile(5)\. It will also let you know if the \fBruby\fR directive requirement has been met\. If \fBruby\fR directive doesn\'t match the running Ruby VM, it will tell you what part does not\.
55
+ .
56
+ .SH "OPTIONS"
57
+ .
58
+ .TP
59
+ \fB\-\-ruby\fR
60
+ It will display the ruby directive information, so you don\'t have to parse it from the Gemfile(5)\.
61
+
@@ -0,0 +1,57 @@
1
+ BUNDLE-PLATFORM(1) BUNDLE-PLATFORM(1)
2
+
3
+
4
+
5
+ 1mNAME0m
6
+ 1mbundle-platform 22m- Displays platform compatibility information
7
+
8
+ 1mSYNOPSIS0m
9
+ 1mbundle platform 22m[--ruby]
10
+
11
+ 1mDESCRIPTION0m
12
+ 1mplatform 22mwill display information from your Gemfile, Gemfile.lock, and
13
+ Ruby VM about your platform.
14
+
15
+ For instance, using this Gemfile(5):
16
+
17
+
18
+
19
+ source "https://rubygems.org"
20
+
21
+ ruby "1.9.3"
22
+
23
+ gem "rack"
24
+
25
+
26
+
27
+ If you run 1mbundle platform 22mon Ruby 1.9.3, it will display the following
28
+ output:
29
+
30
+
31
+
32
+ Your platform is: x86_64-linux
33
+
34
+ Your app has gems that work on these platforms:
35
+ * ruby
36
+
37
+ Your Gemfile specifies a Ruby version requirement:
38
+ * ruby 1.9.3
39
+
40
+ Your current platform satisfies the Ruby version requirement.
41
+
42
+
43
+
44
+ 1mplatform 22mwill list all the platforms in your 1mGemfile.lock 22mas well as
45
+ the 1mruby 22mdirective if applicable from your Gemfile(5). It will also let
46
+ you know if the 1mruby 22mdirective requirement has been met. If 1mruby 22mdirec-
47
+ tive doesn't match the running Ruby VM, it will tell you what part does
48
+ not.
49
+
50
+ 1mOPTIONS0m
51
+ 1m--ruby 22mIt will display the ruby directive information, so you don't
52
+ have to parse it from the Gemfile(5).
53
+
54
+
55
+
56
+
57
+ June 2017 BUNDLE-PLATFORM(1)
@@ -0,0 +1,34 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "BUNDLE\-PRISTINE" "1" "August 2017" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBbundle pristine\fR
11
+ .
12
+ .SH "DESCRIPTION"
13
+ \fBpristine\fR restores the installed gems in the bundle to their pristine condition using the local gem cache from RubyGems\. For git gems, a forced checkout will be performed\.
14
+ .
15
+ .P
16
+ For further explanation, \fBbundle pristine\fR ignores unpacked files on disk\. In other words, this command utilizes the local \fB\.gem\fR cache or the gem\'s git repository as if one were installing from scratch\.
17
+ .
18
+ .P
19
+ Note: the Bundler gem cannot be restored to its original state with \fBpristine\fR\. One also cannot use \fBbundle pristine\fR on gems with a \'path\' option in the Gemfile, because bundler has no original copy it can restore from\.
20
+ .
21
+ .P
22
+ When is it practical to use \fBbundle pristine\fR?
23
+ .
24
+ .P
25
+ It comes in handy when a developer is debugging a gem\. \fBbundle pristine\fR is a great way to get rid of experimental changes to a gem that one may not want\.
26
+ .
27
+ .P
28
+ Why use \fBbundle pristine\fR over \fBgem pristine \-\-all\fR?
29
+ .
30
+ .P
31
+ Both commands are very similar\. For context: \fBbundle pristine\fR, without arguments, cleans all gems from the lockfile\. Meanwhile, \fBgem pristine \-\-all\fR cleans all installed gems for that Ruby version\.
32
+ .
33
+ .P
34
+ If a developer forgets which gems in their project they might have been debugging, the Rubygems \fBgem pristine [GEMNAME]\fR command may be inconvenient\. One can avoid waiting for \fBgem pristine \-\-all\fR, and instead run \fBbundle pristine\fR\.
@@ -0,0 +1,44 @@
1
+ BUNDLE-PRISTINE(1) BUNDLE-PRISTINE(1)
2
+
3
+
4
+
5
+ 1mNAME0m
6
+ 1mbundle-pristine 22m- Restores installed gems to their pristine condition
7
+
8
+ 1mSYNOPSIS0m
9
+ 1mbundle pristine0m
10
+
11
+ 1mDESCRIPTION0m
12
+ 1mpristine 22mrestores the installed gems in the bundle to their pristine
13
+ condition using the local gem cache from RubyGems. For git gems, a
14
+ forced checkout will be performed.
15
+
16
+ For further explanation, 1mbundle pristine 22mignores unpacked files on
17
+ disk. In other words, this command utilizes the local 1m.gem 22mcache or the
18
+ gem's git repository as if one were installing from scratch.
19
+
20
+ Note: the Bundler gem cannot be restored to its original state with
21
+ 1mpristine22m. One also cannot use 1mbundle pristine 22mon gems with a 'path'
22
+ option in the Gemfile, because bundler has no original copy it can
23
+ restore from.
24
+
25
+ When is it practical to use 1mbundle pristine22m?
26
+
27
+ It comes in handy when a developer is debugging a gem. 1mbundle pristine0m
28
+ is a great way to get rid of experimental changes to a gem that one may
29
+ not want.
30
+
31
+ Why use 1mbundle pristine 22mover 1mgem pristine --all22m?
32
+
33
+ Both commands are very similar. For context: 1mbundle pristine22m, without
34
+ arguments, cleans all gems from the lockfile. Meanwhile, 1mgem pristine0m
35
+ 1m--all 22mcleans all installed gems for that Ruby version.
36
+
37
+ If a developer forgets which gems in their project they might have been
38
+ debugging, the Rubygems 1mgem pristine [GEMNAME] 22mcommand may be inconve-
39
+ nient. One can avoid waiting for 1mgem pristine --all22m, and instead run
40
+ 1mbundle pristine22m.
41
+
42
+
43
+
44
+ August 2017 BUNDLE-PRISTINE(1)