buildr 1.4.9-x86-mswin32 → 1.4.10-x86-mswin32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/bin/buildr CHANGED
@@ -15,5 +15,6 @@
15
15
  # the License.
16
16
 
17
17
  require 'rubygems'
18
+ require 'bundler/setup'
18
19
  require 'buildr'
19
20
  Buildr.application.run
data/buildr.gemspec CHANGED
@@ -66,7 +66,7 @@ for those one-off tasks, with a language that's a joy to use.
66
66
  spec.add_dependency 'rubyforge', '2.0.4'
67
67
  spec.add_dependency 'hoe', '3.1.0'
68
68
  spec.add_dependency 'rjb', '1.4.2' if ($platform.to_s == 'x86-mswin32' || $platform.to_s == 'ruby')
69
- spec.add_dependency 'atoulme-Antwrap', '~> 0.7.2'
69
+ spec.add_dependency 'atoulme-Antwrap', '~> 0.7.4'
70
70
  spec.add_dependency 'diff-lcs', '1.1.3'
71
71
  spec.add_dependency 'rspec-expectations', '2.11.3'
72
72
  spec.add_dependency 'rspec-mocks', '2.11.3'
@@ -74,7 +74,8 @@ for those one-off tasks, with a language that's a joy to use.
74
74
  spec.add_dependency 'rspec', '2.11.0'
75
75
  spec.add_dependency 'xml-simple', '1.1.1'
76
76
  spec.add_dependency 'minitar', '0.5.3'
77
- spec.add_dependency 'jruby-openssl', '>= 0.7' if $platform.to_s == 'java'
77
+ spec.add_dependency 'jruby-openssl', '~> 0.8.2' if $platform.to_s == 'java'
78
+ spec.add_dependency 'bundler'
78
79
 
79
80
  # Unable to get this consistently working under jruby on windows
80
81
  unless $platform.to_s == 'java'
@@ -89,7 +90,6 @@ for those one-off tasks, with a language that's a joy to use.
89
90
 
90
91
  # NOTE: Must update all-in-one.rake if this is updated
91
92
  spec.add_development_dependency 'ffi-ncurses', '0.4.0' if $platform.to_s == 'java'
92
- spec.add_development_dependency 'bundler'
93
93
  spec.add_development_dependency 'win32console' if $platform.to_s == 'x86-mswin32'
94
94
  # Ideally we would depend on psych when the platform has >= 1.9.2 support and jruby platform version > 1.6.6
95
95
  #spec.add_development_dependency 'psych' if RUBY_VERSION >= '1.9.2'
data/doc/download.textile CHANGED
@@ -20,16 +20,28 @@ The source code is included in both source and binary distribution, the Gem dist
20
20
 
21
21
  h2(#dist). Binaries and Source Code
22
22
 
23
+ h3. buildr 1.4.9 (2012-11-08)
24
+
25
+ |_. Package |_. MD5 Checksum |_. PGP |
26
+ | "buildr-1.4.9-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.9/buildr-1.4.9-java.gem | "5ef4ce3e4b44049842f16db642d6d4d4":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9-java.gem.asc |
27
+ | "buildr-1.4.9-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.9/buildr-1.4.9-x86-mswin32.gem | "24f6f063eea5c7d1aa60fedb4ec5f85e":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9-x86-mswin32.gem.asc |
28
+ | "buildr-1.4.9.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.9/buildr-1.4.9.gem | "e028943fa3342964c40b8a0bf1477b45":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.gem.asc |
29
+ | "buildr-1.4.9.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.9/buildr-1.4.9.tgz | "8c4b43b79d4f446cfd713d994451a76e":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.tgz.asc |
30
+ | "buildr-1.4.9.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.9/buildr-1.4.9.zip | "d879312ac99d46a66d816df119d71e17":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.9/buildr-1.4.9.zip.asc |
31
+
32
+ p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.9/KEYS)
33
+
34
+
23
35
  h3. buildr 1.4.8 (2012-11-01)
24
36
 
25
37
  |_. Package |_. MD5 Checksum |_. PGP |
26
- | "buildr-1.4.8-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.8/buildr-1.4.8-java.gem | "68679f89f7e0f90bb4446965d1184e0a":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8-java.gem.asc |
27
- | "buildr-1.4.8-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem | "40abdb4c2ff2bb7232822198e6882ee0":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem.asc |
28
- | "buildr-1.4.8.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.8/buildr-1.4.8.gem | "0e92c281a59d3fc475f1a0184200a70f":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.gem.asc |
29
- | "buildr-1.4.8.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.8/buildr-1.4.8.tgz | "f19029a7dba62917978b42652328bf6c":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.tgz.asc |
30
- | "buildr-1.4.8.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.8/buildr-1.4.8.zip | "8a484f5ec930eba0b93fe9079fd41079":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.8/buildr-1.4.8.zip.asc |
38
+ | "buildr-1.4.8-java.gem":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-java.gem | "68679f89f7e0f90bb4446965d1184e0a":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-java.gem.asc |
39
+ | "buildr-1.4.8-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem | "40abdb4c2ff2bb7232822198e6882ee0":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8-x86-mswin32.gem.asc |
40
+ | "buildr-1.4.8.gem":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.gem | "0e92c281a59d3fc475f1a0184200a70f":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.gem.asc |
41
+ | "buildr-1.4.8.tgz":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.tgz | "f19029a7dba62917978b42652328bf6c":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.tgz.asc |
42
+ | "buildr-1.4.8.zip":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.zip | "8a484f5ec930eba0b93fe9079fd41079":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.8/buildr-1.4.8.zip.asc |
31
43
 
32
- p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.8/KEYS)
44
+ p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.4.8/KEYS)
33
45
 
34
46
 
35
47
  h3. buildr 1.4.7 (2012-05-29)
data/doc/index.textile CHANGED
@@ -46,7 +46,14 @@ 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.8 (Nov 11th, 2012)
49
+ Highlights from Buildr 1.4.9 (Nov 8th, 2012)
50
+
51
+ * Fixed: Fixed the interaction with the FileUtils classes. The last release
52
+ introduced a non-deterministic bug that sometimes caused logging
53
+ preferences to be ignored and the install method to be
54
+ inadvertently overwritten.
55
+
56
+ Highlights from Buildr 1.4.8 (Nov 1st, 2012)
50
57
 
51
58
  * Change: Revert to importing non-verbose FileUtils utility methods to match buildr 1.4.6 release and earlier.
52
59
  * Added: Experimental support for jacoco code coverage tool.
data/etc/KEYS CHANGED
@@ -231,3 +231,90 @@ ApsiYNbEfoq0U4Fj3PFsWXMHngom5lNWLlVSpn7zvhAIwpXY/Np3YFx5BVchCDBG
231
231
  IAU=
232
232
  =dNyx
233
233
  -----END PGP PUBLIC KEY BLOCK-----
234
+ pub 4096R/D6969DDE 2013-02-10 [expires: 2015-02-10]
235
+ uid Peter Donald <peter@realityforge.org>
236
+ sub 4096R/FC72F8B1 2013-02-10 [expires: 2015-02-10]
237
+ -----BEGIN PGP PUBLIC KEY BLOCK-----
238
+ Version: GnuPG v1.4.12 (Darwin)
239
+ Comment: GPGTools - http://gpgtools.org
240
+
241
+ mQENBE+3DnEBCACZZ1LEEPx0C5sTfAJqnFo5uUJWV9d7OPEOV4QkbYkprGAP2C80
242
+ 3L7urVzNUQQeG4XDcY89fUKpNLXtn05AKnsZLUHiPFaJnNGVnMLuGfrxAyfhAeG3
243
+ r0XXL1t4PV1Uieq+VEO+5jmEpU9nPEE6V0EiQ5FIZvEeT3k14PFLKMOxqYIQJEHi
244
+ tgPJySwzdhLAzPyqYUJFEOSRl3IZuibXoMf5NkGYTRuz5uZfMxrH2ht9N27L3c/e
245
+ LpLRdXpJwP/vXuZyZ5tCEu5rIai+bjPjuza7Dd7PxMJDwj155Eg+ff2pwnhMqPXb
246
+ K/dgP1Ek0hiRhgu6VZMe1JYE4caD0IkUQTobABEBAAG0J1BldGVyIERvbmFsZCA8
247
+ cGV0ZXIuai5kb25hbGRAZ21haWwuY29tPokBPwQTAQIAKQUCT7cOcQIbLwUJB4Yf
248
+ gAcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEEwEMYnGlDkOIloH/iReMb39
249
+ 60hcoSV5ySR1rKlyXSIu0dgLExRMPAPc16KP7zE3q8sM1bjEolmYB8lRTnHXK2MV
250
+ u/ukosN9CXJtp22QEJp+IQyl3aI05JEMU0/m81t9fznknUXymIvyTb1JGWqGDCaV
251
+ /N0x71rjF+oIuUv+QeIpEki/Fy4frG4uAQkeSdwaWi9XTKyIKIgHRceZ+cOnjHuf
252
+ RP0LmLeu1djdleJwZuIqhN5z5pOLK3Nctpg8uxCyDzVks2E47dziqwbKKoKLJrCm
253
+ Pau05xVfV0iU0hPGG3z2Vtj1B/UqbuXAPtoz5azMloJ9idDy80rVaXsvxQ/MWbYy
254
+ nWKM9VEAmcGw8MK5AQ0ET7cOcQEIANBmwD7KQx3bFpUl7M9rwsB5X4888fo1wXOT
255
+ S4GsGf8J3WXh0HQR3H0u6LAfmfvaCMptJL2KwoG8w8faHYJ8W2x3kGOLkCoaTVRZ
256
+ Paeja59+PVCFtk5VENOVL0Bgoo0BTsgRz3vA9M5riShLyvBh5bvxKOLjLpVFBalO
257
+ 7dkRQkG5mCAxF+/FwnY/nvsp2edxviLKqTn3lpyYyxS8HriTHVoIRsSLq8ybNwcz
258
+ Us8cKkTBArV0yhbGSNcoC9AbUNpl4QPu4JBB7sI0AyrrW1wkHaPAtjdRikKbG9wL
259
+ 4Ec+M3bGiDWv7Jit7JcLAe6wLgJSZpsGLCJsZe0pEvIrActkCZ0AEQEAAYkCRAQY
260
+ AQIADwUCT7cOcQIbLgUJB4YfgAEpCRBMBDGJxpQ5DsBdIAQZAQIABgUCT7cOcQAK
261
+ CRBYyoUHDFP0FJIMCAClB/aYgeL4V04LcQK1dWLxg8pTXiI25TVmWCc+ZwTlN5dN
262
+ SujGZ6ctjjmZAfl/sG5AtQMKLlMh6csuYjjBvuloyFAmTvEPSlTMAmyPuUPWvcYh
263
+ l+1rB3J07+IDEIRppUngXqqd3m6hDbZlTFZWVPyl7lByaiim9R9C9s0Bo03jzogc
264
+ ueVDOMeDYuXfjYR/bMFLvyCwpHgdr5xg7IVmaJLMiAOqtnT2mJylBv5mSZse+XG8
265
+ nExh2tRpdX+yKlS8R1Kbf4T9F5XnA91bR3J2Gd2YaGuCXhBKnKTeBDISVhuuv5bX
266
+ ATKD57tKl8nVPdH9SKZvosFv5t+UQ+SA+iBf6nbgQ9wH/jRFStYfDJTeyhQOoFQL
267
+ zIz/zuq6iddlV6T5E6DRbjj//e1nBWYFUzHyJ57ZKMvopRidhHRiFY+ZAdlhn/wf
268
+ efq/08hyqtAb0Y4bXdAPMLOIxC1vD8rlk8t36Ec8jepLzgB6g7+oxc4/zfTZIFdX
269
+ h/xR2AmxTe9fsE6xYWOFKb036s5fbr2ED1qWCPN14o+8ZgV93rq3deQS8TzCqFZ0
270
+ yYEv5T1E0TZ2YD4O3+Ftnd+Q46US1KXCHmSkv461wvTnPaLnGK7D+uZzXlQsGI37
271
+ ApsiYNbEfoq0U4Fj3PFsWXMHngom5lNWLlVSpn7zvhAIwpXY/Np3YFx5BVchCDBG
272
+ IAWZAg0EURdlWAEQAN+bjRut/PTrOfgnuUHjkPVcsGqHgZJpH4ojS6iv3Hnwh1tF
273
+ f9h7V+t8rD5tlZNv3sq+0wKh9FXvBBRPgPxjdl4asq19Y39hKyXKBEc4zjytbzZg
274
+ B7xO74yTCm1dzRjCUUBzPrkztl+p0VO181mFPmWEK2rGWmX5lI97chbfWDA9zfyF
275
+ OM5N0rfCK/1zQzsELbCrv7KNLoY7E7PawS5Tnygu65QE3IavS33CANHlzPw1uW5p
276
+ LLJ9AK+t4p4cf/osfpRS9H8j/wewFwWTRHH/rc35rMwXI6F8kRXO+yFXGgy2epN9
277
+ 5pHzSQP0PTb+vtxhDLzCAZuTK4o7VHVzRNG/Ieduifi6Hg3tFSFu5O3X0JKN1/WK
278
+ Js1HKL9WsK5jMHEvTNsmNPzTDRlEObbghgoOf6OlA8t5iMTE7EEJScz0K+iJKHW3
279
+ DsvHLTapE2xGqHQdQseAxt6LrYJhMznB0EaO+OtmEaf8EQQ3pqvBxpr7VemtFgnr
280
+ iBak5yiTdEhHTu3qrZFMFSAsp1S1mx80IrQfqYTRLCao0r4iJmj9h330WNuMwpn2
281
+ B0MQjyLC4Q/D8wKWxdmV/zc1Y7FVZWM+jZVf1qLhFNbtf2b7pN5Q0UcucsJL9aeq
282
+ /Ku9Uxk+0diR65dJS6pom51jT3RuCo8G94njJFn0EOa7SXIyAt0AMW21Qsw7ABEB
283
+ AAG0JVBldGVyIERvbmFsZCA8cGV0ZXJAcmVhbGl0eWZvcmdlLm9yZz6JAj4EEwEC
284
+ ACgFAlEXZVgCGwMFCQPCZwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEFy7
285
+ PLTWlp3ebnQP/RUNoWQ/YB8t4kGTsTDtXKsEgsFiMNULYwcfOgaHN5nhVqdo5igT
286
+ hgGvrGeVKNBvLcKOLHUL/0EE31SDtaykLscnSROnM+ZyeVzssteGgr4E4+5989rn
287
+ SWUuaXamWM+fNsg4chSc8RaxaWdjVDAB9IYYHG+tZ8JNvOWaF1PXr1aliV11FySw
288
+ pUcL2yfRn15N8ihv+uZA3BJUu/Z8FLP8DsDmSct0kFd+p47oQwKHtKe8vnCzr5By
289
+ ycX5Lmj/68cT1liASQDpxs6JkNvbcaRBB5LXLF+SBuW8rICX+wMvTubo6dt/oDvN
290
+ 4lAvy2Jgbx8T33SJxrVQkEL0UWE8LKj00RoA3CHWiNh7cgLPzhwd7dyQz2jU6C76
291
+ 6KZfbu7rrcr6nPKEf4YB33db7SKGqdDjOj5ChLpu3AhhQTyXqX+nNjuun/6ZN5u9
292
+ 0AKWbsZ64hz6DGIam/4Ct21D2u/I/zT+5coGCWh43ZRzAaJ/SYr80t84grSvnZfA
293
+ xgCidkCiYAIXIe3t/3OCGU9wo6W2+sqxX3IcXpLDKpbu+wEGNpxpNYrTybQwG4Uy
294
+ zoVv3f7zcellUvge61RaylzCVkYB+I3uI3VUGu9LmYbU8p0wThVVF8y2GzivqUhV
295
+ W0qlE4AgZBAhc5XAPG++LMjkEFHEyrnpaX2AtF/tRoGFjlPJBRGLLG7wuQINBFEX
296
+ ZVgBEADWoo9LWTnZ9fYA/EsvZIghPqA7FkNTj1p+lQ9SRI4WitL4Kfp+/HGuP6pI
297
+ foCESOQeIYB0akCDg74YKrzTISQWvbpx8mvAuXPTiaeGNM5Zt8T8k4LT+SvVmz0F
298
+ vcXifRarTeUXrTrL2UJEP3cgweFkiRkeP0v9O6eEfdUvBqpQ6ebhGX/UUhNKe0Ke
299
+ vQ8et29WkD43KencJsCi9FpHHB1M3A7g4QVaBdOSdVI1c/m/UWr9cX5L77usWWuJ
300
+ Nu2lbZVbdxRYSwh0/ctVSUMty4uirV4SHtc05qCXPdjTZ14AOGsEMkCRc4u2od7M
301
+ MZKbshR0RL+A46VSCLjs0SfOVJn7yk2Ez6yYaPTvJBAdex0mXGyHAzTpJXrHhnNi
302
+ 26uAbXkOMf3MPn9QuBP+VRaoNB2ZLpUF67nT8W7W5JENZ1QnT7Kgso/GP/11tQ1I
303
+ lcxomO/4OnUjotgcFp7czAB4YCnq0I5A1iUgsGAM9txBwYOaI/OekxlEHIt7NrOT
304
+ e2VSUnBDLrD4ixuXgGpUGq9y8jhWAMH9XawXzKsCOZs6px1hg1qvwEKryLmoJgxV
305
+ bZrhL56vw+SzvqV3uSMiHzqISBBk28M9l7zxQRjBWJPgDOxPRGXlKo8kVBrEMjCI
306
+ sii0myvLgURsZTwsm2Srn50XXrlQgleR62Flu+K5uv2+PWj6FQARAQABiQIlBBgB
307
+ AgAPBQJRF2VYAhsMBQkDwmcAAAoJEFy7PLTWlp3eXdMP/0LAbH+43LY4uhQbzdVF
308
+ xxyRxh36x4sPlgAli/VIj8ktgHU6NiIbGBunLVWz4Hlp1xfqz2DxDl7aaBj6sJaZ
309
+ olGP/23fF4Tn90LE1jmGnl06lidDdVTbVdGMobokKV6Wji7gHhUNllVtKAHXsTVb
310
+ dJu8lJIQVVDFbREgP87AekQfl67e6K9jqxh2xvV31A2Q/yzMWX89QZP8nVPbYEN3
311
+ rUCGYRTnHxbp6C0W+S+EWHEtaDfkigakOvKTAztkTY235ONnE5Po3OJtCkzKNnWF
312
+ +xVTPajhmvB42qofxkxevMSI8VUB5eBLABRhMv74aCgwyndF3HJ5SmDERYj46tCh
313
+ OfwxNrnIKO+Fzi8W1l/wNYtpYYum6m7HSAmgtB+Q/tev89c3LXLPsyGvzJac0z4N
314
+ sJ9IvmgB4s09N2VEkW0yb/XuGT32TFUixwG0WiWhccOSzpDnLAfHZtx0Cuw3b/HH
315
+ QmEfCYI6DuaUi0K3pHivAZrOLTVg8rwHfwZ9log7ykap1wvoIcRORpwg4gkzoJgV
316
+ Zec+6n6Qf1RZyYDCDs+hb0ZDgkCPj41GDTEhlH3cCgfHM+a53ChNmRd6SlRoz7mY
317
+ AbKC6d82L04esDIV38wV9HjEH2n3gIqbMLlS19GXtMHodV/vnrX3qP2u4VobApsA
318
+ vNcZccHdEbAhg06FGA6u16Jc
319
+ =Kl2l
320
+ -----END PGP PUBLIC KEY BLOCK-----
@@ -91,7 +91,7 @@ module Buildr
91
91
  def load_from(name, path = nil)
92
92
  unless path
93
93
  fail "Internal error: attempting to access local setting before buildfile located" unless @application.rakefile
94
- path = File.dirname(@application.rakefile)
94
+ path = File.expand_path(File.dirname(@application.rakefile))
95
95
  end
96
96
  file_name = ['yaml', 'yml'].map { |ext| File.join(path, "#{name}.#{ext}") }.find { |fn| File.exist?(fn) }
97
97
  return {} unless file_name
@@ -483,7 +483,7 @@ module Buildr
483
483
  files = [ File.exist?(new) ? new : old, 'buildr.rb' ].select { |file| File.exist?(file) }
484
484
  files += [ File.expand_path('buildr.rake', ENV['HOME']), File.expand_path('buildr.rake') ].
485
485
  select { |file| File.exist?(file) }.each { |file| warn "Please use '#{file.ext('rb')}' instead of '#{file}'" }
486
- files += (options.rakelib || []).collect { |rlib| Dir["#{rlib}/*.rake"] }.flatten
486
+ files += (options.rakelib || []).collect { |rlib| Dir["#{File.expand_path(rlib)}/*.rake"] }.flatten
487
487
 
488
488
  # Load .buildr/_buildr.rb same directory as buildfile
489
489
  %w{.buildr.rb _buildr.rb}.each do |f|
@@ -492,6 +492,7 @@ module Buildr
492
492
  end
493
493
 
494
494
  files.each do |file|
495
+ file = File.expand_path(file)
495
496
  unless $LOADED_FEATURES.include?(file)
496
497
  load file
497
498
  $LOADED_FEATURES << file
@@ -90,14 +90,14 @@ module Buildr
90
90
 
91
91
  def create_component(name, attrs = {})
92
92
  target = StringIO.new
93
- Builder::XmlMarkup.new(:target => target, :indent => 2).component(attrs.merge({:name => name})) do |xml|
93
+ Builder::XmlMarkup.new(:target => target, :indent => 2).component({:name => name}.merge(attrs)) do |xml|
94
94
  yield xml if block_given?
95
95
  end
96
96
  Buildr::IntellijIdea.new_document(target.string).root
97
97
  end
98
98
 
99
99
  def components
100
- @components ||= self.default_components.compact
100
+ @components ||= []
101
101
  end
102
102
 
103
103
  def create_composite_component(name, components)
@@ -135,7 +135,15 @@ module Buildr
135
135
  inject_component(doc, element)
136
136
  end
137
137
  end
138
- inject_components(doc, self.components)
138
+ inject_components(doc, self.default_components.compact + self.components)
139
+
140
+ # Sort the components in the same order the idea sorts them
141
+ sorted = doc.root.get_elements('//component').sort { |s1, s2| s1.attribute('name').value <=> s2.attribute('name').value }
142
+ doc = base_document
143
+ sorted.each do |element|
144
+ doc.root.add_element element
145
+ end
146
+
139
147
  doc
140
148
  end
141
149
 
@@ -161,6 +169,7 @@ module Buildr
161
169
  attr_accessor :type
162
170
  attr_accessor :group
163
171
  attr_reader :facets
172
+ attr_writer :jdk_version
164
173
 
165
174
  def initialize
166
175
  super()
@@ -174,6 +183,10 @@ module Buildr
174
183
  @buildr_project = buildr_project
175
184
  end
176
185
 
186
+ def jdk_version
187
+ @jdk_version || buildr_project.compile.options.source || "1.6"
188
+ end
189
+
177
190
  def extension
178
191
  "iml"
179
192
  end
@@ -474,7 +487,7 @@ module Buildr
474
487
 
475
488
  def generate_initial_order_entries(xml)
476
489
  xml.orderEntry :type => "sourceFolder", :forTests => "false"
477
- xml.orderEntry :type => "inheritedJdk"
490
+ xml.orderEntry :type => "jdk", :jdkName => jdk_version, :jdkType => "JavaSDK"
478
491
  end
479
492
 
480
493
  def generate_project_dependency(xml, other_project, export, test = false)
@@ -716,7 +729,7 @@ module Buildr
716
729
 
717
730
  def base_document
718
731
  target = StringIO.new
719
- Builder::XmlMarkup.new(:target => target).project(:version => "4", :relativePaths => "false")
732
+ Builder::XmlMarkup.new(:target => target).project(:version => "4")
720
733
  Buildr::IntellijIdea.new_document(target.string)
721
734
  end
722
735
 
@@ -725,10 +738,17 @@ module Buildr
725
738
  lambda { modules_component },
726
739
  vcs_component,
727
740
  artifacts_component,
728
- configurations_component
741
+ configurations_component,
742
+ lambda { framework_detection_exclusion_component }
729
743
  ]
730
744
  end
731
745
 
746
+ def framework_detection_exclusion_component
747
+ create_component('FrameworkDetectionExcludesConfiguration') do |xml|
748
+ xml.file :url => file_path(buildr_project._(:artifacts))
749
+ end
750
+ end
751
+
732
752
  def initial_components
733
753
  [
734
754
  lambda { project_root_manager_component },
@@ -737,12 +757,13 @@ module Buildr
737
757
  end
738
758
 
739
759
  def project_root_manager_component
740
- attribs = {"version" => "2",
741
- "assert-keyword" => "true",
742
- "jdk-15" => "true",
743
- "project-jdk-name" => self.jdk_version,
744
- "project-jdk-type" => "JavaSDK",
745
- "languageLevel" => "JDK_#{self.jdk_version.gsub('.', '_')}"}
760
+ attribs = {}
761
+ attribs["version"] = "2"
762
+ attribs["languageLevel"] = "JDK_#{self.jdk_version.gsub('.', '_')}"
763
+ attribs["assert-keyword"] = "true"
764
+ attribs["jdk-15"] = "true"
765
+ attribs["project-jdk-name"] = self.jdk_version
766
+ attribs["project-jdk-type"] = "JavaSDK"
746
767
  create_component("ProjectRootManager", attribs) do |xml|
747
768
  xml.output("url" => "file://$PROJECT_DIR$/out")
748
769
  end
@@ -33,6 +33,7 @@ module Java
33
33
  # "-o", "src/main/webapp/styles/styles-all-min.css")
34
34
  #
35
35
  # The last argument may be a Hash with additional options:
36
+ # * :dir -- The working directory from which to execute task..
36
37
  # * :classpath -- One or more file names, tasks or artifact specifications.
37
38
  # These are all expanded into artifacts, and all tasks are invoked.
38
39
  # * :java_args -- Any additional arguments to pass (e.g. -hotspot, -xms)
@@ -49,7 +50,18 @@ module Java
49
50
  name = "java #{args.first}"
50
51
  end
51
52
 
52
- cmd_args = [path_to_bin('java')]
53
+ cmd_args = []
54
+ if options[:dir]
55
+ pwd = options[:dir]
56
+ if Buildr::Util.win_os?
57
+ # Ruby uses forward slashes regardless of platform,
58
+ # unfortunately cd c:/some/path fails on Windows
59
+ cmd_args << "cd /d \"#{pwd.gsub(%r{/}, '\\')}\" && "
60
+ else
61
+ cmd_args << "cd '#{pwd}' && "
62
+ end
63
+ end
64
+ cmd_args << path_to_bin('java')
53
65
  cp = classpath_from(options)
54
66
  cmd_args << '-classpath' << cp.join(File::PATH_SEPARATOR) unless cp.empty?
55
67
  options[:properties].each { |k, v| cmd_args << "-D#{k}=#{v}" } if options[:properties]
@@ -99,15 +99,14 @@ module Buildr
99
99
  apply = managed(spec)
100
100
  spec = apply.merge(spec) if apply
101
101
 
102
+ next if options[:exclusions] && options[:exclusions].any? { |ex| dep['groupId'] == ex['groupId'] && dep['artifactId'] == ex['artifactId'] }
103
+
102
104
  # calculate transitive dependencies
103
105
  if options[:scopes].include?(spec[:scope])
104
106
  spec.delete(:scope)
105
107
 
106
108
  exclusions = dep["exclusions"].first["exclusion"] rescue nil
107
- transitive_deps = POM.load(spec).dependencies(options[:scopes_transitive] || SCOPES_TRANSITIVE)
108
- transitive_deps = transitive_deps.reject{|dep|
109
- exclusions.find {|ex| dep.index("#{ex['groupId'].first}:#{ex['artifactId'].first}:") == 0}
110
- } if exclusions
109
+ transitive_deps = POM.load(spec).dependencies(:exclusions => exclusions, :scopes => (options[:scopes_transitive] || SCOPES_TRANSITIVE) ) rescue []
111
110
 
112
111
  [Artifact.to_spec(spec)] + transitive_deps
113
112
  end
@@ -293,9 +293,10 @@ module Buildr
293
293
  # Support the following options:
294
294
  # * :properties -- Hash of properties passed to the test suite.
295
295
  # * :java_args -- Arguments passed to the JVM.
296
+ # * :args -- Arguments passed to the TestNG command line runner.
296
297
  class TestNG < TestFramework::Java
297
298
 
298
- VERSION = '5.10'
299
+ VERSION = '6.8'
299
300
 
300
301
  class << self
301
302
  def version
@@ -303,7 +304,8 @@ module Buildr
303
304
  end
304
305
 
305
306
  def dependencies
306
- ["org.testng:testng:jar:jdk15:#{version}"]+ JMock.dependencies
307
+ return ["org.testng:testng:jar:jdk15:#{version}"] + JMock.dependencies if version < "6.0"
308
+ ["org.testng:testng:jar:#{version}",'com.beust:jcommander:jar:1.27'] + JMock.dependencies
307
309
  end
308
310
 
309
311
  private
@@ -321,7 +323,10 @@ module Buildr
321
323
  end
322
324
 
323
325
  def run(tests, dependencies) #:nodoc:
324
- cmd_args = ['-log', '2', '-sourcedir', task.compile.sources.join(';'), '-suitename', task.project.id ]
326
+ cmd_args = []
327
+ cmd_args << '-suitename' << task.project.id
328
+ cmd_args << '-sourcedir' << task.compile.sources.join(';') if TestNG.version < "6.0"
329
+ cmd_args << '-log' << '2'
325
330
  cmd_args << '-d' << task.report_to.to_s
326
331
  exclude_args = options[:excludegroups] || []
327
332
  if !exclude_args.empty?
@@ -334,6 +339,8 @@ module Buildr
334
339
  # run all tests in the same suite
335
340
  cmd_args << '-testclass' << tests
336
341
 
342
+ cmd_args += options[:args] if options[:args]
343
+
337
344
  cmd_options = { :properties=>options[:properties], :java_args=>options[:java_args],
338
345
  :classpath=>dependencies, :name => "TestNG in #{task.send(:project).name}" }
339
346
 
@@ -139,14 +139,16 @@ module Buildr
139
139
  #
140
140
  # Creates POM XML for this artifact.
141
141
  def pom_xml
142
- xml = Builder::XmlMarkup.new(:indent=>2)
143
- xml.instruct!
144
- xml.project do
145
- xml.modelVersion '4.0.0'
146
- xml.groupId group
147
- xml.artifactId id
148
- xml.version version
149
- xml.classifier classifier if classifier
142
+ Proc.new do
143
+ xml = Builder::XmlMarkup.new(:indent=>2)
144
+ xml.instruct!
145
+ xml.project do
146
+ xml.modelVersion '4.0.0'
147
+ xml.groupId group
148
+ xml.artifactId id
149
+ xml.version version
150
+ xml.classifier classifier if classifier
151
+ end
150
152
  end
151
153
  end
152
154
 
@@ -372,6 +374,7 @@ module Buildr
372
374
 
373
375
  # :call-seq:
374
376
  # content(string) => self
377
+ # content(Proc) => self
375
378
  #
376
379
  # Use this when you want to install or upload an artifact from a given content, for example:
377
380
  # readme = artifact('com.example:readme:txt:1.0').content(<<-EOF
@@ -379,13 +382,17 @@ module Buildr
379
382
  # <<EOF
380
383
  # install readme
381
384
  #
382
- # If the argument is not a string, it will be converted to a string using to_s
385
+ # If the argument is a Proc the it will be called when the artifact is written out. If the result is not a proc
386
+ # and not a string, it will be converted to a string using to_s
383
387
  def content(string = nil)
384
- return @content unless string
388
+ unless string
389
+ @content = @content.call if @content.is_a?(Proc)
390
+ return @content
391
+ end
385
392
 
386
393
  unless @content
387
394
  enhance do
388
- write name, @content
395
+ write name, self.content
389
396
  end
390
397
 
391
398
  class << self