buildr 1.4.20 → 1.4.21

Sign up to get free protection for your applications and to get access to all the features.
@@ -18,16 +18,28 @@ The source code is included in both source and binary distribution, the Gem dist
18
18
 
19
19
  h2(#dist). Binaries and Source Code
20
20
 
21
+ h3. buildr 1.4.20 (2014-08-23)
22
+
23
+ |_. Package |_. MD5 Checksum |_. PGP |
24
+ | "buildr-1.4.20-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.20/buildr-1.4.20-java.gem | "5c556432d31d1b6a8b7f6dc4d40adfd7":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20-java.gem.asc |
25
+ | "buildr-1.4.20-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem | "4db296ff90d82306d80b47c763f771ae":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem.asc |
26
+ | "buildr-1.4.20.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.20/buildr-1.4.20.gem | "78987c8048d9c30c96f07b485df7077c":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.gem.asc |
27
+ | "buildr-1.4.20.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.20/buildr-1.4.20.tgz | "682d1574dbc9c17db841df6a9632497e":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.tgz.asc |
28
+ | "buildr-1.4.20.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.20/buildr-1.4.20.zip | "ad04e82d76268ec91a6bc33afcb77490":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.20/buildr-1.4.20.zip.asc |
29
+
30
+ p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.20/KEYS)
31
+
32
+
21
33
  h3. buildr 1.4.19 (2014-07-06)
22
34
 
23
35
  |_. Package |_. MD5 Checksum |_. PGP |
24
- | "buildr-1.4.19-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19-java.gem | "bdf35f947eab94766ec4a4ca4b82e73e":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.asc |
25
- | "buildr-1.4.19-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem | "9fbe0ac5148e5d3a6f449dfbd5dfc4a2":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.asc |
26
- | "buildr-1.4.19.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.gem | "626af3aabef47a6c55587aaeca5d879d":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.asc |
27
- | "buildr-1.4.19.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.tgz | "f9bc0151a6ed9867c40393cced6195f5":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.asc |
28
- | "buildr-1.4.19.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.zip | "1c88b93901524e236db41ec69a3bc72a":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.asc |
36
+ | "buildr-1.4.19-java.gem":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem | "bdf35f947eab94766ec4a4ca4b82e73e":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.asc |
37
+ | "buildr-1.4.19-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem | "9fbe0ac5148e5d3a6f449dfbd5dfc4a2":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.asc |
38
+ | "buildr-1.4.19.gem":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem | "626af3aabef47a6c55587aaeca5d879d":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.asc |
39
+ | "buildr-1.4.19.tgz":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz | "f9bc0151a6ed9867c40393cced6195f5":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.asc |
40
+ | "buildr-1.4.19.zip":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip | "1c88b93901524e236db41ec69a3bc72a":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.asc |
29
41
 
30
- p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.19/KEYS)
42
+ p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.4.19/KEYS)
31
43
 
32
44
 
33
45
  h3. buildr 1.4.18 (2014-06-24)
@@ -46,31 +46,35 @@ So let's get started. You can "read the documentation online":quick_start.html,
46
46
 
47
47
  h2(#news). What's New
48
48
 
49
- Highlights from Buildr 1.4.20 (2014-08-23)
50
- * Fixed : Work around bug/feature of jruby 1.7.13 that caches Gem::Version
51
- objects based on constructor parameters that causes issues with
52
- Buildr as we mutate the version objects through monkey patching.
53
- * Change: Upgrade rjb dependency to 1.4.9.
54
- * Change: BUILDR-701 - Update to JUnit 4.11. Submitted by Jean-Philippe Caruana.
55
- * Added: Support the 'report_level' property on findbugs addon.
56
- * Change: Update the findbugs addon to use the 3.0.0 version of Findbugs.
57
- * Change: Update the findbugs addon to use the built-in findbugs stylesheet
58
- to generate the html report.
59
- * Fixed: Ensure that the 'single_intermediate_layout' addon removes the top
60
- level target and reports directories during 'clean' phase.
61
- * Added: Enhance idea project generation of ejb facet by looking for ejb
62
- descriptors in location compatible with ejb-jars.
63
-
64
- Highlights from Buildr 1.4.19 (2014-07-06)
65
- * Fixed: BUILDR-700 - Ensure SNAPSHOT artifacts, constructed using the
66
- download(artifact('group:artifact:jar:1-SNAPSHOT') =>
67
- 'http://example.com/...') construct will correctly download the
68
- artifacts from configured URL.
69
- * Fixed: BUILDR-700 - Fix bug where buildr was truncating SNAPSHOT files
70
- that had not changed since last update check and HTTP was returning
71
- "HTTP Not Modified" status.
72
- * Fixed: Fix bug introduced in 1.4.18 version of custom_pom addon where
73
- poms are created for artifacts that have a classifier.
49
+ Highlights from Buildr 1.4.21 (2014-11-28)
50
+ * Change: Upgrade atoulme-Antwrap to 0.7.5 to remove deprecation warnings in
51
+ modern JRuby. Suggested by Pepijn Van Eeckhoudt.
52
+ * Fixed: BUILDR-702 - Retain Unix permission flags when merging
53
+ zip files into another zip or tar archive. Submitted by Pepijn Van Eeckhoudt.
54
+ * Change: Upgrade jacoco to 0.7.2 to support Java 8. Submitted by neher.
55
+ * Change: Update checkstyle addon to use Checkstyle 6.0.
56
+ * Added: Update checkstyle addon to support downloading checkstyle checks as an artifact.
57
+ * Added: Update checkstyle addon to supply checkstyle.config.dir property.
58
+ * Added: Update pmd addon to support downloading rule files as an artifact.
59
+ * Change: Update pmd addon to use pmd version 5.1.3.
60
+ * Change: Update rjb to version 1.5.1.
61
+ * Change: Update the gwt addon to add the validation dependencies required for GWT
62
+ compiles without requiring that the user specify the dependency.
63
+ * Added: Updated the gwt addon to support the GWT 2.7.0 release.
64
+ * Change: Update ipr.add_gwt_configuration method to support GWT 2.7 configuration
65
+ parameters and IDEA 14 parameters.
66
+ * Change: Enhance ipr.add_glassfish_configuration to support the ability to
67
+ define the version of GlassFish in uses. Change the default to 4.1.0
68
+ as that is the latest supported variant.
69
+ * Fixed: Change the name of the GlassFish install in ipr.add_glassfish_configuration
70
+ to use the same convention that IDEA uses by default. i.e. Name the
71
+ installation "GlassFish 4.1.0" rather than "Glassfish 4.1.0".
72
+ * Change: Change the default version of the jdk in IDEA project files to 1.7.
73
+ * Change: Change the default version of the IDEA project files created to the
74
+ current release version 13. To revert to the older versions specify
75
+ ipr.version = '12' in your buildfile.
76
+ * Added: Enhance the IdeaFile class to easily support mixing in of custom
77
+ components from either the filesystem or from an artifact.
74
78
 
75
79
  This is a partial list -- see the "CHANGELOG":CHANGELOG for full details.
76
80
 
@@ -21,8 +21,8 @@ module Buildr #:nodoc:
21
21
 
22
22
  # Abstract base class for IdeaModule and IdeaProject
23
23
  class IdeaFile
24
- DEFAULT_SUFFIX = ""
25
- DEFAULT_LOCAL_REPOSITORY_ENV_OVERRIDE = "MAVEN_REPOSITORY"
24
+ DEFAULT_SUFFIX = ''
25
+ DEFAULT_LOCAL_REPOSITORY_ENV_OVERRIDE = 'MAVEN_REPOSITORY'
26
26
 
27
27
  attr_reader :buildr_project
28
28
  attr_writer :suffix
@@ -50,6 +50,21 @@ module Buildr #:nodoc:
50
50
  self.components << create_component(name, attrs, &xml)
51
51
  end
52
52
 
53
+ def add_component_from_file(filename)
54
+ self.components << lambda do
55
+ raise "Unable to locate file #{filename} adding component to idea file" unless File.exist?(filename)
56
+ Buildr::IntellijIdea.new_document(IO.read(filename)).root
57
+ end
58
+ end
59
+
60
+ def add_component_from_artifact(artifact)
61
+ self.components << lambda do
62
+ a = Buildr.artifact(artifact)
63
+ a.invoke
64
+ Buildr::IntellijIdea.new_document(IO.read(a.to_s)).root
65
+ end
66
+ end
67
+
53
68
  # IDEA can not handle text content with indents so need to removing indenting
54
69
  # Can not pass true as third argument as the ruby library seems broken
55
70
  def write(f)
@@ -131,7 +146,7 @@ module Buildr #:nodoc:
131
146
  end
132
147
  if self.template
133
148
  template_doc = load_document(self.template)
134
- REXML::XPath.each(template_doc, "//component") do |element|
149
+ REXML::XPath.each(template_doc, '//component') do |element|
135
150
  inject_component(doc, element)
136
151
  end
137
152
  end
@@ -164,7 +179,7 @@ module Buildr #:nodoc:
164
179
 
165
180
  # IdeaModule represents an .iml file
166
181
  class IdeaModule < IdeaFile
167
- DEFAULT_TYPE = "JAVA_MODULE"
182
+ DEFAULT_TYPE = 'JAVA_MODULE'
168
183
 
169
184
  attr_accessor :type
170
185
  attr_accessor :group
@@ -184,11 +199,11 @@ module Buildr #:nodoc:
184
199
  end
185
200
 
186
201
  def jdk_version
187
- @jdk_version || buildr_project.compile.options.source || "1.6"
202
+ @jdk_version || buildr_project.compile.options.source || '1.7'
188
203
  end
189
204
 
190
205
  def extension
191
- "iml"
206
+ 'iml'
192
207
  end
193
208
 
194
209
  def main_source_directories
@@ -252,7 +267,7 @@ module Buildr #:nodoc:
252
267
  end
253
268
 
254
269
  def add_gwt_facet(modules = {}, options = {})
255
- name = options[:name] || "GWT"
270
+ name = options[:name] || 'GWT'
256
271
  detected_gwt_version = nil
257
272
  if options[:gwt_dev_artifact]
258
273
  a = Buildr.artifact(options[:gwt_dev_artifact])
@@ -262,10 +277,10 @@ module Buildr #:nodoc:
262
277
 
263
278
  settings =
264
279
  {
265
- :webFacet => "Web",
266
- :compilerMaxHeapSize => "512",
267
- :compilerParameters => "-draftCompile -localWorkers 2 -strict",
268
- :gwtScriptOutputStyle => "PRETTY"
280
+ :webFacet => 'Web',
281
+ :compilerMaxHeapSize => '512',
282
+ :compilerParameters => '-draftCompile -localWorkers 2 -strict',
283
+ :gwtScriptOutputStyle => 'PRETTY'
269
284
  }.merge(options[:settings] || {})
270
285
 
271
286
  buildr_project.compile.dependencies.each do |d|
@@ -277,12 +292,12 @@ module Buildr #:nodoc:
277
292
 
278
293
  if detected_gwt_version
279
294
  settings[:gwtSdkUrl] = resolve_path(File.dirname(detected_gwt_version))
280
- settings[:gwtSdkType] = "maven"
295
+ settings[:gwtSdkType] = 'maven'
281
296
  else
282
- settings[:gwtSdkUrl] = "file://$GWT_TOOLS$"
297
+ settings[:gwtSdkUrl] = 'file://$GWT_TOOLS$'
283
298
  end
284
299
 
285
- add_facet(name, "gwt") do |f|
300
+ add_facet(name, 'gwt') do |f|
286
301
  f.configuration do |c|
287
302
  settings.each_pair do |k, v|
288
303
  c.setting :name => k.to_s, :value => v.to_s
@@ -297,10 +312,10 @@ module Buildr #:nodoc:
297
312
  end
298
313
 
299
314
  def add_web_facet(options = {})
300
- name = options[:name] || "Web"
315
+ name = options[:name] || 'Web'
301
316
  default_webroots = {}
302
- default_webroots[buildr_project._(:source, :main, :webapp)] = "/" if File.exist?(buildr_project._(:source, :main, :webapp))
303
- buildr_project.assets.paths.each {|p| default_webroots[p] = "/" }
317
+ default_webroots[buildr_project._(:source, :main, :webapp)] = '/' if File.exist?(buildr_project._(:source, :main, :webapp))
318
+ buildr_project.assets.paths.each {|p| default_webroots[p] = '/' }
304
319
  webroots = options[:webroots] || default_webroots
305
320
  default_deployment_descriptors = []
306
321
  ['web.xml', 'sun-web.xml', 'glassfish-web.xml', 'jetty-web.xml', 'geronimo-web.xml',
@@ -309,14 +324,14 @@ module Buildr #:nodoc:
309
324
  'ibm-web-bnd.xml', 'ibm-web-ext.xml', 'ibm-web-ext-pme.xml'].
310
325
  each do |descriptor|
311
326
  webroots.each_pair do |path, relative_url|
312
- next unless relative_url == "/"
327
+ next unless relative_url == '/'
313
328
  d = "#{path}/WEB-INF/#{descriptor}"
314
329
  default_deployment_descriptors << d if File.exist?(d)
315
330
  end
316
331
  end
317
332
  deployment_descriptors = options[:deployment_descriptors] || default_deployment_descriptors
318
333
 
319
- add_facet(name, "web") do |f|
334
+ add_facet(name, 'web') do |f|
320
335
  f.configuration do |c|
321
336
  c.descriptors do |d|
322
337
  deployment_descriptors.each do |deployment_descriptor|
@@ -339,22 +354,22 @@ module Buildr #:nodoc:
339
354
  end
340
355
 
341
356
  def add_jruby_facet(options = {})
342
- name = options[:name] || "JRuby"
357
+ name = options[:name] || 'JRuby'
343
358
 
344
359
  ruby_version_file = buildr_project._('.ruby-version')
345
360
  default_jruby_version = File.exist?(ruby_version_file) ? "rbenv: #{IO.read(ruby_version_file).strip}" : 'jruby-1.6.7.2'
346
361
  jruby_version = options[:jruby_version] || default_jruby_version
347
- add_facet(name, "JRUBY") do |f|
362
+ add_facet(name, 'JRUBY') do |f|
348
363
  f.configuration do |c|
349
- c.JRUBY_FACET_CONFIG_ID :NAME => "JRUBY_SDK_NAME", :VALUE => jruby_version
350
- c.LOAD_PATH :number => "0"
351
- c.I18N_FOLDERS :number => "0"
364
+ c.JRUBY_FACET_CONFIG_ID :NAME => 'JRUBY_SDK_NAME', :VALUE => jruby_version
365
+ c.LOAD_PATH :number => '0'
366
+ c.I18N_FOLDERS :number => '0'
352
367
  end
353
368
  end
354
369
  end
355
370
 
356
371
  def add_jpa_facet(options = {})
357
- name = options[:name] || "JPA"
372
+ name = options[:name] || 'JPA'
358
373
 
359
374
  source_roots = [buildr_project.iml.main_source_directories, buildr_project.compile.sources, buildr_project.resources.sources].flatten.compact
360
375
  default_deployment_descriptors = []
@@ -384,11 +399,11 @@ module Buildr #:nodoc:
384
399
  end
385
400
  end
386
401
 
387
- add_facet(name, "jpa") do |f|
402
+ add_facet(name, 'jpa') do |f|
388
403
  f.configuration do |c|
389
404
  if provider
390
- c.setting :name => "validation-enabled", :value => validation_enabled
391
- c.setting :name => "provider-name", :value => provider
405
+ c.setting :name => 'validation-enabled', :value => validation_enabled
406
+ c.setting :name => 'provider-name', :value => provider
392
407
  end
393
408
  c.tag!('datasource-mapping') do |ds|
394
409
  ds.tag!('factory-entry', :name => factory_entry)
@@ -401,7 +416,7 @@ module Buildr #:nodoc:
401
416
  end
402
417
 
403
418
  def add_ejb_facet(options = {})
404
- name = options[:name] || "EJB"
419
+ name = options[:name] || 'EJB'
405
420
 
406
421
  default_ejb_roots = [buildr_project.iml.main_source_directories, buildr_project.compile.sources, buildr_project.resources.sources].flatten.compact
407
422
  ejb_roots = options[:ejb_roots] || default_ejb_roots
@@ -420,7 +435,7 @@ module Buildr #:nodoc:
420
435
  end
421
436
  deployment_descriptors = options[:deployment_descriptors] || default_deployment_descriptors
422
437
 
423
- add_facet(name, "ejb") do |facet|
438
+ add_facet(name, 'ejb') do |facet|
424
439
  facet.configuration do |c|
425
440
  c.descriptors do |d|
426
441
  deployment_descriptors.each do |deployment_descriptor|
@@ -464,7 +479,7 @@ module Buildr #:nodoc:
464
479
 
465
480
  def base_document
466
481
  target = StringIO.new
467
- Builder::XmlMarkup.new(:target => target).module(:version => "4", :relativePaths => "true", :type => self.type)
482
+ Builder::XmlMarkup.new(:target => target).module(:version => '4', :relativePaths => 'true', :type => self.type)
468
483
  Buildr::IntellijIdea.new_document(target.string)
469
484
  end
470
485
 
@@ -480,11 +495,11 @@ module Buildr #:nodoc:
480
495
  end
481
496
 
482
497
  def facet_component
483
- create_composite_component("FacetManager", {}, self.facets)
498
+ create_composite_component('FacetManager', {}, self.facets)
484
499
  end
485
500
 
486
501
  def module_root_component
487
- create_component("NewModuleRootManager", "inherit-compiler-output" => "false") do |xml|
502
+ create_component('NewModuleRootManager', 'inherit-compiler-output' => 'false') do |xml|
488
503
  generate_compile_output(xml)
489
504
  generate_content(xml) unless skip_content?
490
505
  generate_initial_order_entries(xml)
@@ -535,17 +550,17 @@ module Buildr #:nodoc:
535
550
  end
536
551
 
537
552
  def resolve_path(path)
538
- resolve_path_from_base(path, "$MODULE_DIR$")
553
+ resolve_path_from_base(path, '$MODULE_DIR$')
539
554
  end
540
555
 
541
556
  def generate_compile_output(xml)
542
557
  xml.output(:url => file_path(self.main_output_dir.to_s))
543
- xml.tag!("output-test", :url => file_path(self.test_output_dir.to_s))
544
- xml.tag!("exclude-output")
558
+ xml.tag!('output-test', :url => file_path(self.test_output_dir.to_s))
559
+ xml.tag!('exclude-output')
545
560
  end
546
561
 
547
562
  def generate_content(xml)
548
- xml.content(:url => "file://$MODULE_DIR$") do
563
+ xml.content(:url => 'file://$MODULE_DIR$') do
549
564
  # Source folders
550
565
  {
551
566
  :main => self.main_source_directories,
@@ -567,16 +582,16 @@ module Buildr #:nodoc:
567
582
  end
568
583
 
569
584
  def relative_dir_inside_dir?(dir)
570
- !dir.include?("../")
585
+ !dir.include?('../')
571
586
  end
572
587
 
573
588
  def generate_initial_order_entries(xml)
574
- xml.orderEntry :type => "sourceFolder", :forTests => "false"
575
- xml.orderEntry :type => "jdk", :jdkName => jdk_version, :jdkType => "JavaSDK"
589
+ xml.orderEntry :type => 'sourceFolder', :forTests => 'false'
590
+ xml.orderEntry :type => 'jdk', :jdkName => jdk_version, :jdkType => 'JavaSDK'
576
591
  end
577
592
 
578
593
  def generate_project_dependency(xml, other_project, export, test = false)
579
- attribs = {:type => 'module', "module-name" => other_project}
594
+ attribs = {:type => 'module', 'module-name' => other_project}
580
595
  attribs[:exported] = '' if export
581
596
  attribs[:scope] = 'TEST' if test
582
597
  xml.orderEntry attribs
@@ -633,27 +648,29 @@ module Buildr #:nodoc:
633
648
  end
634
649
 
635
650
  def version
636
- @version || "12"
651
+ @version || '13'
637
652
  end
638
653
 
639
654
  def jdk_version
640
- @jdk_version ||= buildr_project.compile.options.source || "1.6"
655
+ @jdk_version ||= buildr_project.compile.options.source || '1.7'
641
656
  end
642
657
 
643
658
  def add_artifact(name, type, build_on_make = false)
644
659
  add_to_composite_component(self.artifacts) do |xml|
645
- xml.artifact(:name => name, :type => type, :"build-on-make" => build_on_make) do |xml|
660
+ xml.artifact(:name => name, :type => type, 'build-on-make' => build_on_make) do |xml|
646
661
  yield xml if block_given?
647
662
  end
648
663
  end
649
664
  end
650
665
 
651
- def add_configuration(name, type, factory_name, default = false)
666
+ def add_configuration(name, type, factory_name, default = false, options = {})
652
667
  add_to_composite_component(self.configurations) do |xml|
653
- options = {:type => type, :factoryName => factory_name}
654
- options[:name] = name unless default
655
- options[:default] = true if default
656
- xml.configuration(options) do |xml|
668
+ params = options.dup
669
+ params[:type] = type
670
+ params[:factoryName] = factory_name
671
+ params[:name] = name unless default
672
+ params[:default] = true if default
673
+ xml.configuration(params) do |xml|
657
674
  yield xml if block_given?
658
675
  end
659
676
  end
@@ -667,15 +684,15 @@ module Buildr #:nodoc:
667
684
 
668
685
  def add_postgres_data_source(name, options = {})
669
686
  if options[:url].nil? && options[:database]
670
- default_url = "jdbc:postgresql://#{(options[:host] || "127.0.0.1")}:#{(options[:port] || "5432")}/#{options[:database]}"
687
+ default_url = "jdbc:postgresql://#{(options[:host] || '127.0.0.1')}:#{(options[:port] || '5432')}/#{options[:database]}"
671
688
  end
672
689
 
673
690
  params = {
674
691
  :driver => 'org.postgresql.Driver',
675
692
  :url => default_url,
676
- :username => ENV["USER"],
693
+ :username => ENV['USER'],
677
694
  :dialect => 'PostgreSQL',
678
- :classpath => ["org.postgresql:postgresql:jar:9.2-1003-jdbc4"]
695
+ :classpath => ['org.postgresql:postgresql:jar:9.2-1003-jdbc4']
679
696
  }.merge(options)
680
697
  add_data_source(name, params)
681
698
  end
@@ -683,13 +700,13 @@ module Buildr #:nodoc:
683
700
  def add_sql_server_data_source(name, options = {})
684
701
  default_url = nil
685
702
  if options[:url].nil? && options[:database]
686
- default_url = "jdbc:jtds:sqlserver://#{(options[:host] || "127.0.0.1")}:#{(options[:port] || "1433")}/#{options[:database]}"
703
+ default_url = "jdbc:jtds:sqlserver://#{(options[:host] || '127.0.0.1')}:#{(options[:port] || '1433')}/#{options[:database]}"
687
704
  end
688
705
 
689
706
  params = {
690
707
  :driver => 'net.sourceforge.jtds.jdbc.Driver',
691
708
  :url => default_url,
692
- :username => ENV["USER"],
709
+ :username => ENV['USER'],
693
710
  :dialect => 'TSQL',
694
711
  :classpath => ['net.sourceforge.jtds:jtds:jar:1.2.7']
695
712
  }.merge(options)
@@ -708,28 +725,28 @@ module Buildr #:nodoc:
708
725
  def add_data_source(name, options = {})
709
726
  add_to_composite_component(self.data_sources) do |xml|
710
727
  data_source_options = {
711
- :source => "LOCAL",
728
+ :source => 'LOCAL',
712
729
  :name => name,
713
730
  :uuid => Buildr::Util.uuid
714
731
  }
715
732
  classpath = options[:classpath] || []
716
- xml.tag!("data-source", data_source_options) do |xml|
717
- xml.tag!("synchronize", (options[:synchronize]||"true"))
718
- xml.tag!("jdbc-driver", options[:driver]) if options[:driver]
719
- xml.tag!("jdbc-url", options[:url]) if options[:url]
720
- xml.tag!("user-name", options[:username]) if options[:username]
721
- xml.tag!("user-password", encrypt(options[:password])) if options[:password]
722
- xml.tag!("schema-pattern", options[:schema_pattern]) if options[:schema_pattern]
723
- xml.tag!("default-schemas", options[:default_schemas]) if options[:default_schemas]
724
- xml.tag!("table-pattern", options[:table_pattern]) if options[:table_pattern]
725
- xml.tag!("default-dialect", options[:dialect]) if options[:dialect]
733
+ xml.tag!('data-source', data_source_options) do |xml|
734
+ xml.tag!('synchronize', (options[:synchronize]||'true'))
735
+ xml.tag!('jdbc-driver', options[:driver]) if options[:driver]
736
+ xml.tag!('jdbc-url', options[:url]) if options[:url]
737
+ xml.tag!('user-name', options[:username]) if options[:username]
738
+ xml.tag!('user-password', encrypt(options[:password])) if options[:password]
739
+ xml.tag!('schema-pattern', options[:schema_pattern]) if options[:schema_pattern]
740
+ xml.tag!('default-schemas', options[:default_schemas]) if options[:default_schemas]
741
+ xml.tag!('table-pattern', options[:table_pattern]) if options[:table_pattern]
742
+ xml.tag!('default-dialect', options[:dialect]) if options[:dialect]
726
743
 
727
744
  xml.libraries do |xml|
728
745
  classpath.each do |classpath_element|
729
746
  a = Buildr.artifact(classpath_element)
730
747
  a.invoke
731
748
  xml.library do |xml|
732
- xml.tag!("url", resolve_path(a.to_s))
749
+ xml.tag!('url', resolve_path(a.to_s))
733
750
  end
734
751
  end
735
752
  end if classpath.size > 0
@@ -741,17 +758,17 @@ module Buildr #:nodoc:
741
758
  artifact_name = to_artifact_name(project, options)
742
759
  artifacts = options[:artifacts] || []
743
760
 
744
- add_artifact(artifact_name, "exploded-war", build_on_make(options)) do |xml|
761
+ add_artifact(artifact_name, 'exploded-war', build_on_make(options)) do |xml|
745
762
  dependencies = (options[:dependencies] || ([project] + project.compile.dependencies)).flatten
746
763
  libraries, projects = partition_dependencies(dependencies)
747
764
 
748
765
  emit_output_path(xml, artifact_name, options)
749
- xml.root :id => "root" do
750
- xml.element :id => "directory", :name => "WEB-INF" do
751
- xml.element :id => "directory", :name => "classes" do
766
+ xml.root :id => 'root' do
767
+ xml.element :id => 'directory', :name => 'WEB-INF' do
768
+ xml.element :id => 'directory', :name => 'classes' do
752
769
  artifact_content(xml, project, projects, options)
753
770
  end
754
- xml.element :id => "directory", :name => "lib" do
771
+ xml.element :id => 'directory', :name => 'lib' do
755
772
  emit_libraries(xml, libraries)
756
773
  emit_jar_artifacts(xml, artifacts)
757
774
  end
@@ -760,16 +777,16 @@ module Buildr #:nodoc:
760
777
  if options[:enable_war].nil? || options[:enable_war] || (options[:war_module_names] && options[:war_module_names].size > 0)
761
778
  module_names = options[:war_module_names] || [project.iml.id]
762
779
  module_names.each do |module_name|
763
- facet_name = options[:war_facet_name] || "Web"
764
- xml.element :id => "javaee-facet-resources", :facet => "#{module_name}/web/#{facet_name}"
780
+ facet_name = options[:war_facet_name] || 'Web'
781
+ xml.element :id => 'javaee-facet-resources', :facet => "#{module_name}/web/#{facet_name}"
765
782
  end
766
783
  end
767
784
 
768
785
  if options[:enable_gwt] || (options[:gwt_module_names] && options[:gwt_module_names].size > 0)
769
786
  module_names = options[:gwt_module_names] || [project.iml.id]
770
787
  module_names.each do |module_name|
771
- facet_name = options[:gwt_facet_name] || "GWT"
772
- xml.element :id => "gwt-compiler-output", :facet => "#{module_name}/gwt/#{facet_name}"
788
+ facet_name = options[:gwt_facet_name] || 'GWT'
789
+ xml.element :id => 'gwt-compiler-output', :facet => "#{module_name}/gwt/#{facet_name}"
773
790
  end
774
791
  end
775
792
  end
@@ -779,14 +796,14 @@ module Buildr #:nodoc:
779
796
  def add_exploded_ear_artifact(project, options ={})
780
797
  artifact_name = to_artifact_name(project, options)
781
798
 
782
- add_artifact(artifact_name, "exploded-ear", build_on_make(options)) do |xml|
799
+ add_artifact(artifact_name, 'exploded-ear', build_on_make(options)) do |xml|
783
800
  dependencies = (options[:dependencies] || ([project] + project.compile.dependencies)).flatten
784
801
  libraries, projects = partition_dependencies(dependencies)
785
802
 
786
803
  emit_output_path(xml, artifact_name, options)
787
- xml.root :id => "root" do
804
+ xml.root :id => 'root' do
788
805
  emit_module_output(xml, projects)
789
- xml.element :id => "directory", :name => "lib" do
806
+ xml.element :id => 'directory', :name => 'lib' do
790
807
  emit_libraries(xml, libraries)
791
808
  end
792
809
  end
@@ -801,9 +818,9 @@ module Buildr #:nodoc:
801
818
  raise "Unable to add non-project dependencies (#{libraries.inspect}) to jar artifact" if libraries.size > 0
802
819
 
803
820
  jar_name = "#{artifact_name}.jar"
804
- add_artifact(jar_name, "jar", build_on_make(options)) do |xml|
821
+ add_artifact(jar_name, 'jar', build_on_make(options)) do |xml|
805
822
  emit_output_path(xml, artifact_name, options)
806
- xml.root(:id => "archive", :name => jar_name) do
823
+ xml.root(:id => 'archive', :name => jar_name) do
807
824
  artifact_content(xml, project, projects, options)
808
825
  end
809
826
  end
@@ -812,13 +829,13 @@ module Buildr #:nodoc:
812
829
  def add_exploded_ejb_artifact(project, options = {})
813
830
  artifact_name = to_artifact_name(project, options)
814
831
 
815
- add_artifact(artifact_name, "exploded-ejb", build_on_make(options)) do |xml|
832
+ add_artifact(artifact_name, 'exploded-ejb', build_on_make(options)) do |xml|
816
833
  dependencies = (options[:dependencies] || [project]).flatten
817
834
  libraries, projects = partition_dependencies(dependencies)
818
835
  raise "Unable to add non-project dependencies (#{libraries.inspect}) to ejb artifact" if libraries.size > 0
819
836
 
820
837
  emit_output_path(xml, artifact_name, options)
821
- xml.root :id => "root" do
838
+ xml.root :id => 'root' do
822
839
  artifact_content(xml, project, projects, options)
823
840
  end
824
841
  end
@@ -826,7 +843,7 @@ module Buildr #:nodoc:
826
843
 
827
844
  def add_java_configuration(project, classname, options = {})
828
845
  args = options[:args] || ''
829
- dir = options[:dir] || "file://$PROJECT_DIR$/"
846
+ dir = options[:dir] || 'file://$PROJECT_DIR$/'
830
847
  debug_port = options[:debug_port] || 2599
831
848
  module_name = options[:module_name] || project.iml.id
832
849
  jvm_args = options[:jvm_args] || ''
@@ -888,33 +905,53 @@ module Buildr #:nodoc:
888
905
  end
889
906
  end
890
907
 
891
- def add_gwt_configuration(launch_page, project, options = {})
892
- name = options[:name] || "Run #{launch_page}"
893
- shell_parameters = options[:shell_parameters] || ""
894
- vm_parameters = options[:vm_parameters] || "-Xmx512m"
908
+ def add_gwt_configuration(project, options = {})
909
+ launch_page = options[:launch_page]
910
+ name = options[:name] || (launch_page ? "Run #{launch_page}" : "Run #{project.name} DevMode")
911
+ shell_parameters = options[:shell_parameters]
912
+ vm_parameters = options[:vm_parameters] || '-Xmx512m'
913
+ singleton = options[:singleton].nil? ? true : !!options[:singleton]
914
+ super_dev = options[:super_dev].nil? ? true : !!options[:super_dev]
915
+ gwt_module = options[:gwt_module]
916
+
917
+ start_javascript_debugger = options[:start_javascript_debugger].nil? ? true : !!options[:start_javascript_debugger]
895
918
 
896
- add_configuration(name, "GWT.ConfigurationType", "GWT Configuration") do |xml|
919
+ add_configuration(name, 'GWT.ConfigurationType', 'GWT Configuration', false, :singleton => singleton) do |xml|
897
920
  xml.module(:name => project.iml.id)
898
- xml.option(:name => "RUN_PAGE", :value => launch_page)
899
- xml.option(:name => "SHELL_PARAMETERS", :value => shell_parameters)
900
- xml.option(:name => "VM_PARAMETERS", :value => vm_parameters)
901
921
 
902
- xml.RunnerSettings(:RunnerId => "Run")
903
- xml.ConfigurationWrapper(:RunnerId => "Run")
922
+ xml.option(:name => 'VM_PARAMETERS', :value => vm_parameters)
923
+ xml.option(:name => 'RUN_PAGE', :value => launch_page) if launch_page
924
+ xml.option(:name => 'GWT_MODULE', :value => gwt_module) if gwt_module
925
+
926
+ xml.option(:name => 'START_JAVASCRIPT_DEBUGGER', :value => start_javascript_debugger)
927
+ xml.option(:name => 'USE_SUPER_DEV_MODE', :value => super_dev)
928
+ xml.option(:name => 'SHELL_PARAMETERS', :value => shell_parameters) if shell_parameters
929
+
930
+ xml.RunnerSettings(:RunnerId => 'Debug') do |xml|
931
+ xml.option(:name => 'DEBUG_PORT', :value => '')
932
+ xml.option(:name => 'TRANSPORT', :value => 0)
933
+ xml.option(:name => 'LOCAL', :value => true)
934
+ end
935
+
936
+ xml.RunnerSettings(:RunnerId => 'Run')
937
+ xml.ConfigurationWrapper(:RunnerId => 'Run')
938
+ xml.ConfigurationWrapper(:RunnerId => 'Debug')
904
939
  xml.method()
905
940
  end
906
941
  end
907
942
 
908
943
  def add_glassfish_configuration(project, options = {})
909
944
  artifact_name = options[:name] || project.iml.id
910
- server_name = options[:server_name] || 'Glassfish 4.0.0'
945
+ version = options[:version] || '4.1.0'
946
+ server_name = options[:server_name] || "GlassFish #{version}"
947
+ configuration_name = options[:configuration_name] || server_name
911
948
  domain_name = options[:domain] || project.iml.id
912
949
  domain_port = options[:port] || '9009'
913
950
  packaged = options[:packaged] || {}
914
951
  exploded = options[:exploded] || {}
915
952
 
916
953
  add_to_composite_component(self.configurations) do |xml|
917
- xml.configuration(:name => server_name, :type => 'GlassfishConfiguration', :factoryName => 'Local', :default => false, :APPLICATION_SERVER_NAME => server_name) do |xml|
954
+ xml.configuration(:name => configuration_name, :type => 'GlassfishConfiguration', :factoryName => 'Local', :default => false, :APPLICATION_SERVER_NAME => server_name) do |xml|
918
955
  xml.option(:name => 'OPEN_IN_BROWSER', :value => 'false')
919
956
  xml.option(:name => 'UPDATING_POLICY', :value => 'restart-server')
920
957
 
@@ -1041,12 +1078,12 @@ module Buildr #:nodoc:
1041
1078
  end
1042
1079
 
1043
1080
  def extension
1044
- "ipr"
1081
+ 'ipr'
1045
1082
  end
1046
1083
 
1047
1084
  def base_document
1048
1085
  target = StringIO.new
1049
- Builder::XmlMarkup.new(:target => target).project(:version => "4")
1086
+ Builder::XmlMarkup.new(:target => target).project(:version => '4')
1050
1087
  Buildr::IntellijIdea.new_document(target.string)
1051
1088
  end
1052
1089
 
@@ -1076,25 +1113,25 @@ module Buildr #:nodoc:
1076
1113
 
1077
1114
  def project_root_manager_component
1078
1115
  attribs = {}
1079
- attribs["version"] = "2"
1080
- attribs["languageLevel"] = "JDK_#{self.jdk_version.gsub('.', '_')}"
1081
- attribs["assert-keyword"] = "true"
1082
- attribs["jdk-15"] = (jdk_version >= "1.5").to_s
1083
- attribs["project-jdk-name"] = self.jdk_version
1084
- attribs["project-jdk-type"] = "JavaSDK"
1085
- create_component("ProjectRootManager", attribs) do |xml|
1086
- xml.output("url" => file_path(buildr_project._(:target, :idea, :project_out)))
1116
+ attribs['version'] = '2'
1117
+ attribs['languageLevel'] = "JDK_#{self.jdk_version.gsub('.', '_')}"
1118
+ attribs['assert-keyword'] = 'true'
1119
+ attribs['jdk-15'] = (jdk_version >= '1.5').to_s
1120
+ attribs['project-jdk-name'] = self.jdk_version
1121
+ attribs['project-jdk-type'] = 'JavaSDK'
1122
+ create_component('ProjectRootManager', attribs) do |xml|
1123
+ xml.output('url' => file_path(buildr_project._(:target, :idea, :project_out)))
1087
1124
  end
1088
1125
  end
1089
1126
 
1090
1127
  def project_details_component
1091
- create_component("ProjectDetails") do |xml|
1092
- xml.option("name" => "projectName", "value" => self.name)
1128
+ create_component('ProjectDetails') do |xml|
1129
+ xml.option('name' => 'projectName', 'value' => self.name)
1093
1130
  end
1094
1131
  end
1095
1132
 
1096
1133
  def modules_component
1097
- create_component("ProjectModuleManager") do |xml|
1134
+ create_component('ProjectModuleManager') do |xml|
1098
1135
  xml.modules do
1099
1136
  buildr_project.projects.select { |subp| subp.iml? }.each do |subproject|
1100
1137
  module_path = subproject.base_dir.gsub(/^#{buildr_project.base_dir}\//, '')
@@ -1131,15 +1168,15 @@ module Buildr #:nodoc:
1131
1168
 
1132
1169
  project_directories.each do |dir|
1133
1170
  if File.directory?("#{dir}/.git")
1134
- mappings[dir] = "Git"
1171
+ mappings[dir] = 'Git'
1135
1172
  elsif File.directory?("#{dir}/.svn")
1136
- mappings[dir] = "svn"
1173
+ mappings[dir] = 'svn'
1137
1174
  end
1138
1175
  end
1139
1176
 
1140
1177
  return nil if 0 == mappings.size
1141
1178
 
1142
- create_component("VcsDirectoryMappings") do |xml|
1179
+ create_component('VcsDirectoryMappings') do |xml|
1143
1180
  mappings.each_pair do |dir, vcs_type|
1144
1181
  resolved_dir = resolve_path(dir)
1145
1182
  mapped_dir = resolved_dir == '$PROJECT_DIR$/.' ? buildr_project.base_dir : resolved_dir
@@ -1149,19 +1186,19 @@ module Buildr #:nodoc:
1149
1186
  end
1150
1187
 
1151
1188
  def data_sources_component
1152
- create_composite_component("DataSourceManagerImpl", {:format => "xml", :hash => "3208837817"}, self.data_sources)
1189
+ create_composite_component('DataSourceManagerImpl', {:format => 'xml', :hash => '3208837817'}, self.data_sources)
1153
1190
  end
1154
1191
 
1155
1192
  def artifacts_component
1156
- create_composite_component("ArtifactManager", {}, self.artifacts)
1193
+ create_composite_component('ArtifactManager', {}, self.artifacts)
1157
1194
  end
1158
1195
 
1159
1196
  def configurations_component
1160
- create_composite_component("ProjectRunConfigurationManager", {}, self.configurations)
1197
+ create_composite_component('ProjectRunConfigurationManager', {}, self.configurations)
1161
1198
  end
1162
1199
 
1163
1200
  def resolve_path(path)
1164
- resolve_path_from_base(path, "$PROJECT_DIR$")
1201
+ resolve_path_from_base(path, '$PROJECT_DIR$')
1165
1202
  end
1166
1203
 
1167
1204
  private
@@ -1176,19 +1213,19 @@ module Buildr #:nodoc:
1176
1213
 
1177
1214
  def emit_jar_artifacts(xml, artifacts)
1178
1215
  artifacts.each do |p|
1179
- xml.element :id => "artifact", 'artifact-name' => "#{p}.jar"
1216
+ xml.element :id => 'artifact', 'artifact-name' => "#{p}.jar"
1180
1217
  end
1181
1218
  end
1182
1219
 
1183
1220
  def emit_libraries(xml, libraries)
1184
1221
  libraries.each(&:invoke).map(&:to_s).each do |dependency_path|
1185
- xml.element :id => "file-copy", :path => resolve_path(dependency_path)
1222
+ xml.element :id => 'file-copy', :path => resolve_path(dependency_path)
1186
1223
  end
1187
1224
  end
1188
1225
 
1189
1226
  def emit_module_output(xml, projects)
1190
1227
  projects.each do |p|
1191
- xml.element :id => "module-output", :name => p.iml.id
1228
+ xml.element :id => 'module-output', :name => p.iml.id
1192
1229
  end
1193
1230
  end
1194
1231
 
@@ -1202,8 +1239,8 @@ module Buildr #:nodoc:
1202
1239
  if options[:enable_ejb] || (options[:ejb_module_names] && options[:ejb_module_names].size > 0)
1203
1240
  module_names = options[:ejb_module_names] || [project.iml.id]
1204
1241
  module_names.each do |module_name|
1205
- facet_name = options[:ejb_facet_name] || "EJB"
1206
- xml.element :id => "javaee-facet-resources", :facet => "#{module_name}/ejb/#{facet_name}"
1242
+ facet_name = options[:ejb_facet_name] || 'EJB'
1243
+ xml.element :id => 'javaee-facet-resources', :facet => "#{module_name}/ejb/#{facet_name}"
1207
1244
  end
1208
1245
  end
1209
1246
  end
@@ -1212,14 +1249,14 @@ module Buildr #:nodoc:
1212
1249
  if options[:enable_jpa] || (options[:jpa_module_names] && options[:jpa_module_names].size > 0)
1213
1250
  module_names = options[:jpa_module_names] || [project.iml.id]
1214
1251
  module_names.each do |module_name|
1215
- facet_name = options[:jpa_facet_name] || "JPA"
1216
- xml.element :id => "jpa-descriptors", :facet => "#{module_name}/jpa/#{facet_name}"
1252
+ facet_name = options[:jpa_facet_name] || 'JPA'
1253
+ xml.element :id => 'jpa-descriptors', :facet => "#{module_name}/jpa/#{facet_name}"
1217
1254
  end
1218
1255
  end
1219
1256
  end
1220
1257
 
1221
1258
  def encrypt(password)
1222
- password.bytes.inject("") { |x, y| x + (y ^ 0xdfaa).to_s(16) }
1259
+ password.bytes.inject('') { |x, y| x + (y ^ 0xdfaa).to_s(16) }
1223
1260
  end
1224
1261
 
1225
1262
  def partition_dependencies(dependencies)
@@ -1229,7 +1266,7 @@ module Buildr #:nodoc:
1229
1266
  dependencies.each do |dependency|
1230
1267
  artifacts = Buildr.artifacts(dependency)
1231
1268
  artifacts_as_strings = artifacts.map(&:to_s)
1232
- all_projects = Buildr::Project.instance_variable_get("@projects").keys
1269
+ all_projects = Buildr::Project.instance_variable_get('@projects').keys
1233
1270
  project = Buildr.projects(all_projects).detect do |project|
1234
1271
  [project.packages, project.compile.target, project.resources.target, project.test.compile.target, project.test.resources.target].flatten.
1235
1272
  detect { |component| artifacts_as_strings.include?(component.to_s) }
@@ -1248,20 +1285,20 @@ module Buildr #:nodoc:
1248
1285
  include Extension
1249
1286
 
1250
1287
  first_time do
1251
- desc "Generate Intellij IDEA artifacts for all projects"
1252
- Project.local_task "idea" => "artifacts"
1288
+ desc 'Generate Intellij IDEA artifacts for all projects'
1289
+ Project.local_task 'idea' => 'artifacts'
1253
1290
 
1254
- desc "Delete the generated Intellij IDEA artifacts"
1255
- Project.local_task "idea:clean"
1291
+ desc 'Delete the generated Intellij IDEA artifacts'
1292
+ Project.local_task 'idea:clean'
1256
1293
  end
1257
1294
 
1258
1295
  before_define do |project|
1259
- project.recursive_task("idea")
1260
- project.recursive_task("idea:clean")
1296
+ project.recursive_task('idea')
1297
+ project.recursive_task('idea:clean')
1261
1298
  end
1262
1299
 
1263
1300
  after_define do |project|
1264
- idea = project.task("idea")
1301
+ idea = project.task('idea')
1265
1302
 
1266
1303
  files = [
1267
1304
  (project.iml if project.iml?),
@@ -1273,10 +1310,10 @@ module Buildr #:nodoc:
1273
1310
  idea.enhance do |task|
1274
1311
  mkdir_p module_dir
1275
1312
  info "Writing #{ideafile.filename}"
1276
- t = Tempfile.open("buildr-idea")
1313
+ t = Tempfile.open('buildr-idea')
1277
1314
  temp_filename = t.path
1278
1315
  t.close!
1279
- File.open(temp_filename, "w") do |f|
1316
+ File.open(temp_filename, 'w') do |f|
1280
1317
  ideafile.write f
1281
1318
  end
1282
1319
  mv temp_filename, ideafile.filename
@@ -1287,7 +1324,7 @@ module Buildr #:nodoc:
1287
1324
  end
1288
1325
  end
1289
1326
 
1290
- project.task("idea:clean") do
1327
+ project.task('idea:clean') do
1291
1328
  files.each do |f|
1292
1329
  info "Removing #{f.filename}" if File.exist?(f.filename)
1293
1330
  rm_rf f.filename
@@ -1299,7 +1336,7 @@ module Buildr #:nodoc:
1299
1336
  if ipr?
1300
1337
  @ipr ||= IdeaProject.new(self)
1301
1338
  else
1302
- raise "Only the root project has an IPR"
1339
+ raise 'Only the root project has an IPR'
1303
1340
  end
1304
1341
  end
1305
1342