bundler 1.15.0.pre.2 → 1.15.0.pre.3

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.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fc0514820479e02853769a88cea9f78ddfb91146
4
- data.tar.gz: 0c7736db509279645483b3187f7b238906b982b5
3
+ metadata.gz: e9686bfd491be95a83088cbad46dfb994c7e81e6
4
+ data.tar.gz: 6a258bf2b5a72d9f8cf022d8a0437c4031c68b35
5
5
  SHA512:
6
- metadata.gz: 4330bf16e081ad1e568afb8b6603e603bbc6029c986dc47c92c0661468afb4b70ea82590bef0d63abf39c02848f2ac3549bb96035b061df6c34b2245f7e3f31e
7
- data.tar.gz: 02abbb9bb724329f63e3a90f3547ece0ff3f196add05401c371dc536b9efa9149860dd856d20a4ca336a877207496c64d533558b613b7ade4727073266cb7482
6
+ metadata.gz: 5290fc10956b9399f4723b23af050f197cf1b15f6f793652645182ddec047d9268098f8e1479bac2e5f23ea53a90f68eda5b56961c61d19a252b38244d335c6f
7
+ data.tar.gz: b249ee0e8cd96a45e4fc49e2e65b9668d2d96f291ff129763274fe55e87885e462b9f6fff011a6b9bb51a3314110faf51e60a52398d65f6bc226973f025c4447
@@ -122,6 +122,9 @@ Metrics/CyclomaticComplexity:
122
122
  Metrics/ParameterLists:
123
123
  Enabled: false
124
124
 
125
+ Metrics/BlockLength:
126
+ Enabled: false
127
+
125
128
  # It will be obvious which code is complex, Rubocop should only lint simple
126
129
  # rules for us.
127
130
  Metrics/PerceivedComplexity:
@@ -1,3 +1,13 @@
1
+ ## 1.15.0.pre.3 (2017-04-30)
2
+
3
+ Bugfixes:
4
+
5
+ - avoid redundant blank lines in the readme generated by `bundle gem` (@koic)
6
+ - ensure that `open-uri` is not loaded after `bundle exec` (@segiddins)
7
+ - print a helpful error message when an activated default gem conflicts with
8
+ a gem in the gemfile (@segiddins)
9
+ - only shorten `ref` option for git gems when it is a SHA (#5620, @segiddins)
10
+
1
11
  ## 1.15.0.pre.2 (2017-04-23)
2
12
 
3
13
  Bugfixes:
@@ -14,7 +14,7 @@ Individuals asked to stop any harassing behavior are expected to comply immediat
14
14
 
15
15
  Maintainers, including the core team, are also subject to the anti-harassment policy.
16
16
 
17
- If anyone engages in abusive, harassing, or otherwise unacceptable behavior, including maintainers, we may take appropriate action, up to and including warning the offender, deletion of comments, removal from the project’s codebase and communication systems, and escalation to Github support.
17
+ If anyone engages in abusive, harassing, or otherwise unacceptable behavior, including maintainers, we may take appropriate action, up to and including warning the offender, deletion of comments, removal from the project’s codebase and communication systems, and escalation to GitHub support.
18
18
 
19
19
  If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of [the core team](http://bundler.io/contributors.html) or [email the core team](mailto:team@bundler.io) immediately.
20
20
 
data/Rakefile CHANGED
@@ -70,7 +70,7 @@ namespace :spec do
70
70
  sh "sudo apt-get install graphviz -y 2>&1 | tail -n 2"
71
71
 
72
72
  # Install the gems with a consistent version of RubyGems
73
- sh "gem update --system 2.6.4"
73
+ sh "gem update --system 2.6.11"
74
74
 
75
75
  $LOAD_PATH.unshift("./spec")
76
76
  require "support/rubygems_ext"
@@ -18,6 +18,15 @@ Gem::Specification.new do |s|
18
18
  s.summary = "The best way to manage your application's dependencies"
19
19
  s.description = "Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably"
20
20
 
21
+ if s.respond_to?(:metadata=)
22
+ s.metadata = {
23
+ "bug_tracker_uri" => "http://github.com/bundler/bundler/issues",
24
+ "changelog_uri" => "https://github.com/bundler/bundler/blob/master/CHANGELOG.md",
25
+ "homepage_uri" => "https://bundler.io/",
26
+ "source_code_uri" => "http://github.com/bundler/bundler/",
27
+ }
28
+ end
29
+
21
30
  s.required_ruby_version = ">= 1.8.7"
22
31
  s.required_rubygems_version = ">= 1.3.6"
23
32
 
@@ -6,7 +6,7 @@ It would be tremendously helpful to have more people answering questions about B
6
6
 
7
7
  Additional documentation and explanation is always helpful, too. If you have any suggestions for the Bundler website [bundler.io](http://bundler.io), we would absolutely love it if you opened an issue or pull request on the [bundler-site](https://github.com/bundler/bundler-site) repository.
8
8
 
9
- Sharing your experiences and discoveries by writing them up is a valuable way to help others who have similar problems or experiences in the future. You can write a blog post, create an example and commit it to Github, take screenshots, or make videos.
9
+ Sharing your experiences and discoveries by writing them up is a valuable way to help others who have similar problems or experiences in the future. You can write a blog post, create an example and commit it to GitHub, take screenshots, or make videos.
10
10
 
11
11
  Publishing examples of how Bundler is used helps everyone, and we’ve discovered that people already use it in ways that we never imagined when we were writing it. If you’re still not sure what to write about, there are also several projects doing interesting things based on Bundler. They could probably use publicity too.
12
12
 
@@ -8,7 +8,7 @@ Before you submit a pull request, please remember to do the following:
8
8
 
9
9
  ## Code formatting
10
10
 
11
- Make sure the code formatting and styling adheres to the guidelines. We use Rubocop for this. Lack of formatting adherence will result in automatic Travis build failures.
11
+ Make sure the code formatting and styling adheres to the guidelines. We use RuboCop for this. Lack of formatting adherence will result in automatic Travis build failures.
12
12
 
13
13
  $ bin/rubocop -a
14
14
 
@@ -28,7 +28,7 @@ Ex. For a pull request that changes something with `bundle update`, you might ru
28
28
  ## Commit messages
29
29
 
30
30
  Please ensure that the commit messages included in the pull request __do not__ have the following:
31
- - `@tag` Github user or team references (ex. `@indirect` or `@bundler/core`)
31
+ - `@tag` GitHub user or team references (ex. `@indirect` or `@bundler/core`)
32
32
  - `#id` references to issues or pull requests (ex. `#43` or `bundler/bundler-site#12`)
33
33
 
34
34
  If you want to use these mechanisms, please instead include them in the pull request description. This prevents multiple notifications or references being created on commit rebases or pull request/branch force pushes.
@@ -4,7 +4,6 @@ require "bundler/vendored_thor"
4
4
 
5
5
  module Bundler
6
6
  class CLI < Thor
7
- include Thor::Actions
8
7
  AUTO_INSTALL_CMDS = %w(show binstubs outdated exec open console licenses clean).freeze
9
8
 
10
9
  def self.start(*)
@@ -2,6 +2,11 @@
2
2
  require "pathname"
3
3
 
4
4
  module Bundler
5
+ class CLI
6
+ Bundler.require_thor_actions
7
+ include Thor::Actions
8
+ end
9
+
5
10
  class CLI::Gem
6
11
  TEST_FRAMEWORK_VERSIONS = {
7
12
  "rspec" => "3.0",
@@ -13,7 +18,10 @@ module Bundler
13
18
  def initialize(options, gem_name, thor)
14
19
  @options = options
15
20
  @gem_name = resolve_name(gem_name)
21
+
16
22
  @thor = thor
23
+ thor.behavior = :invoke
24
+ thor.destination_root = nil
17
25
 
18
26
  @name = @gem_name
19
27
  @target = SharedHelpers.pwd.join(gem_name)
@@ -189,7 +189,7 @@ module Bundler
189
189
  end
190
190
 
191
191
  def github(repo, options = {})
192
- raise ArgumentError, "Github sources require a block" unless block_given?
192
+ raise ArgumentError, "GitHub sources require a block" unless block_given?
193
193
  github_uri = @git_sources["github"].call(repo)
194
194
  git_options = normalize_hash(options).merge("uri" => github_uri)
195
195
  git_source = @sources.add_git_source(git_options)
@@ -74,12 +74,16 @@ module Bundler
74
74
  def spec_missing_extensions?(spec, default = true)
75
75
  return spec.missing_extensions? if spec.respond_to?(:missing_extensions?)
76
76
 
77
- return false if spec.respond_to?(:default_gem?) && spec.default_gem?
77
+ return false if spec_default_gem?(spec)
78
78
  return false if spec.extensions.empty?
79
79
 
80
80
  default
81
81
  end
82
82
 
83
+ def spec_default_gem?(spec)
84
+ spec.respond_to?(:default_gem?) && spec.default_gem?
85
+ end
86
+
83
87
  def stub_set_spec(stub, spec)
84
88
  stub.instance_variable_set(:@spec, spec)
85
89
  end
@@ -29,18 +29,7 @@ module Bundler
29
29
  raise GemNotFound, "#{spec.full_name} is missing. Run `bundle install` to get it."
30
30
  end
31
31
 
32
- if (activated_spec = Bundler.rubygems.loaded_specs(spec.name)) && activated_spec.version != spec.version
33
- e = Gem::LoadError.new "You have already activated #{activated_spec.name} #{activated_spec.version}, " \
34
- "but your Gemfile requires #{spec.name} #{spec.version}. Prepending " \
35
- "`bundle exec` to your command may solve this."
36
- e.name = spec.name
37
- if e.respond_to?(:requirement=)
38
- e.requirement = Gem::Requirement.new(spec.version.to_s)
39
- else
40
- e.version_requirement = Gem::Requirement.new(spec.version.to_s)
41
- end
42
- raise e
43
- end
32
+ check_for_activated_spec!(spec)
44
33
 
45
34
  Bundler.rubygems.mark_loaded(spec)
46
35
  spec.load_paths.reject {|path| $LOAD_PATH.include?(path) }
@@ -305,5 +294,27 @@ module Bundler
305
294
 
306
295
  output
307
296
  end
297
+
298
+ def check_for_activated_spec!(spec)
299
+ return unless activated_spec = Bundler.rubygems.loaded_specs(spec.name)
300
+ return if activated_spec.version == spec.version
301
+
302
+ suggestion = if Bundler.rubygems.spec_default_gem?(activated_spec)
303
+ "Since #{spec.name} is a default gem, you can either remove your dependency on it" \
304
+ " or try updating to a newer version of bundler that supports #{spec.name} as a default gem."
305
+ else
306
+ "Prepending `bundle exec` to your command may solve this."
307
+ end
308
+
309
+ e = Gem::LoadError.new "You have already activated #{activated_spec.name} #{activated_spec.version}, " \
310
+ "but your Gemfile requires #{spec.name} #{spec.version}. #{suggestion}"
311
+ e.name = spec.name
312
+ if e.respond_to?(:requirement=)
313
+ e.requirement = Gem::Requirement.new(spec.version.to_s)
314
+ else
315
+ e.version_requirement = Gem::Requirement.new(spec.version.to_s)
316
+ end
317
+ raise e
318
+ end
308
319
  end
309
320
  end
@@ -61,8 +61,12 @@ module Bundler
61
61
  def to_s
62
62
  at = if local?
63
63
  path
64
- elsif options["ref"]
65
- shortref_for_display(options["ref"])
64
+ elsif user_ref = options["ref"]
65
+ if ref =~ /\A[a-z0-9]{4,}\z/i
66
+ shortref_for_display(user_ref)
67
+ else
68
+ user_ref
69
+ end
66
70
  else
67
71
  ref
68
72
  end
@@ -39,8 +39,8 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/<%= co
39
39
 
40
40
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
41
41
  <% end -%>
42
-
43
42
  <% if config[:coc] -%>
43
+
44
44
  ## Code of Conduct
45
45
 
46
46
  Everyone interacting in the <%= config[:constant_name] %> project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/<%= config[:github_username] %>/<%= config[:name] %>/blob/master/CODE_OF_CONDUCT.md).
@@ -1,4 +1,7 @@
1
1
  # frozen_string_literal: true
2
- module Bundler; end
2
+ module Bundler
3
+ def self.require_thor_actions
4
+ Kernel.send(:require, "bundler/vendor/thor/lib/thor/actions")
5
+ end
6
+ end
3
7
  require "bundler/vendor/thor/lib/thor"
4
- require "bundler/vendor/thor/lib/thor/actions"
@@ -7,7 +7,7 @@ module Bundler
7
7
  # We're doing this because we might write tests that deal
8
8
  # with other versions of bundler and we are unsure how to
9
9
  # handle this better.
10
- VERSION = "1.15.0.pre.2" unless defined?(::Bundler::VERSION)
10
+ VERSION = "1.15.0.pre.3" unless defined?(::Bundler::VERSION)
11
11
 
12
12
  def self.overwrite_loaded_gem_version
13
13
  begin
@@ -0,0 +1,29 @@
1
+ bundle-add(1) -- Add gem to the Gemfile and run bundle install
2
+ ================================================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ `bundle add` <GEM_NAME> [--group=GROUP] [--version=VERSION] [--source=SOURCE]
7
+
8
+ ## DESCRIPTION
9
+ Adds the named gem to the Gemfile and run `bundle install`.
10
+
11
+ Example:
12
+
13
+ bundle add rails
14
+
15
+ bundle add rails --version "< 3.0, > 1.1"
16
+
17
+ bundle add rails --version "~> 5.0.0" --source "https://gems.example.com" --group "development"
18
+
19
+ bundle add rails --group "development, test"
20
+
21
+ ## OPTIONS
22
+ * `--version`, `-v`:
23
+ Specify version requirements(s) for the added gem.
24
+
25
+ * `--group`, `-g`:
26
+ Specify the group(s) for the added gem. Multiple groups should be separated by commas.
27
+
28
+ * `--source`, , `-s`:
29
+ Specify the source for the added gem.
@@ -0,0 +1,13 @@
1
+ bundle-pristine(1) -- Restores installed gems to their pristine condition
2
+ ===========================================================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ `bundle pristine`
7
+
8
+ ## DESCRIPTION
9
+
10
+ `pristine` restores the installed gems in the bundle to their pristine condition using the local gem
11
+ cache from RubyGems. For git gems - a forced checkout will be performed.
12
+
13
+ Note the Bundler gem cannot be restored to its original state with `pristine`.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0.pre.2
4
+ version: 1.15.0.pre.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - André Arko
@@ -17,7 +17,7 @@ authors:
17
17
  autorequire:
18
18
  bindir: exe
19
19
  cert_chain: []
20
- date: 2017-04-23 00:00:00.000000000 Z
20
+ date: 2017-05-01 00:00:00.000000000 Z
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency
23
23
  name: automatiek
@@ -357,6 +357,9 @@ files:
357
357
  - lib/bundler/vlad.rb
358
358
  - lib/bundler/worker.rb
359
359
  - lib/bundler/yaml_serializer.rb
360
+ - man/bundle-add.1
361
+ - man/bundle-add.1.txt
362
+ - man/bundle-add.ronn
360
363
  - man/bundle-binstubs.1
361
364
  - man/bundle-binstubs.1.txt
362
365
  - man/bundle-binstubs.ronn
@@ -402,6 +405,9 @@ files:
402
405
  - man/bundle-platform.1
403
406
  - man/bundle-platform.1.txt
404
407
  - man/bundle-platform.ronn
408
+ - man/bundle-pristine.1
409
+ - man/bundle-pristine.1.txt
410
+ - man/bundle-pristine.ronn
405
411
  - man/bundle-show.1
406
412
  - man/bundle-show.1.txt
407
413
  - man/bundle-show.ronn
@@ -422,7 +428,11 @@ files:
422
428
  homepage: http://bundler.io
423
429
  licenses:
424
430
  - MIT
425
- metadata: {}
431
+ metadata:
432
+ bug_tracker_uri: http://github.com/bundler/bundler/issues
433
+ changelog_uri: https://github.com/bundler/bundler/blob/master/CHANGELOG.md
434
+ homepage_uri: https://bundler.io/
435
+ source_code_uri: http://github.com/bundler/bundler/
426
436
  post_install_message:
427
437
  rdoc_options: []
428
438
  require_paths:
@@ -439,7 +449,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
439
449
  version: 1.3.6
440
450
  requirements: []
441
451
  rubyforge_project:
442
- rubygems_version: 2.6.11
452
+ rubygems_version: 2.6.12
443
453
  signing_key:
444
454
  specification_version: 4
445
455
  summary: The best way to manage your application's dependencies