jbundler 0.5.4 → 0.5.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 84995673fbb7c47e7f3ad1b2b8c6973dc97feb43
4
+ data.tar.gz: 002ded9ef8e351737ac6e0202beec5fab700f643
5
+ SHA512:
6
+ metadata.gz: 63904f8bb1cc95824bbe7d57deeedc7edb510ec17dd0a2aea2cdf7877945565a41733d446f5557ecdff71e518b9894bac1d19f650cdd070c2d4e23079c7b33ee
7
+ data.tar.gz: e3e4d92cd282bace89e3ea1f29a6d9d63809b087cd1b91532c855c57d990ad2ba93328423e02c00915370750c21856557882c4cb2377eda7b1bff9464e369da9
data/Gemfile.lock CHANGED
@@ -1,25 +1,25 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- jbundler (0.5.4)
5
- bundler (~> 1.2)
4
+ jbundler (0.5.5)
5
+ bundler (~> 1.5)
6
6
  ruby-maven (>= 3.1.1.0.1, < 3.1.2)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- backports (3.3.5)
11
+ backports (3.4.0)
12
12
  copyright-header (1.0.8)
13
13
  descendants_tracker (0.0.3)
14
14
  maven-tools (0.34.2)
15
15
  virtus (~> 0.5)
16
16
  minitest (4.7.5)
17
17
  rake (10.1.0)
18
- ruby-maven (3.1.1.0.1)
18
+ ruby-maven (3.1.1.0.2)
19
19
  maven-tools (~> 0.33)
20
20
  ruby-maven-libs (= 3.1.1)
21
21
  ruby-maven-libs (3.1.1)
22
- thor (0.15.4)
22
+ thor (0.18.1)
23
23
  virtus (0.5.5)
24
24
  backports (~> 3.3)
25
25
  descendants_tracker (~> 0.0.1)
@@ -33,4 +33,4 @@ DEPENDENCIES
33
33
  jbundler!
34
34
  minitest (~> 4.0)
35
35
  rake (~> 10.0)
36
- thor (> 0.14.0, < 0.16.0)
36
+ thor (~> 0.18.0)
data/Readme.md CHANGED
@@ -129,15 +129,17 @@ jbundler does not completely obey the **$HOME/.m2/settings.xml** from maven wher
129
129
 
130
130
  some tests did not work with RVM and/or rubygems-bundler - there are some weird classloader issue popping up. there is a problem with the way the classloader gets setup. but a manual jruby installion or using rbenv is just working fine.
131
131
 
132
- those issue might pop up with ```jbunle tree``` and ```jbundle executable```
132
+ those issue might pop up with ```jbundle tree``` and ```jbundle executable```
133
133
 
134
134
  ## running tests ##
135
135
 
136
- * ```rake``` will just execute all tests (skips some with rvm)
136
+ * ```rake``` will execute all tests without integration tests
137
+ * ```rake all``` will execute all tests
137
138
  * ```rake minitest``` runs the minitest specs
139
+ * ```rake integration``` runs the integration tests where poms are used (might fail due to hardcoded absolute paths)
138
140
  * ```rake junit``` runs the junit java tests
139
141
  * ```jruby spec/abc_spec.rb``` runs that given tests (just use the right file)
140
- * ```mvn test``` will also run all tests (skips some)
142
+ * ```mvn test``` will also run all tests
141
143
  * ```rmvn test`` same as ```mvn test```
142
144
 
143
145
  ## update ##
data/lib/jbundler.jar CHANGED
Binary file
data/lib/jbundler.rb CHANGED
@@ -24,6 +24,16 @@ require 'jbundler/vendor'
24
24
  require 'jbundler/gemfile_lock'
25
25
  require 'jbundler/aether'
26
26
 
27
+ module JBundler
28
+
29
+ def setup_test
30
+ config = JBundler::Config.new
31
+ JBundler::ClasspathFile.new(config.classpath_file).require_test_classpath
32
+ config
33
+ end
34
+
35
+ end
36
+
27
37
  config = JBundler::Config.new
28
38
 
29
39
  jarfile = Maven::Tools::Jarfile.new(config.jarfile)
@@ -28,6 +28,12 @@ module JBundler
28
28
 
29
29
  def require_classpath
30
30
  load File.expand_path @classpathfile
31
+ JBUNDLER_CLASSPATH.each { |c| require c }
32
+ end
33
+
34
+ def require_test_classpath
35
+ load File.expand_path @classpathfile unless defined? JBUNLDER_TEST_CLASSPATH
36
+ JBUNDLER_TEST_CLASSPATH.each { |c| require c }
31
37
  end
32
38
 
33
39
  def mtime
@@ -42,18 +48,24 @@ module JBundler
42
48
  (jarfile.exists? || gemfile_lock.exists? || jarfile.exists_lock?) && (!exists? || !jarfile.exists_lock? || (jarfile.exists? && (jarfile.mtime > mtime)) || (jarfile.exists_lock? && (jarfile.mtime_lock > mtime)) || (gemfile_lock.exists? && (gemfile_lock.mtime > mtime)))
43
49
  end
44
50
 
45
- def generate(classpath_array)
51
+ def generate( classpath_array, test_array = [], jruby_array = [] )
46
52
  FileUtils.mkdir_p(File.dirname(@classpathfile))
47
53
  File.open(@classpathfile, 'w') do |f|
48
- f.puts "JBUNDLER_CLASSPATH = []"
49
- classpath_array.each do |path|
50
- f.puts "JBUNDLER_CLASSPATH << '#{path}'" unless path =~ /pom$/
51
- end
52
- f.puts "JBUNDLER_CLASSPATH.freeze"
54
+ dump_array( f, jruby_array || [], 'JRUBY_' )
55
+ dump_array( f, test_array || [], 'TEST_' )
56
+ dump_array( f, classpath_array || [], '' )
53
57
  f.puts "JBUNDLER_CLASSPATH.each { |c| require c }"
54
58
  f.close
55
59
  end
56
60
  end
57
61
 
62
+ private
63
+ def dump_array( file, array, prefix )
64
+ file.puts "JBUNDLER_#{prefix}CLASSPATH = []"
65
+ array.each do |path|
66
+ file.puts "JBUNDLER_#{prefix}CLASSPATH << '#{path}'" unless path =~ /pom$/
67
+ end
68
+ file.puts "JBUNDLER_#{prefix}CLASSPATH.freeze"
69
+ end
58
70
  end
59
71
  end
data/lib/jbundler/cli.rb CHANGED
@@ -22,6 +22,7 @@ require 'thor'
22
22
  require 'jbundler/config'
23
23
  require 'jbundler/executable'
24
24
  require 'jbundler/tree'
25
+ require 'jbundler/lock_down'
25
26
  module JBundler
26
27
  class Cli < Thor
27
28
  no_tasks do
@@ -58,6 +59,14 @@ module JBundler
58
59
  JBundler::Tree.new( config ).show_it
59
60
  end
60
61
 
62
+ desc 'lock_down', 'using a different library to create the Jarfile.lock - experimental'
63
+ method_option :vendor, :type => :boolean, :default => false, :desc => 'vendor jars in given vendor directory.'
64
+ method_option :debug, :type => :boolean, :default => false, :desc => 'enable maven output'
65
+ def lock_down
66
+ JBundler::LockDown.new( config ).lock_down( options[ :vendor ],
67
+ options[ :debug ] )
68
+ end
69
+
61
70
  desc 'executable', 'create an executable jar with a given bootstrap.rb file\nLIMITATION: only for jruby 1.6.x and newer'
62
71
  method_option :bootstrap, :type => :string, :aliases => '-b', :required => true, :desc => 'file which will be executed when the jar gets executed'
63
72
  method_option :compile, :type => :boolean, :aliases => '-c', :default => false, :desc => 'compile the ruby files from the lib directory'
@@ -76,6 +85,17 @@ module JBundler
76
85
  desc 'install', "first `bundle install` is called and then the jar dependencies will be installed. for more details see `bundle help install`, jbundler will ignore all options. the install command is also the default when no command is given."
77
86
  method_option :deployment, :type => :boolean, :default => false, :desc => "copy the jars into the vendor/jars directory (or as configured). these vendored jars have preference before the classpath jars !"
78
87
  method_option :no_deployment, :type => :boolean, :default => false, :desc => 'clears the vendored jars'
88
+ method_option :path, :type => :string
89
+ method_option :without, :type => :array
90
+ method_option :system, :type => :boolean
91
+ method_option :local, :type => :boolean
92
+ method_option :binstubs, :type => :string
93
+ method_option :trust_policy, :type => :string
94
+ method_option :gemfile, :type => :string
95
+ method_option :jobs, :type => :string
96
+ method_option :retry, :type => :string
97
+ method_option :no_cache, :type => :boolean
98
+ method_option :quiet, :type => :boolean
79
99
  def install
80
100
  require 'jbundler'
81
101
  if options[ :no_deployment ]
@@ -102,24 +102,32 @@ module JBundler
102
102
 
103
103
  def proxy
104
104
  @proxy ||= jbundler_env('JBUNDLE_PROXY')
105
+ if @proxy
106
+ warn 'proxy config is deprecated, use settings.xml instead'
107
+ end
108
+ @proxy
105
109
  end
106
110
 
107
111
  def mirror
108
112
  @mirror ||= jbundler_env('JBUNDLE_MIRROR')
109
113
  # nice to have no leading slash
110
114
  @mirror = @mirror.sub( /\/$/, '' ) if @mirror
115
+ if @mirror
116
+ warn 'mirror config is deprecated, use settings.xml instead'
117
+ end
111
118
  @mirror
112
119
  end
113
120
 
114
121
  def rubygems_mirror
115
122
  @rubygems_mirror ||= jbundler_env('BUNDLE_RUBYGEMS_MIRROR')
116
123
  # here a leading slash is needed !!
117
- @rubygems_mirror = @rubygems_mirror.sub( /([^\/])$/ , "\\1/" ) if @rubygems_mirror
124
+ @rubygems_mirror = @rubygems_mirror.sub( /([^\/])$/ , "\\1/" ) if @rubygems_mirror
125
+ warn 'reubygems mirror config is deprecated, use bundler >=1.5 and its mirror config'
118
126
  @rubygems_mirror
119
127
  end
120
128
 
121
129
  def work_dir
122
- @work_dir ||= jbundler_env('JBUNDLE_WORK_DIR') || 'target'
130
+ @work_dir ||= jbundler_env('JBUNDLE_WORK_DIR') || 'pkg'
123
131
  end
124
132
 
125
133
  def vendor_dir
@@ -31,11 +31,10 @@ module JBundler
31
31
  m.verbose = @config.verbose
32
32
  m.package( '-P', @config.compile ? :compile : :no_compile )
33
33
 
34
- #FileUtils.rm_f( 'dependency-reduced-pom.xml' )
35
34
  puts
36
35
  puts 'now you can execute your jar like this'
37
36
  puts
38
- puts "\tjava -jar #{@config.work_dir}/executable/*.jar"
37
+ puts "\tjava -jar #{File.basename( File.expand_path( '.' ) )}_exec.jar"
39
38
  puts
40
39
  end
41
40
  end
@@ -26,7 +26,7 @@ end
26
26
  jfile.locked.each do |dep|
27
27
  artifact( dep )
28
28
  end
29
- build.final_name = model.artifact_id
29
+
30
30
  build.directory = jworkdir
31
31
  resource do
32
32
  directory jworkdir
@@ -49,6 +49,7 @@ Gem.loaded_specs.values.each do |s|
49
49
  end
50
50
 
51
51
  properties( 'maven.test.skip' => true,
52
+ 'tesla.dump.pom' => 'pom.xml',
52
53
  'project.build.sourceEncoding' => 'utf-8' )
53
54
 
54
55
  jfile.populate_unlocked do |dsl|
@@ -104,6 +105,7 @@ profile :no_compile do
104
105
  end
105
106
 
106
107
  plugin( :shade, '2.1',
108
+ :outputFile => "${user.dir}/#{File.basename( File.expand_path( '.' ) )}_exec.jar",
107
109
  :transformers => [ { '@implementation' => 'org.apache.maven.plugins.shade.resource.ManifestResourceTransformer',
108
110
  :mainClass => 'org.jruby.JarBootstrapMain' } ] ) do
109
111
  execute_goals( 'shade', :phase => 'package' )
@@ -0,0 +1,105 @@
1
+ require 'jbundler/configurator'
2
+ require 'jbundler/classpath_file'
3
+ require 'jbundler/vendor'
4
+ require 'jbundler/gemfile_lock'
5
+ require 'jbundler/show'
6
+ require 'maven/tools/jarfile'
7
+ require 'maven/ruby/maven'
8
+ require 'fileutils'
9
+ module JBundler
10
+ class LockDown
11
+
12
+ def initialize( config )
13
+ @config = config
14
+ @configurator = Configurator.new( config )
15
+ end
16
+
17
+ def lock_down( needs_vendor = false, debug = false )
18
+ jarfile = Maven::Tools::Jarfile.new( @config.jarfile )
19
+ vendor = JBundler::Vendor.new( @config.vendor_dir )
20
+ classpath_file = JBundler::ClasspathFile.new( @config.classpath_file )
21
+ gemfile_lock = JBundler::GemfileLock.new( jarfile,
22
+ @config.gemfile_lock )
23
+
24
+ needs_update = classpath_file.needs_update?( jarfile, gemfile_lock )
25
+ if( ( ! needs_update ||
26
+ vendor.vendored? ) && ! vendor )
27
+
28
+ puts 'up to date'
29
+
30
+ else
31
+
32
+ puts '...'
33
+
34
+ exec_maven( debug )
35
+
36
+ deps_file = File.join( File.expand_path( @config.work_dir ),
37
+ 'dependencies.txt' )
38
+ deps = StringIO.new
39
+ jars = {}
40
+ vendor_map = {}
41
+ File.read( deps_file ).each_line do |line|
42
+ if line.match /:jar:/
43
+ jar = line.sub( /.+:/, '' ).sub( /\s$/, '' )
44
+ unless line.match /:provided/
45
+ vendor_map[ line.sub( /:[^:]+:[^:]+$/, '' )
46
+ .sub( /^\s+/, '' ) ] = jar
47
+ end
48
+ case line
49
+ when /:provided:/
50
+ ( jars[ :jruby ] ||= [] ) << jar
51
+ when /:test:/
52
+ ( jars[ :test ] ||= [] ) << jar
53
+ else
54
+ ( jars[ :runtime ] ||= [] ) << jar
55
+ end
56
+ end
57
+ # TODO make lock depend on jruby version as well on
58
+ # include test as well, i.e. keep the scope in place
59
+ if( line.match( /:compile:|:runtime:/ ) &&
60
+ ! line.match( /^ruby.bundler:/ ) )
61
+ deps.puts line.sub( /:[^:]+:[^:]+$/, '' ).sub( /^\s+/, '' )
62
+ end
63
+ end
64
+ if needs_update
65
+ if deps.string.empty?
66
+ FileUtils.rm_f @config.jarfile_lock
67
+ else
68
+ File.open( @config.jarfile_lock, 'w' ) do |f|
69
+ f.print deps.string
70
+ end
71
+ end
72
+ classpath_file.generate( jars[ :runtime ],
73
+ jars[ :test ],
74
+ jars[ :jruby ] )
75
+ end
76
+ if needs_vendor
77
+ puts "vendor directory: #{@config.vendor_dir}"
78
+ vendor_map.each do |key, file|
79
+ vendor.copy_jar( key, file )
80
+ end
81
+ puts
82
+ end
83
+ if @config.verbose
84
+ Show.new( @config ).show_classpath
85
+ puts
86
+ end
87
+ puts 'jbundle complete'
88
+ end
89
+ end
90
+
91
+ private
92
+
93
+ def exec_maven( debug )
94
+ m = Maven::Ruby::Maven.new
95
+ m.options[ '-f' ] = File.join( File.dirname( __FILE__ ),
96
+ 'lock_down_pom.rb' )
97
+ m.options[ '-q' ] = nil unless debug
98
+ m.verbose = debug
99
+
100
+ @configurator.configure( m )
101
+
102
+ m.exec
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,23 @@
1
+ jfile = java.lang.System.getProperty( "jbundler.jarfile" )
2
+ gfile = java.lang.System.getProperty( "jbundler.gemfile" )
3
+ jworkdir = java.lang.System.getProperty( "jbundler.workdir" )
4
+
5
+ basedir( File.dirname( jfile ) )
6
+
7
+ gemfile( gfile ) if File.exists? gfile
8
+
9
+ jarfile( jfile )
10
+
11
+ build do
12
+ directory = jworkdir
13
+ default_goal 'dependency:list'
14
+ end
15
+
16
+ plugin( :dependency, '2.8',
17
+ :includeTypes => 'jar',
18
+ :outputAbsoluteArtifactFilename => true,
19
+ :outputFile => "#{jworkdir}/dependencies.txt" )
20
+
21
+ properties( 'project.build.sourceEncoding' => 'utf-8',
22
+ 'tesla.dump.readOnly' => true,
23
+ 'tesla.dump.pom' => 'lockdown.pom.xml' )
@@ -0,0 +1,43 @@
1
+ require 'jbundler/configurator'
2
+ require 'jbundler/classpath_file'
3
+ require 'jbundler/vendor'
4
+ require 'jbundler/gemfile_lock'
5
+ require 'maven/tools/jarfile'
6
+ require 'maven/ruby/maven'
7
+ require 'fileutils'
8
+ module JBundler
9
+ class Show
10
+
11
+ def initialize( config )
12
+ @config = config
13
+ @classpath_file = JBundler::ClasspathFile.new( @config.classpath_file )
14
+ end
15
+
16
+ def do_it( debug = false )
17
+ jarfile = Maven::Tools::Jarfile.new( @config.jarfile )
18
+ vendor = JBundler::Vendor.new( @config.vendor_dir )
19
+ gemfile_lock = JBundler::GemfileLock.new( jarfile,
20
+ @config.gemfile_lock )
21
+ end
22
+
23
+ def show_classpath
24
+ @classpath_file.require_classpath
25
+ warn "jruby core classpath:"
26
+ JBUNDLER_JRUBY_CLASSPATH.each do |path|
27
+ warn "\t#{path}"
28
+ end
29
+ warn "jbundler runtime classpath:"
30
+ JBUNDLER_CLASSPATH.each do |path|
31
+ warn "\t#{path}"
32
+ end
33
+ warn "jbundler test classpath:"
34
+ if JBUNDLER_TEST_CLASSPATH.empty?
35
+ warn "\t--- empty ---"
36
+ else
37
+ JBUNDLER_TEST_CLASSPATH.each do |path|
38
+ warn "\t#{path}"
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
data/lib/jbundler/tree.rb CHANGED
@@ -1,14 +1,9 @@
1
1
  require 'jbundler/configurator'
2
- require 'maven/tools/jarfile'
3
- require 'maven/tools/dsl'
4
- require 'maven/tools/model'
5
2
  require 'maven/ruby/maven'
6
3
  require 'fileutils'
7
4
  module JBundler
8
5
  class Tree
9
6
 
10
- include Maven::Tools::DSL
11
-
12
7
  def initialize( config )
13
8
  @config = Configurator.new( config )
14
9
  end
@@ -16,21 +11,17 @@ module JBundler
16
11
  def show_it( debug = false )
17
12
  m = Maven::Ruby::Maven.new
18
13
  m.options[ '-f' ] = File.join( File.dirname( __FILE__ ), 'tree_pom.rb' )
14
+ m.options[ '-q' ] = nil unless debug
15
+ m.verbose = debug
16
+
19
17
  @config.configure( m )
20
18
 
21
- unless debug
22
- # silence the output
23
- old = java.lang.System.err
24
- java.lang.System.err = java.io.PrintStream.new( java.io.ByteArrayOutputStream.new )
25
- end
19
+ puts '...'
26
20
 
27
21
  m.exec( 'org.apache.maven.plugins:maven-dependency-plugin:2.8:tree' )
28
22
 
29
23
  puts File.read( File.join( File.expand_path( @config.work_dir ),
30
24
  'tree.txt' ) )
31
-
32
- ensure
33
- java.lang.System.err = old if old
34
25
  end
35
26
  end
36
27
  end
@@ -16,4 +16,4 @@ end
16
16
  properties( 'project.build.sourceEncoding' => 'utf-8',
17
17
  'tesla.dump.readOnly' => true,
18
18
  'tesla.dump.pom' => 'tree.pom.xml',
19
- 'outputFile' => '${project.build.directory}/tree.txt' )
19
+ 'outputFile' => "#{jworkdir}/tree.txt" )
@@ -10,7 +10,7 @@ module JBundler
10
10
  end
11
11
 
12
12
  def require_jars
13
- Dir[ File.join( @dir, '*' ) ].each do |f|
13
+ Dir[ File.join( @dir, '**', '*' ) ].each do |f|
14
14
  require f
15
15
  end
16
16
  end
@@ -18,7 +18,7 @@ module JBundler
18
18
  def clear
19
19
  FileUtils.mkdir_p( @dir )
20
20
  Dir[ File.join( @dir, '*' ) ].each do |f|
21
- FileUtils.rm_f( f )
21
+ FileUtils.rm_rf( f )
22
22
  end
23
23
  end
24
24
 
@@ -31,6 +31,13 @@ module JBundler
31
31
  end
32
32
  end
33
33
 
34
+ def copy_jar( coord, file )
35
+ target = File.join( *coord.sub( /:jar:/, '-') .split( /:/ ) )
36
+ target_file = File.join( @dir, target ) + '.jar'
37
+ FileUtils.mkdir_p( File.dirname( target_file ) )
38
+ FileUtils.cp( file, target_file )
39
+ puts "\t#{coord} to #{target}"
40
+ end
34
41
  end
35
42
  end
36
43
 
@@ -77,6 +77,10 @@ describe JBundler::ClasspathFile do
77
77
  it 'generates a classpath ruby file' do
78
78
  subject.generate("a:b:c:d:f:".split(File::PATH_SEPARATOR))
79
79
  File.read(cpfile).must_equal <<-EOF
80
+ JBUNDLER_JRUBY_CLASSPATH = []
81
+ JBUNDLER_JRUBY_CLASSPATH.freeze
82
+ JBUNDLER_TEST_CLASSPATH = []
83
+ JBUNDLER_TEST_CLASSPATH.freeze
80
84
  JBUNDLER_CLASSPATH = []
81
85
  JBUNDLER_CLASSPATH << 'a'
82
86
  JBUNDLER_CLASSPATH << 'b'
data/spec/config_spec.rb CHANGED
@@ -27,7 +27,7 @@ describe JBundler::Config do
27
27
  c.skip.must_equal nil
28
28
  c.settings.must_equal nil
29
29
  c.offline.must_equal false
30
- c.work_dir.must_equal 'target'
30
+ c.work_dir.must_equal 'pkg'
31
31
  c.vendor_dir.must_equal 'vendor/jars'
32
32
  end
33
33
  end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jbundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
5
- prerelease:
4
+ version: 0.5.5
6
5
  platform: ruby
7
6
  authors:
8
7
  - Christian Meier
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-12-18 00:00:00.000000000 Z
11
+ date: 2014-01-23 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: ruby-maven
@@ -21,7 +20,6 @@ dependencies:
21
20
  - - <
22
21
  - !ruby/object:Gem::Version
23
22
  version: 3.1.2
24
- none: false
25
23
  requirement: !ruby/object:Gem::Requirement
26
24
  requirements:
27
25
  - - '>='
@@ -30,7 +28,6 @@ dependencies:
30
28
  - - <
31
29
  - !ruby/object:Gem::Version
32
30
  version: 3.1.2
33
- none: false
34
31
  prerelease: false
35
32
  type: :runtime
36
33
  - !ruby/object:Gem::Dependency
@@ -39,14 +36,12 @@ dependencies:
39
36
  requirements:
40
37
  - - ~>
41
38
  - !ruby/object:Gem::Version
42
- version: '1.2'
43
- none: false
39
+ version: '1.5'
44
40
  requirement: !ruby/object:Gem::Requirement
45
41
  requirements:
46
42
  - - ~>
47
43
  - !ruby/object:Gem::Version
48
- version: '1.2'
49
- none: false
44
+ version: '1.5'
50
45
  prerelease: false
51
46
  type: :runtime
52
47
  - !ruby/object:Gem::Dependency
@@ -56,35 +51,25 @@ dependencies:
56
51
  - - ~>
57
52
  - !ruby/object:Gem::Version
58
53
  version: '10.0'
59
- none: false
60
54
  requirement: !ruby/object:Gem::Requirement
61
55
  requirements:
62
56
  - - ~>
63
57
  - !ruby/object:Gem::Version
64
58
  version: '10.0'
65
- none: false
66
59
  prerelease: false
67
60
  type: :development
68
61
  - !ruby/object:Gem::Dependency
69
62
  name: thor
70
63
  version_requirements: !ruby/object:Gem::Requirement
71
64
  requirements:
72
- - - <
73
- - !ruby/object:Gem::Version
74
- version: 0.16.0
75
- - - '>'
65
+ - - ~>
76
66
  - !ruby/object:Gem::Version
77
- version: 0.14.0
78
- none: false
67
+ version: 0.18.0
79
68
  requirement: !ruby/object:Gem::Requirement
80
69
  requirements:
81
- - - <
82
- - !ruby/object:Gem::Version
83
- version: 0.16.0
84
- - - '>'
70
+ - - ~>
85
71
  - !ruby/object:Gem::Version
86
- version: 0.14.0
87
- none: false
72
+ version: 0.18.0
88
73
  prerelease: false
89
74
  type: :development
90
75
  - !ruby/object:Gem::Dependency
@@ -94,13 +79,11 @@ dependencies:
94
79
  - - ~>
95
80
  - !ruby/object:Gem::Version
96
81
  version: '4.0'
97
- none: false
98
82
  requirement: !ruby/object:Gem::Requirement
99
83
  requirements:
100
84
  - - ~>
101
85
  - !ruby/object:Gem::Version
102
86
  version: '4.0'
103
- none: false
104
87
  prerelease: false
105
88
  type: :development
106
89
  description: |
@@ -118,8 +101,10 @@ files:
118
101
  - lib/jbundler/classpath_file.rb
119
102
  - lib/jbundler/tree_pom.rb
120
103
  - lib/jbundler/tree.rb
104
+ - lib/jbundler/lock_down_pom.rb
121
105
  - lib/jbundler/gemfile_lock.rb
122
106
  - lib/jbundler/executable_pom.rb
107
+ - lib/jbundler/lock_down.rb
123
108
  - lib/jbundler/configurator.rb
124
109
  - lib/jbundler/cli.rb
125
110
  - lib/jbundler/config.rb
@@ -127,6 +112,7 @@ files:
127
112
  - lib/jbundler/lazy.rb
128
113
  - lib/jbundler/executable.rb
129
114
  - lib/jbundler/vendor.rb
115
+ - lib/jbundler/show.rb
130
116
  - lib/jbundler.jar
131
117
  - spec/config_spec.rb
132
118
  - spec/vendor_spec.rb
@@ -142,6 +128,7 @@ files:
142
128
  homepage: https://github.com/mkristian/jbundler
143
129
  licenses:
144
130
  - MIT
131
+ metadata: {}
145
132
  post_install_message:
146
133
  rdoc_options: []
147
134
  require_paths:
@@ -151,18 +138,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
138
  - - '>='
152
139
  - !ruby/object:Gem::Version
153
140
  version: '0'
154
- none: false
155
141
  required_rubygems_version: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - '>='
158
144
  - !ruby/object:Gem::Version
159
145
  version: '0'
160
- none: false
161
146
  requirements: []
162
147
  rubyforge_project:
163
- rubygems_version: 1.8.24
148
+ rubygems_version: 2.1.9
164
149
  signing_key:
165
- specification_version: 3
150
+ specification_version: 4
166
151
  summary: managing jar dependencies
167
152
  test_files:
168
153
  - spec/config_spec.rb