bundler-maglev- 1.0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. data/.gitignore +22 -0
  2. data/.travis.yml +32 -0
  3. data/CHANGELOG.md +805 -0
  4. data/ISSUES.md +62 -0
  5. data/LICENSE +23 -0
  6. data/README.md +29 -0
  7. data/Rakefile +212 -0
  8. data/UPGRADING.md +103 -0
  9. data/bin/bundle +22 -0
  10. data/bundler.gemspec +30 -0
  11. data/lib/bundler.rb +286 -0
  12. data/lib/bundler/capistrano.rb +11 -0
  13. data/lib/bundler/cli.rb +520 -0
  14. data/lib/bundler/definition.rb +438 -0
  15. data/lib/bundler/dependency.rb +134 -0
  16. data/lib/bundler/deployment.rb +58 -0
  17. data/lib/bundler/dsl.rb +257 -0
  18. data/lib/bundler/environment.rb +47 -0
  19. data/lib/bundler/gem_helper.rb +151 -0
  20. data/lib/bundler/gem_installer.rb +9 -0
  21. data/lib/bundler/gem_tasks.rb +2 -0
  22. data/lib/bundler/graph.rb +130 -0
  23. data/lib/bundler/index.rb +138 -0
  24. data/lib/bundler/installer.rb +97 -0
  25. data/lib/bundler/lazy_specification.rb +74 -0
  26. data/lib/bundler/lockfile_parser.rb +108 -0
  27. data/lib/bundler/remote_specification.rb +59 -0
  28. data/lib/bundler/resolver.rb +464 -0
  29. data/lib/bundler/rubygems_ext.rb +237 -0
  30. data/lib/bundler/rubygems_integration.rb +349 -0
  31. data/lib/bundler/runtime.rb +152 -0
  32. data/lib/bundler/settings.rb +115 -0
  33. data/lib/bundler/setup.rb +23 -0
  34. data/lib/bundler/shared_helpers.rb +71 -0
  35. data/lib/bundler/source.rb +708 -0
  36. data/lib/bundler/spec_set.rb +135 -0
  37. data/lib/bundler/templates/Executable +16 -0
  38. data/lib/bundler/templates/Gemfile +4 -0
  39. data/lib/bundler/templates/newgem/Gemfile.tt +4 -0
  40. data/lib/bundler/templates/newgem/Rakefile.tt +1 -0
  41. data/lib/bundler/templates/newgem/bin/newgem.tt +3 -0
  42. data/lib/bundler/templates/newgem/gitignore.tt +4 -0
  43. data/lib/bundler/templates/newgem/lib/newgem.rb.tt +9 -0
  44. data/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +7 -0
  45. data/lib/bundler/templates/newgem/newgem.gemspec.tt +24 -0
  46. data/lib/bundler/ui.rb +73 -0
  47. data/lib/bundler/vendor/thor.rb +358 -0
  48. data/lib/bundler/vendor/thor/actions.rb +314 -0
  49. data/lib/bundler/vendor/thor/actions/create_file.rb +105 -0
  50. data/lib/bundler/vendor/thor/actions/create_link.rb +57 -0
  51. data/lib/bundler/vendor/thor/actions/directory.rb +93 -0
  52. data/lib/bundler/vendor/thor/actions/empty_directory.rb +134 -0
  53. data/lib/bundler/vendor/thor/actions/file_manipulation.rb +270 -0
  54. data/lib/bundler/vendor/thor/actions/inject_into_file.rb +109 -0
  55. data/lib/bundler/vendor/thor/base.rb +576 -0
  56. data/lib/bundler/vendor/thor/core_ext/file_binary_read.rb +9 -0
  57. data/lib/bundler/vendor/thor/core_ext/hash_with_indifferent_access.rb +75 -0
  58. data/lib/bundler/vendor/thor/core_ext/ordered_hash.rb +100 -0
  59. data/lib/bundler/vendor/thor/error.rb +30 -0
  60. data/lib/bundler/vendor/thor/group.rb +273 -0
  61. data/lib/bundler/vendor/thor/invocation.rb +168 -0
  62. data/lib/bundler/vendor/thor/parser.rb +4 -0
  63. data/lib/bundler/vendor/thor/parser/argument.rb +67 -0
  64. data/lib/bundler/vendor/thor/parser/arguments.rb +161 -0
  65. data/lib/bundler/vendor/thor/parser/option.rb +120 -0
  66. data/lib/bundler/vendor/thor/parser/options.rb +175 -0
  67. data/lib/bundler/vendor/thor/rake_compat.rb +66 -0
  68. data/lib/bundler/vendor/thor/runner.rb +309 -0
  69. data/lib/bundler/vendor/thor/shell.rb +88 -0
  70. data/lib/bundler/vendor/thor/shell/basic.rb +302 -0
  71. data/lib/bundler/vendor/thor/shell/color.rb +108 -0
  72. data/lib/bundler/vendor/thor/shell/html.rb +121 -0
  73. data/lib/bundler/vendor/thor/task.rb +113 -0
  74. data/lib/bundler/vendor/thor/util.rb +229 -0
  75. data/lib/bundler/vendor/thor/version.rb +3 -0
  76. data/lib/bundler/vendored_thor.rb +7 -0
  77. data/lib/bundler/version.rb +6 -0
  78. data/lib/bundler/vlad.rb +11 -0
  79. data/man/bundle-config.ronn +90 -0
  80. data/man/bundle-exec.ronn +111 -0
  81. data/man/bundle-install.ronn +317 -0
  82. data/man/bundle-package.ronn +59 -0
  83. data/man/bundle-update.ronn +176 -0
  84. data/man/bundle.ronn +80 -0
  85. data/man/gemfile.5.ronn +284 -0
  86. data/man/index.txt +6 -0
  87. data/spec/bundler/gem_helper_spec.rb +143 -0
  88. data/spec/cache/gems_spec.rb +230 -0
  89. data/spec/cache/git_spec.rb +12 -0
  90. data/spec/cache/path_spec.rb +27 -0
  91. data/spec/cache/platform_spec.rb +57 -0
  92. data/spec/install/deploy_spec.rb +197 -0
  93. data/spec/install/deprecated_spec.rb +37 -0
  94. data/spec/install/gems/c_ext_spec.rb +48 -0
  95. data/spec/install/gems/env_spec.rb +107 -0
  96. data/spec/install/gems/flex_spec.rb +313 -0
  97. data/spec/install/gems/groups_spec.rb +259 -0
  98. data/spec/install/gems/packed_spec.rb +84 -0
  99. data/spec/install/gems/platform_spec.rb +192 -0
  100. data/spec/install/gems/resolving_spec.rb +72 -0
  101. data/spec/install/gems/simple_case_spec.rb +770 -0
  102. data/spec/install/gems/sudo_spec.rb +74 -0
  103. data/spec/install/gems/win32_spec.rb +26 -0
  104. data/spec/install/gemspec_spec.rb +125 -0
  105. data/spec/install/git_spec.rb +570 -0
  106. data/spec/install/invalid_spec.rb +35 -0
  107. data/spec/install/path_spec.rb +405 -0
  108. data/spec/install/upgrade_spec.rb +26 -0
  109. data/spec/lock/git_spec.rb +35 -0
  110. data/spec/lock/lockfile_spec.rb +739 -0
  111. data/spec/other/check_spec.rb +221 -0
  112. data/spec/other/config_spec.rb +40 -0
  113. data/spec/other/console_spec.rb +54 -0
  114. data/spec/other/exec_spec.rb +248 -0
  115. data/spec/other/ext_spec.rb +37 -0
  116. data/spec/other/help_spec.rb +39 -0
  117. data/spec/other/init_spec.rb +40 -0
  118. data/spec/other/newgem_spec.rb +46 -0
  119. data/spec/other/open_spec.rb +35 -0
  120. data/spec/other/show_spec.rb +82 -0
  121. data/spec/quality_spec.rb +62 -0
  122. data/spec/resolver/basic_spec.rb +20 -0
  123. data/spec/resolver/platform_spec.rb +82 -0
  124. data/spec/runtime/executable_spec.rb +110 -0
  125. data/spec/runtime/load_spec.rb +107 -0
  126. data/spec/runtime/platform_spec.rb +90 -0
  127. data/spec/runtime/require_spec.rb +231 -0
  128. data/spec/runtime/setup_spec.rb +730 -0
  129. data/spec/runtime/with_clean_env_spec.rb +15 -0
  130. data/spec/spec_helper.rb +92 -0
  131. data/spec/support/builders.rb +597 -0
  132. data/spec/support/helpers.rb +239 -0
  133. data/spec/support/indexes.rb +112 -0
  134. data/spec/support/matchers.rb +77 -0
  135. data/spec/support/path.rb +71 -0
  136. data/spec/support/platforms.rb +53 -0
  137. data/spec/support/ruby_ext.rb +20 -0
  138. data/spec/support/rubygems_ext.rb +37 -0
  139. data/spec/support/rubygems_hax/platform.rb +11 -0
  140. data/spec/support/sudo.rb +21 -0
  141. data/spec/update/gems_spec.rb +122 -0
  142. data/spec/update/git_spec.rb +196 -0
  143. data/spec/update/source_spec.rb +51 -0
  144. metadata +296 -0
data/.gitignore ADDED
@@ -0,0 +1,22 @@
1
+ # system crap
2
+ .DS_Store
3
+ .*.swp
4
+
5
+ # files created by running the specs
6
+ tmp
7
+
8
+ # built gems
9
+ pkg
10
+ *.gem
11
+
12
+ # rubinius bytecode
13
+ *.rbc
14
+
15
+ # output from ronn
16
+ lib/bundler/man
17
+
18
+ # output from ci_reporter
19
+ spec/reports
20
+
21
+ # Netbeans
22
+ nbproject
data/.travis.yml ADDED
@@ -0,0 +1,32 @@
1
+ before_script:
2
+ - sudo apt-get install groff -y
3
+ - rake spec:deps
4
+
5
+ script: rake spec:travis
6
+
7
+ rvm:
8
+ - 1.8.7
9
+ - 1.9.2
10
+
11
+ env:
12
+ - RGV=v1.3.6
13
+ - RGV=v1.3.7
14
+ - RGV=v1.4.2
15
+ - RGV=v1.5.3
16
+ - RGV=v1.6.2
17
+ - RGV=v1.7.2
18
+ - RGV=v1.8.10
19
+ - RGV=master
20
+
21
+ matrix:
22
+ exclude:
23
+ - rvm: 1.9.2
24
+ env: RGV=v1.3.6
25
+ - rvm: 1.9.2
26
+ env: RGV=v1.3.7
27
+ - rvm: 1.9.2
28
+ env: RGV=v1.4.2
29
+
30
+ notifications:
31
+ email:
32
+ - travis-ci@andrearko.com
data/CHANGELOG.md ADDED
@@ -0,0 +1,805 @@
1
+ ## 1.0.21 (September 30, 2011)
2
+
3
+ - No changes from RC
4
+
5
+ ## 1.0.21.rc (September 29, 2011)
6
+
7
+ Bugfixes:
8
+
9
+ - Load Psych unless Syck is defined, because 1.9.2 defines YAML
10
+
11
+ ## 1.0.20 (September 27, 2011)
12
+
13
+ Features:
14
+
15
+ - Add platform :maglev (@timfel, #1444)
16
+
17
+ Bugfixes:
18
+
19
+ - Ensure YAML is required even if Psych is found
20
+ - Handle directory names that contain invalid regex characters
21
+
22
+ ## 1.0.20.rc (September 18, 2011)
23
+
24
+ Features:
25
+
26
+ - Rescue interrupts to `bundle` while loading bundler.rb (#1395)
27
+ - Allow clearing without groups by passing `--without ''` (#1259)
28
+
29
+ Bugfixes:
30
+
31
+ - Manually sort requirements in the lockfile (#1375)
32
+ - Remove several warnings generated by ruby -w (@stephencelis)
33
+ - Handle trailing slashes on names passed to `gem` (#1372)
34
+ - Name modules for gems like 'test-foo_bar' correctly (#1303)
35
+ - Don't require Psych if Syck is already loaded (#1239)
36
+
37
+ ## 1.0.19.rc (September 13, 2011)
38
+
39
+ Features:
40
+
41
+ - Compatability with Rubygems 1.8.10 installer changes
42
+ - Report gem installation failures clearly (@rwilcox, #1380)
43
+ - Useful error for cap and vlad on first deploy (@nexmat, @kirs)
44
+
45
+ Bugfixes:
46
+
47
+ - `exec` now works when the command contains 'exec'
48
+ - Only touch lock after changes on Windows (@robertwahler, #1358)
49
+ - Keep load paths when #setup is called multiple times (@radsaq, #1379)
50
+
51
+ ## 1.0.18 (August 16, 2011)
52
+
53
+ Bugfixes:
54
+
55
+ - Fix typo in DEBUG_RESOLVER (@geemus)
56
+ - Fixes rake 0.9.x warning (@mtylty, #1333)
57
+ - Fix `bundle cache` again for rubygems 1.3.x
58
+
59
+ Features:
60
+
61
+ - Run the bundle install earlier in a Capistrano deployment (@cgriego, #1300)
62
+ - Support hidden gemspec (@trans, @cldwalker, #827)
63
+ - Make fetch_specs faster (@zeha, #1294)
64
+ - Allow overriding development deps loaded by #gemspec (@lgierth, #1245)
65
+
66
+ ## 1.0.17 (August 8, 2011)
67
+
68
+ Bugfixes:
69
+
70
+ - Fix rake issues with rubygems 1.3.x (#1342)
71
+ - Fixed invalid byte sequence error while installing gem on Ruby 1.9 (#1341)
72
+
73
+ ## 1.0.16 (August 8, 2011)
74
+
75
+ Features:
76
+
77
+ - Performance fix for MRI 1.9 (@efficientcloud, #1288)
78
+ - Shortcuts (like `bundle i`) for all commands (@amatsuda)
79
+ - Correcly identify missing child dependency in error message
80
+
81
+ Bugfixes:
82
+
83
+ - Allow Windows network share paths with forward slashes (@mtscout6, #1253)
84
+ - Check for rubygems.org credentials so `rake release` doesn't hang (#980)
85
+ - Find cached prerelease gems on rubygems 1.3.x (@dburt, #1202)
86
+ - Fix `bundle install --without` on kiji (@tmm1, #1287)
87
+ - Get rid of warning in ruby 1.9.3 (@smartinez87, #1231)
88
+
89
+ Documentation:
90
+
91
+ - Documentation for `gem ..., :require => false` (@kmayer, #1292)
92
+ - Gems provide "executables", they are rarely also binaries (@fxn, #1242)
93
+
94
+ ## 1.0.15 (June 9, 2011)
95
+
96
+ Features:
97
+
98
+ - Improved Rubygems integration, removed many deprecation notices
99
+
100
+ Bugfixes:
101
+
102
+ - Escape URL arguments to git correctly on Windows (1.0.14 regression)
103
+
104
+ ## 1.0.14 (May 27, 2011)
105
+
106
+ Features:
107
+
108
+ - Rubinius platform :rbx (@rkbodenner)
109
+ - Include gem rake tasks with "require 'bundler/gem_tasks" (@indirect)
110
+ - Include user name and email from git config in new gemspec (@ognevsky)
111
+
112
+ Bugfixes:
113
+
114
+ - Set file permissions after checking out git repos (@tissak)
115
+ - Remove deprecated call to Gem::SourceIndex#all_gems (@mpj)
116
+ - Require the version file in new gemspecs (@rubiii)
117
+ - Allow relative paths from the Gemfile in gems with no gemspec (@mbirk)
118
+ - Install gems that contain 'bundler', e.g. guard-bundler (@hone)
119
+ - Display installed path correctly on Windows (@tadman)
120
+ - Escape quotes in git URIs (@mheffner)
121
+ - Improve Rake 0.9 support (@quix)
122
+ - Handle certain directories already existing (@raggi)
123
+ - Escape filenames containing regex characters (@indirect)
124
+
125
+ ## 1.0.13 (May 4, 2011)
126
+
127
+ Features:
128
+
129
+ - Compatibility with Rubygems master (soon to be v1.8) (@evanphx)
130
+ - Informative error when --path points to a broken symlink
131
+ - Support Rake 0.9 and greater (@e2)
132
+ - Output full errors for non-TTYs e.g. pow (@josh)
133
+
134
+ Bugfixes:
135
+
136
+ - Allow spaces in gem path names for gem tasks (@rslifka)
137
+ - Have cap run bundle install from release_path (@martinjagusch)
138
+ - Quote git refspec so zsh doesn't expand it (@goneflyin)
139
+
140
+ ## 1.0.12 (April 8, 2011)
141
+
142
+ Features:
143
+
144
+ - Add --no-deployment option to `install` for disabling it on dev machines
145
+ - Better error message when git fails and cache is present (@parndt)
146
+ - Honor :bundle_cmd in cap `rake` command (@voidlock, @cgriego)
147
+
148
+ Bugfixes:
149
+
150
+ - Compatibility with Rubygems 1.7 and Rails 2.3 and vendored gems (@evanphx)
151
+ - Fix changing gem order in lock (@gucki)
152
+ - Remove color escape sequences when displaying man pages (@bgreenlee)
153
+ - Fix creating GEM_HOME on both JRuby 1.5 and 1.6 (@nickseiger)
154
+ - Fix gems without a gemspec and directories in bin/ (@epall)
155
+ - Fix --no-prune option for `bundle install` (@cmeiklejohn)
156
+
157
+ ## 1.0.11 (April 1, 2011)
158
+
159
+ Features:
160
+
161
+ - Compatibility with Rubygems 1.6 and 1.7
162
+ - Better error messages when a git command fails
163
+
164
+ Bugfixes:
165
+
166
+ - Don't always update gemspec gems (@carllerche)
167
+ - Remove ivar warnings (@jackdempsey)
168
+ - Fix occasional git failures in zsh (@jonah-carbonfive)
169
+ - Consistent lock for gems with double deps like Cap (@akahn)
170
+
171
+ ## 1.0.10 (February 1, 2011)
172
+
173
+ Bugfixes:
174
+
175
+ - Fix a regression loading YAML gemspecs from :git and :path gems
176
+ - Requires, namespaces, etc. to work with changes in Rubygems 1.5
177
+
178
+ ## 1.0.9 (January 19, 2011)
179
+
180
+ Bugfixes:
181
+
182
+ - Fix a bug where Bundler.require could remove gems from the load
183
+ path. In Rails apps with a default application.rb, this removed
184
+ all gems in groups other than :default and Rails.env.
185
+
186
+ ## 1.0.8 (January 18, 2011)
187
+
188
+ Features:
189
+
190
+ - Allow overriding gemspec() deps with :git deps
191
+ - Add --local option to `bundle update`
192
+ - Ignore Gemfile.lock in newly generated gems
193
+ - Use `less` as help pager instead of `more`
194
+ - Run `bundle exec rake` instead of `rake` in Capistrano tasks
195
+
196
+ Bugfixes:
197
+
198
+ - Fix --no-cache option for `bundle install`
199
+ - Allow Vlad deploys to work without Capistrano gem installed
200
+ - Fix group arguments to `bundle console`
201
+ - Allow groups to be loaded even if other groups were loaded
202
+ - Evaluate gemspec() gemspecs in their directory not the cwd
203
+ - Count on Rake to chdir to the right place in GemHelper
204
+ - Change Pathnames to Strings for MacRuby
205
+ - Check git process exit status correctly
206
+ - Fix some warnings in 1.9.3-trunk (thanks tenderlove)
207
+
208
+ ## 1.0.7 (November 17, 2010)
209
+
210
+ Bugfixes:
211
+
212
+ - Remove Bundler version from the lockfile because it broke
213
+ backwards compatibility with 1.0.0-1.0.5. Sorry. :(
214
+
215
+ ## 1.0.6 (November 16, 2010)
216
+
217
+ Bugfixes:
218
+
219
+ - Fix regression in `update` that caused long/wrong results
220
+ - Allow git gems on other platforms while installing (#579)
221
+
222
+ Features:
223
+
224
+ - Speed up `install` command using various optimizations
225
+ - Significantly increase performance of resolver
226
+ - Use upcoming Rubygems performance improvements (@tmm1)
227
+ - Warn if the lockfile was generated by a newer version
228
+ - Set generated gems' homepage to "", so Rubygems will warn
229
+
230
+ ## 1.0.5 (November 13, 2010)
231
+
232
+ Bugfixes:
233
+
234
+ - Fix regression disabling all operations that employ sudo
235
+
236
+ ## 1.0.4 (November 12, 2010)
237
+
238
+ Bugfixes:
239
+
240
+ - Expand relative :paths from Bundler.root (eg ./foogem)
241
+ - Allow git gems in --without groups while --frozen
242
+ - Allow gem :ref to be a symbol as well as a string
243
+ - Fix exception when Gemfile needs a newer Bundler version
244
+ - Explanation when the current Bundler version conflicts
245
+ - Explicit error message if Gemfile needs newer Bundler
246
+ - Ignore an empty string BUNDLE_GEMFILE
247
+ - Skeleton gemspec now works with older versions of git
248
+ - Fix shell quoting and ref fetching in GemHelper
249
+ - Disable colored output in --deployment
250
+ - Preserve line endings in lock file
251
+
252
+ Features:
253
+
254
+ - Add support for 'mingw32' platform (aka RubyInstaller)
255
+ - Large speed increase when Gemfile.lock is already present
256
+ - Huge speed increase when many (100+) system gems are present
257
+ - Significant expansion of ISSUES, man pages, and docs site
258
+ - Remove Open3 from GemHelper (now it works on Windows™®©)
259
+ - Allow setting roles in built-in cap and vlad tasks
260
+
261
+ ## 1.0.3 (October 15, 2010)
262
+
263
+ Bugfixes:
264
+
265
+ - Use bitwise or in #hash to reduce the chance of overflow
266
+ - `bundle update` now works with :git + :tag updates
267
+ - Record relative :path options in the Gemfile.lock
268
+ - :groups option on gem method in Gemfile now works
269
+ - Add #platform method and :platform option to Gemfile DSL
270
+ - --without now accepts a quoted, space-separated list
271
+ - Installing after --deployment with no lock is now possible
272
+ - Binstubs can now be symlinked
273
+ - Print warning if cache for --local install is missing gems
274
+ - Improve output when installing to a path
275
+ - The tests all pass! Yay!
276
+
277
+ ## 1.0.2 (October 2, 2010)
278
+
279
+ Bugfix:
280
+
281
+ - Actually include the man pages in the gem, so help works
282
+
283
+ ## 1.0.1 (October 1, 2010)
284
+
285
+ Features:
286
+
287
+ - Vlad deployment recipe, `require 'bundler/vlad'`
288
+ - Prettier bundle graphs
289
+ - Improved gem skeleton for `bundle gem`
290
+ - Prompt on file clashes when generating a gem
291
+ - Option to generate binary with gem skeleton
292
+ - Allow subclassing of GemHelper for custom tasks
293
+ - Chdir to gem directory during `bundle open`
294
+
295
+ Bugfixes:
296
+
297
+ - Allow gemspec requirements with a list of versions
298
+ - Accept lockfiles with windows line endings
299
+ - Respect BUNDLE_WITHOUT env var
300
+ - Allow `gem "foo", :platform => :jruby`
301
+ - Specify loaded_from path in fake gemspec
302
+ - Flesh out gem_helper tasks, raise errors correctly
303
+ - Respect RBConfig::CONFIG['ruby_install_name'] in binstubs
304
+
305
+ ## 1.0.0 (August 29, 2010)
306
+
307
+ Features:
308
+
309
+ - You can now define `:bundle_cmd` in the capistrano task
310
+
311
+ Bugfixes:
312
+
313
+ - Various bugfixes to the built-in rake helpers
314
+ - Fix a bug where shortrefs weren't unique enough and were
315
+ therfore colliding
316
+ - Fix a small bug involving checking whether a local git
317
+ clone is up to date
318
+ - Correctly handle explicit '=' dependencies with gems
319
+ pinned to a git source
320
+ - Fix an issue with Windows-generated lockfiles by reading
321
+ and writing the lockfile in binary mode
322
+ - Fix an issue with shelling out to git in Windows by
323
+ using double quotes around paths
324
+ - Detect new Rubygems sources in the Gemfile and update
325
+ the lockfile
326
+
327
+ ## 1.0.0.rc.6 (August 23, 2010)
328
+
329
+ Features:
330
+
331
+ - Much better documentation for most of the commands and Gemfile
332
+ format
333
+
334
+ Bugfixes:
335
+
336
+ - Don't attempt to create directories if they already exist
337
+ - Fix the capistrano task so that it actually runs
338
+ - Update the Gemfile template to reference rubygems.org instead
339
+ of :gemcutter
340
+ - bundle exec should exit with a non zero exit code when the gem
341
+ binary does not exist or the file is not executable.
342
+ - Expand paths in Gemfile relative to the Gemfile and not the current
343
+ working directory.
344
+
345
+ ## 1.0.0.rc.5 (August 10, 2010)
346
+
347
+ Features:
348
+
349
+ - Make the Capistrano task more concise.
350
+
351
+ Bugfixes:
352
+
353
+ - Fix a regression with determining whether or not to use sudo
354
+ - Allow using the --gemfile flag with the --deployment flag
355
+
356
+ ## 1.0.0.rc.4 (August 9, 2010)
357
+
358
+ Features:
359
+
360
+ - `bundle gem NAME` command to generate a new gem with Gemfile
361
+ - Bundle config file location can be specified by BUNDLE_APP_CONFIG
362
+ - Add --frozen to disable updating the Gemfile.lock at runtime
363
+ (default with --deployment)
364
+ - Basic Capistrano task now added as 'bundler/capistrano'
365
+
366
+ Bugfixes:
367
+
368
+ - Multiple bundler process no longer share a tmp directory
369
+ - `bundle update GEM` always updates dependencies of GEM as well
370
+ - Deleting the cache directory no longer causes errors
371
+ - Moving the bundle after installation no longer causes git errors
372
+ - Bundle path is now correctly remembered on a read-only filesystem
373
+ - Gem binaries are installed to Gem.bindir, not #{Gem.dir}/bin
374
+ - Fetch gems from vendor/cache, even without --local
375
+ - Sort lockfile by platform as well as spec
376
+
377
+ ## 1.0.0.rc.3 (August 3, 2010)
378
+
379
+ Features:
380
+
381
+ - Deprecate --production flag for --deployment, since the former
382
+ was causing confusion with the :production group
383
+ - Add --gemfile option to `bundle check`
384
+ - Reduce memory usage of `bundle install` by 2-4x
385
+ - Improve message from `bundle check` under various conditions
386
+ - Better error when a changed Gemfile conflicts with Gemfile.lock
387
+
388
+ Bugfixes:
389
+
390
+ - Create bin/ directory if it is missing, then install binstubs
391
+ - Error nicely on the edge case of a pinned gem with no spec
392
+ - Do not require gems for other platforms
393
+ - Update git sources along with the gems they contain
394
+
395
+ ## 1.0.0.rc.2 (July 29, 2010)
396
+
397
+ - `bundle install path` was causing confusion, so we now print
398
+ a clarifying warning. The preferred way to install to a path
399
+ (which will not print the warning) is
400
+ `bundle install --path path/to/install`.
401
+ - `bundle install --system` installs to the default system
402
+ location ($BUNDLE_PATH or $GEM_HOME) even if you previously
403
+ used `bundle install --path`
404
+ - completely remove `--disable-shared-gems`. If you install to
405
+ system, you will not be isolated, while if you install to
406
+ another path, you will be isolated from gems installed to
407
+ the system. This was mostly an internal option whose naming
408
+ and semantics were extremely confusing.
409
+ - Add a `--production` option to `bundle install`:
410
+ - by default, installs to `vendor/bundle`. This can be
411
+ overridden with the `--path` option
412
+ - uses `--local` if `vendor/cache` is found. This will
413
+ guarantee that Bundler does not attempt to connect to
414
+ Rubygems and will use the gems cached in `vendor/cache`
415
+ instead
416
+ - Raises an exception if a Gemfile.lock is not found
417
+ - Raises an exception if you modify your Gemfile in development
418
+ but do not check in an updated Gemfile.lock
419
+ - Fixes a bug where switching a source from Rubygems to git
420
+ would always say "the git source is not checked out" when
421
+ running `bundle install`
422
+
423
+ NOTE: We received several reports of "the git source has not
424
+ been checked out. Please run bundle install". As far as we
425
+ can tell, these problems have two possible causes:
426
+
427
+ 1. `bundle install ~/.bundle` in one user, but actually running
428
+ the application as another user. Never install gems to a
429
+ directory scoped to a user (`~` or `$HOME`) in deployment.
430
+ 2. A bug that happened when changing a gem to a git source.
431
+
432
+ To mitigate several common causes of `(1)`, please use the
433
+ new `--production` flag. This flag is simply a roll-up of
434
+ the best practices we have been encouraging people to use
435
+ for deployment.
436
+
437
+ If you want to share gems across deployments, and you use
438
+ Capistrano, symlink release_path/current/vendor/bundle to
439
+ release_path/shared/bundle. This will keep deployments
440
+ snappy while maintaining the benefits of clean, deploy-time
441
+ isolation.
442
+
443
+ ## 1.0.0.rc.1 (July 26, 2010)
444
+
445
+ - Fixed a bug with `bundle install` on multiple machines and git
446
+
447
+ ## 1.0.0.beta.10 (July 25, 2010)
448
+
449
+ - Last release before 1.0.0.rc.1
450
+ - Added :mri as a valid platform (platforms :mri { gem "ruby-debug" })
451
+ - Fix `bundle install` immediately after modifying the :submodule option
452
+ - Don't write to Gemfile.lock if nothing has changed, fixing situations
453
+ where bundle install was run with a different user than the app
454
+ itself
455
+ - Fix a bug where other platforms were being wiped on `bundle update`
456
+ - Don't ask for root password on `bundle install` if not needed
457
+ - Avoid setting `$GEM_HOME` where not needed
458
+ - First solid pass of `bundle config`
459
+ - Add build options
460
+ - `bundle config build.mysql --with-mysql-config=/path/to/config`
461
+
462
+ ## 1.0.0.beta.9 (July 21, 2010)
463
+
464
+ - Fix install failure when switching from a path to git source
465
+ - Fix `bundle exec bundle *` in a bundle with --disable-shared-gems
466
+ - Fix `bundle *` from inside a bundle with --disable-shared-gem
467
+ - Shim Gem.refresh. This is used by Unicorn
468
+ - Fix install failure when a path's dependencies changed
469
+
470
+ ## 1.0.0.beta.8 (July 20, 2010)
471
+
472
+ - Fix a Beta 7 bug involving Ruby 1.9
473
+
474
+ ## 1.0.0.beta.7 (July 20, 2010, yanked)
475
+
476
+ - Running `bundle install` twice in a row with a git source always crashed
477
+
478
+ ## 1.0.0.beta.6 (July 20, 2010, yanked)
479
+
480
+ - Create executables with bundle install --binstubs
481
+ - You can customize the location (default is app/bin) with --binstubs other/location
482
+ - Fix a bug where the Gemfile.lock would be deleted even if the update was exited
483
+ - Fix a bug where cached gems for other platforms were sometimes deleted
484
+ - Clean up output when nothing was deleted from cache (it previously said
485
+ "Removing outdated gems ...")
486
+ - Improve performance of bundle install if the git gem was already checked out,
487
+ and the revision being used already exists locally
488
+ - Fix bundle show bundler in some cases
489
+ - Fix bugs with bundle update
490
+ - Don't ever run git commands at runtime (fixes a number of common passenger issues)
491
+ - Fixes an obscure bug where switching the source of a gem could fail to correctly
492
+ change the source of its dependencies
493
+ - Support multiple version dependencies in the Gemfile
494
+ (gem "rails", ">= 3.0.0.beta1", "<= 3.0.0")
495
+ - Raise an exception for ambiguous uses of multiple declarations of the same gem
496
+ (for instance, with different versions or sources).
497
+ - Fix cases where the same dependency appeared several times in the Gemfile.lock
498
+ - Fix a bug where require errors were being swallowed during Bundler.require
499
+
500
+ ## 1.0.0.beta.1
501
+
502
+ - No `bundle lock` command. Locking happens automatically on install or update
503
+ - No .bundle/environment.rb. Require 'bundler/setup' instead.
504
+ - $BUNDLE_HOME defaults to $GEM_HOME instead of ~/.bundle
505
+ - Remove lockfiles generated by 0.9
506
+
507
+ ## 0.9.26
508
+
509
+ Features:
510
+
511
+ - error nicely on incompatible 0.10 lockfiles
512
+
513
+ ## 0.9.25 (May 3, 2010)
514
+
515
+ Bugfixes:
516
+
517
+ - explicitly coerce Pathname objects to Strings for Ruby 1.9
518
+ - fix some newline weirdness in output from install command
519
+
520
+ ## 0.9.24 (April 22, 2010)
521
+
522
+ Features:
523
+
524
+ - fetch submodules for git sources
525
+ - limit the bundled version of bundler to the same as the one installing
526
+ - force relative paths in git gemspecs to avoid raising Gem::NameTooLong
527
+ - serialize GemCache sources correctly, so locking works
528
+ - raise Bundler::GemNotFound instead of calling exit! inside library code
529
+ - Rubygems 1.3.5 compatibility for the adventurous, not supported by me :)
530
+
531
+ Bugfixes:
532
+
533
+ - don't try to regenerate environment.rb if it is read-only
534
+ - prune outdated gems with the platform "ruby"
535
+ - prune cache without errors when there are directories or non-gem files
536
+ - don't re-write environment.rb if running after it has been loaded
537
+ - do not monkeypatch Specification#load_paths twice when inside a bundle
538
+
539
+ ## 0.9.23 (April 20, 2010)
540
+
541
+ Bugfixes:
542
+
543
+ - cache command no longer prunes gems created by an older rubygems version
544
+ - cache command no longer prunes gems that are for other platforms
545
+
546
+ ## 0.9.22 (April 20, 2010)
547
+
548
+ Features:
549
+
550
+ - cache command now prunes stale .gem files from vendor/cache
551
+ - init --gemspec command now generates development dependencies
552
+ - handle Polyglot's changes to Kernel#require with Bundler::ENV_LOADED (#287)
553
+ - remove .gem files generated after installing a gem from a :path (#286)
554
+ - improve install/lock messaging (#284)
555
+
556
+ Bugfixes:
557
+
558
+ - ignore cached gems that are for another platform (#288)
559
+ - install Windows gems that have no architecture set, like rcov (#277)
560
+ - exec command while locked now includes the bundler lib in $LOAD_PATH (#293)
561
+ - fix the `rake install` task
562
+ - add GemspecError so it can be raised without (further) error (#292)
563
+ - create a parent directory before cloning for git 1.5 compatibility (#285)
564
+
565
+ ## 0.9.21 (April 16, 2010)
566
+
567
+ Bugfixes:
568
+
569
+ - don't raise 'omg wtf' when lockfile is outdated
570
+
571
+ ## 0.9.20 (April 15, 2010)
572
+
573
+ Features:
574
+
575
+ - load YAML format gemspecs
576
+ - no backtraces when calling Bundler.setup if gems are missing
577
+ - no backtraces when trying to exec a file without the executable bit
578
+
579
+ Bugfixes:
580
+
581
+ - fix infinite recursion in Bundler.setup after loading a bundled Bundler gem
582
+ - request install instead of lock when env.rb is out of sync with Gemfile.lock
583
+
584
+ ## 0.9.19 (April 12, 2010)
585
+
586
+ Features:
587
+
588
+ - suggest `bundle install --relock` when the Gemfile has changed (#272)
589
+ - source support for Rubygems servers without prerelease gem indexes (#262)
590
+
591
+ Bugfixes:
592
+
593
+ - don't set up all groups every time Bundler.setup is called while locked (#263)
594
+ - fix #full_gem_path for git gems while locked (#268)
595
+ - eval gemspecs at the top level, not inside the Bundler class (#269)
596
+
597
+
598
+ ## 0.9.18 (April 8, 2010)
599
+
600
+ Features:
601
+
602
+ - console command that runs irb with bundle (and optional group) already loaded
603
+
604
+ Bugfixes:
605
+
606
+ - Bundler.setup now fully disables system gems, even when unlocked (#266, #246)
607
+ - fixes Yard, which found plugins in Gem.source_index that it could not load
608
+ - makes behaviour of `Bundler.require` consistent between locked and unlocked loads
609
+
610
+ ## 0.9.17 (April 7, 2010)
611
+
612
+ Features:
613
+
614
+ - Bundler.require now calls Bundler.setup automatically
615
+ - Gem::Specification#add_bundler_dependencies added for gemspecs
616
+
617
+ Bugfixes:
618
+
619
+ - Gem paths are not longer duplicated while loading bundler
620
+ - exec no longer duplicates RUBYOPT if it is already set correctly
621
+
622
+ ## 0.9.16 (April 3, 2010)
623
+
624
+ Features:
625
+
626
+ - exit gracefully on INT signal
627
+ - resolver output now indicates whether remote sources were checked
628
+ - print error instead of backtrace when exec cannot find a binary (#241)
629
+
630
+ Bugfixes:
631
+
632
+ - show, check, and open commands work again while locked (oops)
633
+ - show command for git gems
634
+ - outputs branch names other than master
635
+ - gets the correct sha from the checkout
636
+ - doesn't print sha twice if :ref is set
637
+ - report errors from bundler/setup.rb without backtraces (#243)
638
+ - fix Gem::Spec#git_version to not error on unloaded specs
639
+ - improve deprecation, Gemfile, and command error messages (#242)
640
+
641
+ ## 0.9.15 (April 1, 2010)
642
+
643
+ Features:
644
+
645
+ - use the env_file if possible instead of doing a runtime resolve
646
+ - huge speedup when calling Bundler.setup while locked
647
+ - ensures bundle exec is fast while locked
648
+ - regenerates env_file if it was generated by an older version
649
+ - update cached/packed gems when you update gems via bundle install
650
+
651
+ Bugfixes:
652
+
653
+ - prep for Rubygems 1.3.7 changes
654
+ - install command now pulls git branches correctly (#211)
655
+ - raise errors on invalid options in the Gemfile
656
+
657
+ ## 0.9.14 (March 30, 2010)
658
+
659
+ Features:
660
+
661
+ - install command output vastly improved
662
+ - installation message now accurate, with 'using' and 'installing'
663
+ - bundler gems no longer listed as 'system gems'
664
+ - show command output now includes sha and branch name for git gems
665
+ - init command now takes --gemspec option for bootstrapping gem Gemfiles
666
+ - Bundler.with_clean_env for shelling out to ruby scripts
667
+ - show command now aliased as 'list'
668
+ - VISUAL env var respected for GUI editors
669
+
670
+ Bugfixes:
671
+
672
+ - exec command now finds binaries from gems with no gemspec
673
+ - note source of Gemfile resolver errors
674
+ - don't blow up if git urls are changed
675
+
676
+ ## 0.9.13 (March 23, 2010)
677
+
678
+ Bugfixes:
679
+
680
+ - exec command now finds binaries from gems installed via :path
681
+ - gem dependencies are pulled in even if their type is nil
682
+ - paths with spaces have double-quotes to work on Windows
683
+ - set GEM_PATH in environment.rb so generators work with Rails 2
684
+
685
+ ## 0.9.12 (March 17, 2010)
686
+
687
+ - refactoring, internal cleanup, more solid specs
688
+
689
+ Features:
690
+
691
+ - check command takes a --without option
692
+ - check command exits 1 if the check fails
693
+
694
+ Bugfixes:
695
+
696
+ - perform a topological sort on resolved gems (#191)
697
+ - gems from git work even when paths or repos have spaces (#196)
698
+ - Specification#loaded_from returns a String, like Gem::Specification (#197)
699
+ - specs eval from inside the gem directory, even when locked
700
+ - virtual gemspecs are now saved in environment.rb for use when loading
701
+ - unify the Installer's local index and the runtime index (#204)
702
+
703
+ ## 0.9.11 (March 9, 2010)
704
+
705
+ - added roadmap with future development plans
706
+
707
+ Features:
708
+
709
+ - install command can take the path to the gemfile with --gemfile (#125)
710
+ - unknown command line options are now rejected (#163)
711
+ - exec command hugely sped up while locked (#177)
712
+ - show command prints the install path if you pass it a gem name (#148)
713
+ - open command edits an installed gem with $EDITOR (#148)
714
+ - Gemfile allows assigning an array of groups to a gem (#114)
715
+ - Gemfile allows :tag option on :git sources
716
+ - improve backtraces when a gemspec is invalid
717
+ - improve performance by installing gems from the cache if present
718
+
719
+ Bugfixes:
720
+
721
+ - normalize parameters to Bundler.require (#153)
722
+ - check now checks installed gems rather than cached gems (#162)
723
+ - don't update the gem index when installing after locking (#169)
724
+ - bundle parenthesises arguments for 1.8.6 (#179)
725
+ - gems can now be assigned to multiple groups without problems (#135)
726
+ - fix the warning when building extensions for a gem from git with Rubygems 1.3.6
727
+ - fix a Dependency.to_yaml error due to accidentally including sources and groups
728
+ - don't reinstall packed gems
729
+ - fix gems with git sources that are private repositories
730
+
731
+ ## 0.9.10 (March 1, 2010)
732
+
733
+ - depends on Rubygems 1.3.6
734
+
735
+ Bugfixes:
736
+
737
+ - support locking after install --without
738
+ - don't reinstall gems from the cache if they're already in the bundle
739
+ - fixes for Ruby 1.8.7 and 1.9
740
+
741
+ ## 0.9.9 (February 25, 2010)
742
+
743
+ Bugfixes:
744
+
745
+ - don't die if GEM_HOME is an empty string
746
+ - fixes for Ruby 1.8.6 and 1.9
747
+
748
+ ## 0.9.8 (February 23, 2010)
749
+
750
+ Features:
751
+
752
+ - pack command which both caches and locks
753
+ - descriptive error if a cached gem is missing
754
+ - remember the --without option after installing
755
+ - expand paths given in the Gemfile via the :path option
756
+ - add block syntax to the git and group options in the Gemfile
757
+ - support gems with extensions that don't admit they depend on rake
758
+ - generate gems using gem build gemspec so git gems can have native extensions
759
+ - print a useful warning if building a gem fails
760
+ - allow manual configuration via BUNDLE_PATH
761
+
762
+ Bugfixes:
763
+
764
+ - eval gemspecs in the gem directory so relative paths work
765
+ - make default spec for git sources valid
766
+ - don't reinstall gems that are already packed
767
+
768
+ ## 0.9.7 (February 17, 2010)
769
+
770
+ Bugfixes:
771
+
772
+ - don't say that a gem from an excluded group is "installing"
773
+ - improve crippling rubygems in locked scenarios
774
+
775
+ ## 0.9.6 (February 16, 2010)
776
+
777
+ Features:
778
+
779
+ - allow String group names
780
+ - a number of improvements in the documentation and error messages
781
+
782
+ Bugfixes:
783
+
784
+ - set SourceIndex#spec_dirs to solve a problem involving Rails 2.3 in unlocked mode
785
+ - ensure Rubygems is fully loaded in Ruby 1.9 before patching it
786
+ - fix `bundle install` for a locked app without a .bundle directory
787
+ - require gems in the order that the resolver determines
788
+ - make the tests platform agnostic so we can confirm that they're green on JRuby
789
+ - fixes for Ruby 1.9
790
+
791
+ ## 0.9.5 (Feburary 12, 2010)
792
+
793
+ Features:
794
+
795
+ - added support for :path => "relative/path"
796
+ - added support for older versions of git
797
+ - added `bundle install --disable-shared-gems`
798
+ - Bundler.require fails silently if a library does not have a file on the load path with its name
799
+ - Basic support for multiple rubies by namespacing the default bundle path using the version and engine
800
+
801
+ Bugfixes:
802
+
803
+ - if the bundle is locked and .bundle/environment.rb is not present when Bundler.setup is called, generate it
804
+ - same if it's not present with `bundle check`
805
+ - same if it's not present with `bundle install`