update_dependencies 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,4 +6,4 @@ require 'rubygems'
6
6
  require 'bundler'
7
7
  require 'update_dependencies'
8
8
 
9
- UpdateDependencies.new(ARGV[0]).run_dependencies
9
+ puts UpdateDependencies.new(ARGV[0]).run_dependencies
@@ -7,10 +7,10 @@ module Bundler
7
7
  end
8
8
 
9
9
  class UpdateDependencies
10
- attr_reader :dependency_gemfile
11
- def initialize(path_to_gemfile)
10
+ attr_reader :dependency_gemfile, :gemfile
11
+ def initialize(path_to_gemfile=nil)
12
12
  raise "Needs a location of a dependent Gemfile" unless path_to_gemfile
13
- puts "source 'http://rubygems.org' \n\n"
13
+ @gemfile = "source 'http://rubygems.org' \n\n"
14
14
  @dependency_gemfile = Bundler::Dsl.new.eval_gemfile(path_to_gemfile)
15
15
  end
16
16
 
@@ -23,6 +23,7 @@ class UpdateDependencies
23
23
  end
24
24
  end
25
25
  end
26
+ gemfile
26
27
  end
27
28
 
28
29
  private
@@ -32,28 +33,32 @@ class UpdateDependencies
32
33
  end
33
34
 
34
35
  def ref(source)
35
- source.ref == "master" ? "" : ", ref => '" + source.ref + "'"
36
+ source.ref == "master" ? "" : ", :ref => '" + source.ref + "'"
36
37
  end
37
38
 
38
39
  def in_group(group)
39
- puts "\ngroup :" + group + " do" unless group == "default"
40
+ gemfile << "\ngroup :" + group + " do\n" unless group == "default"
40
41
  yield
41
- puts "end" unless group == "default"
42
+ gemfile << "end\n\n" unless group == "default"
42
43
  end
43
44
 
44
45
  def locked_gemfile
45
46
  @locked ||= Bundler::LockfileParser.new(Bundler.read_file("Gemfile.lock"))
46
47
  end
47
48
 
49
+ def source_version(source)
50
+ source.version ? ", '" + source.version + "'" : ""
51
+ end
52
+
48
53
  def print_dependent_sources(gem_source, group)
49
54
  locked_gemfile.sources.select {|s| gem_source.name == s.name}.
50
- map {|s| puts spaces(group) + "gem '" + s.name + "'" + required(gem_source) + ", :git => '" + s.uri + "'" + ref(s)}
55
+ map {|s| gemfile << spaces(group) + "gem '" + s.name + "'" + source_version(s) + required(gem_source) + ", :git => '" + s.uri + "'" + ref(s) + "\n"}
51
56
  end
52
57
 
53
58
  def print_version_sources(gem_source, group)
54
59
  locked_gemfile.specs.reject {|s| locked_gemfile.sources.map(&:name).include?(s.name)}.
55
60
  select {|s| s.name == gem_source.name}.
56
- map {|s| puts spaces(group) + "gem '" + s.name + "', '" + s.version.version + "'" + required(gem_source)}
61
+ map {|s| gemfile << spaces(group) + "gem '" + s.name + "', '" + s.version.version + "'" + required(gem_source) + "\n"}
57
62
  end
58
63
 
59
64
  def required(source)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: update_dependencies
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,9 +9,10 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-21 00:00:00.000000000 Z
12
+ date: 2013-01-22 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Updates dependencies of gemfile from gemfile.lock
14
+ description: Prints a new Gemfile with the gem versions matched to the independent
15
+ gemfile.lock
15
16
  email:
16
17
  - dougdroper@gmail.com
17
18
  executables: