klaas1979-ivy4r 0.7.2 → 0.7.3

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,13 @@
1
+ === 0.7.3 / 2009-09-15
2
+
3
+ * Renamed +ant+ to +ivy4r+ in buildr extension to make more clear what this object does. It is accesible
4
+ via call to +project.ivy.ivy4r+, use it in post_resolve or other places where the low level
5
+ ivy functions are needed in any way.
6
+ * Added access to buildr_extension to get the configured mappings for artifacts to ivy publish names.
7
+ I.e. configured +ivy.publish package(:jar) => 'name.jar'
8
+ access this hash via +ivy.publish_mappings+
9
+
10
+
1
11
  === 0.7.2 / 2009-09-08
2
12
 
3
13
  * Fix bug for creating EARs. The package dependencies are added into the root directory
@@ -33,6 +33,9 @@ module Buildr
33
33
  attr_accessor :extension_dir, :resolved
34
34
 
35
35
  attr_reader :post_resolve_task_list
36
+
37
+ # Hash of all artifacts to publish with mapping from artifact name to ivy publish name
38
+ attr_reader :publish_mappings
36
39
 
37
40
  # Store the current project and initialize ivy ant wrapper
38
41
  def initialize(project)
@@ -57,19 +60,20 @@ module Buildr
57
60
  @own_file ||= File.exists?(@project.path_to(file))
58
61
  end
59
62
 
60
- # Returns the correct ant instance to use, if project has its own ivy file uses the ivy file
63
+ # Returns the correct ivy4r instance to use, if project has its own ivy file uses the ivy file
61
64
  # of project, if not uses the ivy file of parent project.
62
- def ant
63
- unless @ant
65
+ # Use this for low-level access to ivy functions as needed, i.e. in +post_resolve+
66
+ def ivy4r
67
+ unless @ivy4r
64
68
  if own_file?
65
- @ant = ::Ivy4r.new(@project.ant('ivy'))
66
- @ant.lib_dir = lib_dir if lib_dir
67
- @ant.project_dir = @extension_dir
69
+ @ivy4r = ::Ivy4r.new(@project.ant('ivy'))
70
+ @ivy4r.lib_dir = lib_dir if lib_dir
71
+ @ivy4r.project_dir = @extension_dir
68
72
  else
69
- @ant = @project.parent.ivy.ant
73
+ @ivy4r = @project.parent.ivy.ivy4r
70
74
  end
71
75
  end
72
- @ant
76
+ @ivy4r
73
77
  end
74
78
 
75
79
  # Returns name of the project the ivy file belongs to.
@@ -84,18 +88,18 @@ module Buildr
84
88
  confs = confs.reject {|c| c.nil? || c.blank? }
85
89
  unless confs.empty?
86
90
  pathid = "ivy.deps." + confs.join('.')
87
- ant.cachepath :conf => confs.join(','), :pathid => pathid
91
+ ivy4r.cachepath :conf => confs.join(','), :pathid => pathid
88
92
  end
89
93
  end
90
94
 
91
- # Returns ivy info for configured ivy file using a new ant instance.
95
+ # Returns ivy info for configured ivy file using a new ivy4r instance.
92
96
  def info
93
97
  if @base_ivy
94
98
  @base_ivy.info
95
99
  else
96
- ant.settings :id => 'ivy.info.settingsref'
97
- result = ant.info :file => file, :settingsRef => 'ivy.info.settingsref'
98
- @ant = nil
100
+ ivy4r.settings :id => 'ivy.info.settingsref'
101
+ result = ivy4r.info :file => file, :settingsRef => 'ivy.info.settingsref'
102
+ @ivy4r = nil
99
103
  result
100
104
  end
101
105
  end
@@ -106,10 +110,10 @@ module Buildr
106
110
  @base_ivy.configure
107
111
  else
108
112
  unless @configured
109
- ant.property['ivy.status'] = status
110
- ant.property['ivy.home'] = home
111
- properties.each {|key, value| ant.property[key.to_s] = value }
112
- @configured = ant.settings :file => settings if settings
113
+ ivy4r.property['ivy.status'] = status
114
+ ivy4r.property['ivy.home'] = home
115
+ properties.each {|key, value| ivy4r.property[key.to_s] = value }
116
+ @configured = ivy4r.settings :file => settings if settings
113
117
  end
114
118
  end
115
119
  end
@@ -120,7 +124,7 @@ module Buildr
120
124
  @base_ivy.__resolve__
121
125
  else
122
126
  unless @resolved
123
- @resolved = ant.resolve :file => file
127
+ @resolved = ivy4r.resolve :file => file
124
128
  @project.send(:info, "Calling '#{post_resolve_tasks.size}' post_resolve tasks for '#{@project.name}'")
125
129
  post_resolve_tasks.each { |p| p.call(self) }
126
130
  end
@@ -142,7 +146,7 @@ module Buildr
142
146
 
143
147
  # Creates the standard ivy dependency report
144
148
  def report
145
- ant.report :todir => report_dir
149
+ ivy4r.report :todir => report_dir
146
150
  end
147
151
 
148
152
  # Publishs the project as defined in ivy file if it has not been published already
@@ -153,7 +157,7 @@ module Buildr
153
157
  unless @published
154
158
  options = {:status => status, :pubrevision => revision, :artifactspattern => "#{publish_from}/[artifact].[ext]"}
155
159
  options = publish_options * options
156
- ant.publish options
160
+ ivy4r.publish options
157
161
  @published = true
158
162
  end
159
163
  end
@@ -181,7 +185,7 @@ module Buildr
181
185
  # To set a different revision this method can be used in different ways.
182
186
  # 1. project.ivy.revision(revision) to set the revision directly
183
187
  # 2. project.ivy.revision { |ivy| [calculate revision] } use the block for dynamic
184
- # calculation of the revision. You can access ivy4r via <tt>ivy.ant.[method]</tt>
188
+ # calculation of the revision. You can access ivy4r via <tt>ivy.ivy4r.[method]</tt>
185
189
  def revision(*revision, &block)
186
190
  raise "Invalid call with parameters and block!" if revision.size > 0 && block
187
191
  if revision.empty? && block.nil?
@@ -206,7 +210,7 @@ module Buildr
206
210
  # To set a different status this method can be used in different ways.
207
211
  # 1. project.ivy.status(status) to set the status directly
208
212
  # 2. project.ivy.status { |ivy| [calculate status] } use the block for dynamic
209
- # calculation of the status. You can access ivy4r via <tt>ivy.ant.[method]</tt>
213
+ # calculation of the status. You can access ivy4r via <tt>ivy.ivy4r.[method]</tt>
210
214
  def status(*status, &block)
211
215
  raise "Invalid call with parameters and block!" if status.size > 0 && block
212
216
  if status.empty? && block.nil?
@@ -231,7 +235,7 @@ module Buildr
231
235
  # To set the options this method can be used in different ways.
232
236
  # 1. project.ivy.publish_options(options) to set the options directly
233
237
  # 2. project.ivy.publish_options { |ivy| [calculate options] } use the block for dynamic
234
- # calculation of options. You can access ivy4r via <tt>ivy.ant.[method]</tt>
238
+ # calculation of options. You can access ivy4r via <tt>ivy.ivy4r.[method]</tt>
235
239
  def publish_options(*options, &block)
236
240
  raise "Invalid call with parameters and block!" if options.size > 0 && block
237
241
  if options.empty? && block.nil?
@@ -288,12 +292,12 @@ module Buildr
288
292
  # for publishing use a hash with the +package+ as key and the newly mapped name as value. I.e.
289
293
  # <tt>ivy.name(package(:jar) => 'new_name_without_version_number.jar')</tt>
290
294
  # Note that this method is additive, a second call adds the names to the first.
291
- def name(*name_mappings)
292
- if name_mappings.empty?
293
- @name_mappings ||= {}
295
+ def name(*publish_mappings)
296
+ if publish_mappings.empty?
297
+ @publish_mappings ||= {}
294
298
  else
295
- raise "name_mappings value invalid #{name_mappings.join(', ')}" unless name_mappings.size == 1
296
- @name_mappings = @name_mappings ? @name_mappings + name_mappings[0] : name_mappings[0].dup
299
+ raise "publish_mappings value invalid #{publish_mappings.join(', ')}" unless publish_mappings.size == 1
300
+ @publish_mappings = @publish_mappings ? @publish_mappings + publish_mappings[0] : publish_mappings[0].dup
297
301
  self
298
302
  end
299
303
  end
@@ -633,7 +637,7 @@ For more configuration options see IvyConfig.
633
637
  task :clean do
634
638
  info "Cleaning local ivy cache"
635
639
  Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
636
- project.ivy.ant.clean
640
+ project.ivy.ivy4r.clean
637
641
  end
638
642
  end
639
643
 
data/lib/ivy4r.rb CHANGED
@@ -35,7 +35,7 @@ is
35
35
  }
36
36
  =end
37
37
  class Ivy4r
38
- VERSION = '0.7.2'
38
+ VERSION = '0.7.3'
39
39
 
40
40
  # Set the ant home directory to load ant classes from if no custom __antwrap__ is provided
41
41
  # and the default provided ant version 1.7.1 should not be used.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: klaas1979-ivy4r
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Klaas Prause
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-09-08 00:00:00 -07:00
12
+ date: 2009-09-15 00:00:00 -07:00
13
13
  default_executable: ivy4r
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency