buildr 1.5.6 → 1.5.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +36 -0
- data/README.rdoc +2 -2
- data/Rakefile +1 -1
- data/addon/buildr/gwt.rb +4 -7
- data/addon/buildr/jetty.rb +1 -1
- data/buildr.buildfile +2 -3
- data/buildr.gemspec +2 -1
- data/doc/_layouts/default.html +1 -1
- data/doc/artifacts.textile +2 -2
- data/doc/download.textile +30 -6
- data/doc/index.textile +28 -37
- data/doc/installing.textile +2 -2
- data/doc/projects.textile +1 -1
- data/doc/quick_start.textile +3 -3
- data/lib/buildr/core/generate.rb +2 -2
- data/lib/buildr/core/project.rb +2 -2
- data/lib/buildr/core/transports.rb +1 -1
- data/lib/buildr/ide/idea.rb +38 -16
- data/lib/buildr/java/custom_pom.rb +0 -5
- data/lib/buildr/java/doc.rb +2 -0
- data/lib/buildr/java/tests.rb +4 -4
- data/lib/buildr/kotlin/compiler.rb +3 -3
- data/lib/buildr/kotlin/org/apache/buildr/KotlinMessageCollector.java +4 -4
- data/lib/buildr/packaging/archive.rb +5 -5
- data/lib/buildr/packaging/artifact.rb +16 -0
- data/lib/buildr/packaging/artifact_namespace.rb +8 -7
- data/lib/buildr/packaging/artifact_search.rb +1 -1
- data/lib/buildr/packaging/gems.rb +0 -1
- data/lib/buildr/packaging/tar.rb +5 -5
- data/lib/buildr/version.rb +1 -1
- data/rakelib/release.rake +2 -2
- data/rakelib/rspec.rake +1 -0
- data/rakelib/stage.rake +2 -2
- data/spec/core/build_spec.rb +2 -2
- data/spec/core/checks_spec.rb +1 -1
- data/spec/core/compile_spec.rb +2 -2
- data/spec/core/shell_spec.rb +1 -1
- data/spec/core/transport_spec.rb +1 -0
- data/spec/ide/eclipse_spec.rb +1 -1
- data/spec/ide/idea_spec.rb +1 -1
- data/spec/java/custom_pom_spec.rb +0 -7
- data/spec/java/ecj_spec.rb +2 -2
- data/spec/java/packaging_spec.rb +3 -3
- data/spec/java/test_coverage_helper.rb +1 -1
- data/spec/kotlin/compiler_spec.rb +12 -12
- data/spec/packaging/archive_spec.rb +3 -3
- data/spec/packaging/artifact_spec.rb +5 -12
- data/spec/packaging/packaging_helper.rb +1 -1
- data/spec/packaging/packaging_spec.rb +0 -5
- data/spec/sandbox.rb +1 -1
- data/spec/scala/compiler_spec.rb +7 -7
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 886e7f2ba675b575d321d1d0e5b3f49939f0a83e
|
4
|
+
data.tar.gz: 47e2977e6163079c34e95bd13ca23b2c8211ffba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f6540a5d9bcb9e4f3d0104f53713ddbb21407d544957793b61eabd660f0f4c52d6a9b682de005fc2ea752b6b2d6460600519ae7978bebfefff55c42128013cbb
|
7
|
+
data.tar.gz: 5b41be728f707e8d12814d51a0ac52febdd6ceda119762432eb4091c89d3d45fb45f135d961b76ea2288ea88fc052d3f7d54f746774accea79a1d868dc20ae7a
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,39 @@
|
|
1
|
+
1.5.8 (2019-07-14)
|
2
|
+
* Fixed: Changed references to `https://repo1.maven.org/maven2` to use https where possible.
|
3
|
+
* Change: Use the `zapwhite` gem to manage file whitespace within repository.
|
4
|
+
* Fixed: Replace references to long removed `http://www.ibiblio.org/maven2/` repository with
|
5
|
+
`https://repo1.maven.org/maven2`.
|
6
|
+
* Fixed: Ensure pom files used in tests use https when referring to maven repositories.
|
7
|
+
* Added: Add support for downloading external annotations and attaching them to IntelliJ IDEA module dependencies.
|
8
|
+
* Added: Detect external annotations in the local project and add them to the generated IntelliJ IDEA
|
9
|
+
module when generating. The default location is `src/main/annotations` but other locations
|
10
|
+
can be specified by modifying the `project.iml.annotation_paths` property.
|
11
|
+
* Fixed: Explicitly specify the `:sourcepath` parameter for javadoc tool. This enables additional parameters
|
12
|
+
such as `-packagenames` and `-subpackages` to be passed to the underling tool.
|
13
|
+
* Fixed: Stop generating poms with the parent POM `org.sonatype.oss:oss-parent:8`. The las update was a long time
|
14
|
+
ago (i.e. 2012) and it is no longer maintained. It was also deprecated several years ago and is not
|
15
|
+
guaranteed to work in modern Maven deployments.
|
16
|
+
|
17
|
+
1.5.7 (2019-02-16)
|
18
|
+
* Fixed: The fix that allowed special characters in usernames and passwords was only partially applied
|
19
|
+
in the `1.5.6` release. The complete fix that correctly decoded usernames and passwords before
|
20
|
+
passing them to HTTP library is now been applied.
|
21
|
+
* Change: GWT Addon: Added support for `:skip_merge_gwt_dependencies` parameter that makes it possible to
|
22
|
+
avoid adding GWT dependencies to the project directly and thus the associated POM. This will be
|
23
|
+
required to support GWT3.x and GWT2.x simultaneously as well as making it easier to manage
|
24
|
+
dependencies in the POMs.
|
25
|
+
* Change: Javadoc: If the user does not supply an explicit `:sourcepath` to the doc/javadoc tool then
|
26
|
+
default the value to `project.compile.sources`. This will stop javadoc from scanning the classpath
|
27
|
+
for `*.java` files which can cause issues with projects that include `sources` classifier artifacts
|
28
|
+
on the classpath. This is particularly relevant for GWT based projects that include artifacts with
|
29
|
+
source embedded in the artifacts. This change also made it possible to remove an ugly hack in the
|
30
|
+
GWT addon that removed the gwt artifacts from the javadoc path.
|
31
|
+
* Change: Drop deprecated Gem::Specification#has_rdoc= (no replacement) method. Submitted by Olle Jonsson.
|
32
|
+
* Change: Use https protocol to access Gem metadata. Submitted by Olle Jonsson.
|
33
|
+
* Change: Change RSpec shared_context usage to avoid warnings. Submitted by Olle Jonsson.
|
34
|
+
* Change: Migrated source control to Apache GitBox which supports using either GitHub or GitBox as the
|
35
|
+
master repository.
|
36
|
+
|
1
37
|
1.5.6 (2018-05-10)
|
2
38
|
* Fixed: Ensure that the username and passwords declared for repositories are correctly url encoded for
|
3
39
|
the upload repositories when converted to a URL. (i.e. Ensure `Buildr.repositories.release_to`
|
data/README.rdoc
CHANGED
@@ -28,8 +28,8 @@ http://buildr.apache.org/
|
|
28
28
|
=== RTFM
|
29
29
|
|
30
30
|
* Buildr documentation: http://buildr.apache.org
|
31
|
-
* More about Rake:
|
32
|
-
* Antwrap documentation:
|
31
|
+
* More about Rake: https://github.com/ruby/rake
|
32
|
+
* Antwrap documentation: https://rubygems.org/gems/Antwrap
|
33
33
|
|
34
34
|
|
35
35
|
=== Mailing list
|
data/Rakefile
CHANGED
@@ -30,7 +30,7 @@ end
|
|
30
30
|
|
31
31
|
# Load the Gem specification for the current platform (Ruby or JRuby).
|
32
32
|
def spec(platform = RUBY_PLATFORM[/java/] || 'ruby')
|
33
|
-
@specs ||=
|
33
|
+
@specs ||= %w(ruby java x86-mswin32).inject({}) { |hash, spec_platform|
|
34
34
|
ENV['BUILDR_PLATFORM'] = spec_platform
|
35
35
|
hash.update(spec_platform=> Gem::Specification.load('buildr.gemspec'))
|
36
36
|
Gem::Specification._clear_load_cache
|
data/addon/buildr/gwt.rb
CHANGED
@@ -236,11 +236,6 @@ module Buildr
|
|
236
236
|
module ProjectExtension
|
237
237
|
include Extension
|
238
238
|
|
239
|
-
after_define(:doc) do |project|
|
240
|
-
# Remove gwt artifacts when performing javadocs as the gwt jars have invalid source files
|
241
|
-
project.doc.classpath.delete_if { |f| f.to_s =~ /.*\/com\/google\/gwt\/gwt-.*/ }
|
242
|
-
end
|
243
|
-
|
244
239
|
first_time do
|
245
240
|
desc 'Run C22 to GSS converter. Set css files via environment variable CSS_FILES'
|
246
241
|
task('css2gss') do
|
@@ -274,8 +269,10 @@ module Buildr
|
|
274
269
|
Buildr::GWT.dependencies(version).each do |d|
|
275
270
|
a = artifact(d)
|
276
271
|
a.invoke if a.respond_to?(:invoke)
|
277
|
-
|
278
|
-
|
272
|
+
unless options[:skip_merge_gwt_dependencies]
|
273
|
+
project.iml.main_dependencies << a unless !project.iml? || existing_deps.include?(a.to_s)
|
274
|
+
project.compile.dependencies << a unless existing_deps.include?(a.to_s)
|
275
|
+
end
|
279
276
|
additional_gwt_deps << a
|
280
277
|
end
|
281
278
|
|
data/addon/buildr/jetty.rb
CHANGED
@@ -52,7 +52,7 @@ module Buildr
|
|
52
52
|
"org.eclipse.jetty:jetty-security:jar:#{VERSION}",
|
53
53
|
"org.eclipse.jetty:jetty-xml:jar:#{VERSION}",
|
54
54
|
"org.slf4j:slf4j-api:jar:#{SLF4J_VERSION}",
|
55
|
-
"org.slf4j:slf4j-simple:jar:#{SLF4J_VERSION}",
|
55
|
+
"org.slf4j:slf4j-simple:jar:#{SLF4J_VERSION}",
|
56
56
|
"org.slf4j:jcl-over-slf4j:jar:#{SLF4J_VERSION}",
|
57
57
|
'javax.servlet:javax.servlet-api:jar:3.1.0' ]
|
58
58
|
|
data/buildr.buildfile
CHANGED
@@ -19,7 +19,7 @@ require 'buildr/jetty6'
|
|
19
19
|
require 'buildr/nailgun'
|
20
20
|
require 'buildr/scala'
|
21
21
|
require 'buildr/kotlin'
|
22
|
-
repositories.remote << '
|
22
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
23
23
|
|
24
24
|
repositories.remote << 'https://oss.sonatype.org/content/groups/scala-tools'
|
25
25
|
|
@@ -33,7 +33,7 @@ define 'buildr' do
|
|
33
33
|
define 'scala' do
|
34
34
|
compile.using(:javac).from(FileList['lib/buildr/scala/**/*.java']).into('lib/buildr/scala')
|
35
35
|
end
|
36
|
-
|
36
|
+
|
37
37
|
define 'kotlin' do
|
38
38
|
compile.using(:javac).from(FileList['lib/buildr/kotlin/**/*.java']).into('lib/buildr/kotlin').with(Buildr::Kotlin::Kotlinc.dependencies)
|
39
39
|
end
|
@@ -48,7 +48,6 @@ define 'buildr' do
|
|
48
48
|
spec.author = 'Apache Buildr'
|
49
49
|
spec.email = 'users@buildr.apache.org'
|
50
50
|
spec.homepage = "http://buildr.apache.org"
|
51
|
-
spec.rubyforge_project = 'buildr'
|
52
51
|
spec.extra_rdoc_files = legal
|
53
52
|
spec.rdoc_options << '--webcvs' << 'https://github.com/apache/buildr'
|
54
53
|
spec.add_dependency 'buildr', '~> 1.3'
|
data/buildr.gemspec
CHANGED
@@ -38,7 +38,6 @@ something that's simple and intuitive to use, so we only need to tell it what
|
|
38
38
|
to do, and it takes care of the rest. But also something we can easily extend
|
39
39
|
for those one-off tasks, with a language that's a joy to use.
|
40
40
|
TEXT
|
41
|
-
spec.rubyforge_project = 'buildr'
|
42
41
|
|
43
42
|
spec.platform = $platform
|
44
43
|
|
@@ -97,4 +96,6 @@ for those one-off tasks, with a language that's a joy to use.
|
|
97
96
|
spec.add_development_dependency 'pygmentize', '0.0.3'
|
98
97
|
spec.add_development_dependency 'saikuro_treemap', '0.2.0'
|
99
98
|
spec.add_development_dependency 'atoulme-Saikuro', '1.2.1'
|
99
|
+
# Used to manage whitespace of files within repository
|
100
|
+
spec.add_development_dependency 'zapwhite', '2.14.0'
|
100
101
|
end
|
data/doc/_layouts/default.html
CHANGED
@@ -47,7 +47,7 @@
|
|
47
47
|
<li>Reference
|
48
48
|
<ol class="toc">
|
49
49
|
<li><a href='rdoc/Buildr.html'>API</a></li>
|
50
|
-
<li><a href='
|
50
|
+
<li><a href='https://github.com/ruby/rake'>Rake</a></li>
|
51
51
|
<li><a href='https://rubygems.org/gems/Antwrap'>Antwrap</a></li>
|
52
52
|
<li><a href='http://cwiki.apache.org/confluence/display/BUILDR/Common+Problems+and+Solutions'>Troubleshooting</a></li>
|
53
53
|
</ol>
|
data/doc/artifacts.textile
CHANGED
@@ -99,7 +99,7 @@ Buildr can download artifacts for you, but only if you tell it where to find the
|
|
99
99
|
When you call @repositories.remote@, you get an array of URLs for the various remote repositories. Initially, it's an empty array, to which you can add new repositories. For example:
|
100
100
|
|
101
101
|
{% highlight ruby %}
|
102
|
-
repositories.remote << '
|
102
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
103
103
|
{% endhighlight %}
|
104
104
|
|
105
105
|
If your repository requires HTTP authentication, you can write,
|
@@ -171,7 +171,7 @@ artifacts(OPENJPA).each(&:invoke)
|
|
171
171
|
|
172
172
|
When you let Buildr download artifacts for you, or by invoking the artifact task yourself, it scans through the remote repositories assuming each repository follows the Maven 2 structure. Starting from the root repository URL, it will look for each artifact using the path @group/id/version/id-version.type@ (or ...@/id-version-classifier.type@). The group identifier becomes a path by turning periods (@.@) into slashes (@/@). So to find @org.apache.axis2:axis2:jar:1.2@, we're going to look for @org/apache/axis2/axis2/1.2/axis2-1.2.jar@.
|
173
173
|
|
174
|
-
You'll find a lot of open source Java libraries in public repositories that support this structure (for example, the "
|
174
|
+
You'll find a lot of open source Java libraries in public repositories that support this structure (for example, the "Maven Central":https://repo1.maven.org/maven2 repository). And, of course, every remote repository you setup for your projects.
|
175
175
|
|
176
176
|
But there are exceptions to the rule. Say we want to download the Dojo widget library and use it in our project. It's available from the Dojo Web site, but that site doesn't follow the Maven repository conventions, so our feeble attempt to use existing remote repositories will fail.
|
177
177
|
|
data/doc/download.textile
CHANGED
@@ -18,16 +18,40 @@ 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.5.7 (2019-02-16)
|
22
|
+
|
23
|
+
|_. Package |_. MD5 Checksum |_. PGP |
|
24
|
+
| "buildr-1.5.7.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.5.7/buildr-1.5.7.gem | "da7aef9f2f016871162a11eed21f9821":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.gem.asc |
|
25
|
+
| "buildr-1.5.7-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.5.7/buildr-1.5.7-x86-mswin32.gem | "a5ea3efca5f6e01ee56f014b1f71c002":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7-x86-mswin32.gem.asc |
|
26
|
+
| "buildr-1.5.7-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.5.7/buildr-1.5.7-java.gem | "c61529d8d0afa922d93faddef1170b3c":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7-java.gem.asc |
|
27
|
+
| "buildr-1.5.7.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.5.7/buildr-1.5.7.tgz | "e779df6b46e25c1692b0a3f102ed6903":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.tgz.asc |
|
28
|
+
| "buildr-1.5.7.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.5.7/buildr-1.5.7.zip | "2991f9e184c6ae2eb229a219ac692e4c":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.5.7/buildr-1.5.7.zip.asc |
|
29
|
+
|
30
|
+
p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.5.7/KEYS)
|
31
|
+
|
32
|
+
|
33
|
+
h3. buildr 1.5.6 (2018-05-10)
|
34
|
+
|
35
|
+
|_. Package |_. MD5 Checksum |_. PGP |
|
36
|
+
| "buildr-1.5.6.gem":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.gem | "3836a2bb86692ca353ccc9ed6c4a618d":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.gem.asc |
|
37
|
+
| "buildr-1.5.6-java.gem":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-java.gem | "68879b787705d8c3222b80cab5416e99":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-java.gem.asc |
|
38
|
+
| "buildr-1.5.6-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-x86-mswin32.gem | "c0c65b86f422e7bb8c8f3bba00af4ec2":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6-x86-mswin32.gem.asc |
|
39
|
+
| "buildr-1.5.6.tgz":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.tgz | "b17855a2f439c042bd6c94c85454ddce":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.tgz.asc |
|
40
|
+
| "buildr-1.5.6.zip":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.zip | "4fcd9603070374b93f7db69fdef1ed83":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.6/buildr-1.5.6.zip.asc |
|
41
|
+
|
42
|
+
p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.5.6/KEYS)
|
43
|
+
|
44
|
+
|
21
45
|
h3. buildr 1.5.5 (2017-12-06)
|
22
46
|
|
23
47
|
|_. Package |_. MD5 Checksum |_. PGP |
|
24
|
-
| "buildr-1.5.5.gem":http://
|
25
|
-
| "buildr-1.5.5-java.gem":http://
|
26
|
-
| "buildr-1.5.5-x86-mswin32.gem":http://
|
27
|
-
| "buildr-1.5.5.tgz":http://
|
28
|
-
| "buildr-1.5.5.zip":http://
|
48
|
+
| "buildr-1.5.5.gem":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.gem | "8bd720d1c4c96f5904c09b70c95aede3":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.gem.asc |
|
49
|
+
| "buildr-1.5.5-java.gem":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-java.gem | "8c009622ed7c9b1bbc576c5df298d9df":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-java.gem.asc |
|
50
|
+
| "buildr-1.5.5-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-x86-mswin32.gem | "04f7af088b3ec99cdf72c58ea7c3ee67":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5-x86-mswin32.gem.asc |
|
51
|
+
| "buildr-1.5.5.tgz":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.tgz | "1aab23f1cd19bcbd3c8f48afb488e8ff":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.tgz.asc |
|
52
|
+
| "buildr-1.5.5.zip":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.zip | "9d1f076927cc2f565875c7f38e5afe69":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.5.5/buildr-1.5.5.zip.asc |
|
29
53
|
|
30
|
-
p>. ("Release signing keys":http://
|
54
|
+
p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.5.5/KEYS)
|
31
55
|
|
32
56
|
|
33
57
|
h3. buildr 1.5.4 (2017-11-29)
|
data/doc/index.textile
CHANGED
@@ -46,43 +46,34 @@ 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.5.
|
50
|
-
* Fixed:
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
*
|
55
|
-
`
|
56
|
-
*
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
* Fixed:
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
the
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
* Change:
|
76
|
-
*
|
77
|
-
the GWT compiler.
|
78
|
-
* Added: Add support for sha512 digests to be generated for files during the upload. This is typically
|
79
|
-
configured by adding `sha512` to the list of digests via a line such as:
|
80
|
-
`repositories.release_to[:options] = {:digests => [:md5, :sha1, :sha512]}`
|
81
|
-
* Fixed: The default upload tasks would often get a ReadTimeout when uploading using http to a remote
|
82
|
-
server that did not have `KeepAlive` socket option enabled and the upload took more than 60
|
83
|
-
seconds (the default socket read timeout). Some commercial maven repositories could trigger
|
84
|
-
this scenario during upload of even modest size artifacts. Default the read_timeout to 10 minutes
|
85
|
-
when during upload to work address this issue.
|
49
|
+
Highlights from Buildr 1.5.8 (2019-07-14)
|
50
|
+
* Fixed: Add support for IntelliJ IDEAs external annotations.
|
51
|
+
* Added: Detect external annotations in the local project and add them to the generated IntelliJ IDEA
|
52
|
+
module when generating. The default location is `src/main/annotations` but other locations
|
53
|
+
can be specified by modifying the `project.iml.annotation_paths` property.
|
54
|
+
* Fixed: Explicitly specify the `:sourcepath` parameter for javadoc tool. This enables additional parameters
|
55
|
+
such as `-packagenames` and `-subpackages` to be passed to the underling tool.
|
56
|
+
* Fixed: Stop generating poms with the parent POM `org.sonatype.oss:oss-parent:8`. The las update was a long time
|
57
|
+
ago (i.e. 2012) and it is no longer maintained. It was also deprecated several years ago and is not
|
58
|
+
guaranteed to work in modern Maven deployments.
|
59
|
+
|
60
|
+
Highlights from Buildr 1.5.7 (2019-02-16)
|
61
|
+
* Fixed: The fix that allowed special characters in usernames and passwords was only partially applied
|
62
|
+
in the `1.5.6` release. The complete fix that correctly decoded usernames and passwords before
|
63
|
+
passing them to HTTP library is now been applied.
|
64
|
+
* Change: GWT Addon: Added support for `:skip_merge_gwt_dependencies` parameter that makes it possible to
|
65
|
+
avoid adding GWT dependencies to the project directly and thus the associated POM. This will be
|
66
|
+
required to support GWT3.x and GWT2.x simultaneously as well as making it easier to manage
|
67
|
+
dependencies in the POMs.
|
68
|
+
* Change: Javadoc: If the user does not supply an explicit `:sourcepath` to the doc/javadoc tool then
|
69
|
+
default the value to `project.compile.sources`. This will stop javadoc from scanning the classpath
|
70
|
+
for `*.java` files which can cause issues with projects that include `sources` classifier artifacts
|
71
|
+
on the classpath. This is particularly relevant for GWT based projects that include artifacts with
|
72
|
+
source embedded in the artifacts. This change also made it possible to remove an ugly hack in the
|
73
|
+
GWT addon that removed the gwt artifacts from the javadoc path.
|
74
|
+
* Change: Drop deprecated Gem::Specification#has_rdoc= (no replacement) method. Submitted by Olle Jonsson.
|
75
|
+
* Change: Use https protocol to access Gem metadata. Submitted by Olle Jonsson.
|
76
|
+
* Change: Change RSpec shared_context usage to avoid warnings. Submitted by Olle Jonsson.
|
86
77
|
|
87
78
|
This is a partial list -- see the "CHANGELOG":CHANGELOG for full details.
|
88
79
|
|
data/doc/installing.textile
CHANGED
@@ -27,7 +27,7 @@ If you are running behind a proxy server, make sure the environment variable @HT
|
|
27
27
|
|
28
28
|
<br>
|
29
29
|
|
30
|
-
*In details:* The @gem install@ and @gem update@ commands install Buildr from a binary distribution provided through "
|
30
|
+
*In details:* The @gem install@ and @gem update@ commands install Buildr from a binary distribution provided through "RubyGems":https://rubygems.org/gems/buildr. This distribution is maintained by contributors to this project, but is *not* an official Apache distribution. You can obtain the official Apache distribution files from the "download page":download.html.
|
31
31
|
|
32
32
|
Older versions of RubyGems are all kind of fail. You want to avoid these unless you have the patience to install each Buildr dependency manually. Get RubyGems 1.3.1 or later, and when using Debian packages (e.g. Ubuntu), make sure to get the unmolested RubyGems straight form the source.
|
33
33
|
|
@@ -287,7 +287,7 @@ h2(#more). Learning More
|
|
287
287
|
|
288
288
|
For a quicker read (and much more humor), "Why’s (Poignant) Guide to Ruby":http://poignantguide.net/ruby/ is available online. More resources are listed on the "ruby-lang web site":http://www.ruby-lang.org/en/documentation/.
|
289
289
|
|
290
|
-
*Rake* Buildr is based on Rake, a Ruby build system that handles tasks and dependencies. Check out the "Rake documentation":
|
290
|
+
*Rake* Buildr is based on Rake, a Ruby build system that handles tasks and dependencies. Check out the "Rake documentation":https://github.com/ruby/rake for more information.
|
291
291
|
|
292
292
|
*AntWrap* Buildr uses AntWrap, for configuring and running Ant tasks. You can learn more from the "Antwrap documentation":https://rubygems.org/gems/Antwrap.
|
293
293
|
|
data/doc/projects.textile
CHANGED
@@ -26,7 +26,7 @@ AXIS_OF_WS = [AXIOM, AXIS2]
|
|
26
26
|
OPENJPA = ['org.apache.openjpa:openjpa:jar:1.2.0',
|
27
27
|
'net.sourceforge.serp:serp:jar:1.12.0']
|
28
28
|
|
29
|
-
repositories.remote << '
|
29
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
30
30
|
|
31
31
|
desc 'Code. Build. ??? Profit!'
|
32
32
|
define 'killer-app' do
|
data/doc/quick_start.textile
CHANGED
@@ -67,7 +67,7 @@ h2(#dependencies). Dependencies
|
|
67
67
|
So far, we have seen how Buildr can automatically infer what amounts to dozens of lines of @build.xml@ contents, all based on a buildfile and a directory structure. However, the best is yet to come. Buildr also provides Maven-style dependency management (but without the long loading times!). In other words, you specify each dependent library using a string descriptor and Buildr figures out how to download and configure your classpath (the library descriptors are just a Ruby array, therefore they are separated by commas (@,@)). You must specify at least one remote repository so that Buildr knows from where to download these libraries. For example, we can configure our project to reference the "Apache Commons CLI":http://commons.apache.org/cli/ library and download libraries from the Ibiblio repository:
|
68
68
|
|
69
69
|
{% highlight ruby %}
|
70
|
-
repositories.remote << '
|
70
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
71
71
|
|
72
72
|
define 'killer-app' do
|
73
73
|
project.version = '0.1.0'
|
@@ -83,7 +83,7 @@ p(tip). You can search the global repository of artifacts at sites like "MvnBrow
|
|
83
83
|
Unfortunately, not all libraries are quite as simple as Commons CLI. Many libraries (such as Apache Wicket) have dependencies of their own. While we may be able to _compile_ against Apache Wicket without these extra libraries on our classpath, we cannot actually _run_ our application without its transitive dependencies. To avoid tracking down each of these dependencies and adding them manually, we can simply use the @transitive@ directive (this is how Maven behaves by default):
|
84
84
|
|
85
85
|
{% highlight ruby %}
|
86
|
-
repositories.remote << '
|
86
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
87
87
|
|
88
88
|
define 'killer-app' do
|
89
89
|
project.version = '0.1.0'
|
@@ -95,7 +95,7 @@ end
|
|
95
95
|
The @compile.with@ property accepts a full array of comma-separated artifacts, making it possible to specify any number of dependencies as necessary. Of course, such a long list of verbose string descriptors could get very tiresome and messy. For this reason, it is conventional to assign each dependency to a constant (e.g. @WICKET@) which is declared just above the project in the buildfile and passed to @compile.with@ in a clean, easy-to-read style:
|
96
96
|
|
97
97
|
{% highlight ruby %}
|
98
|
-
repositories.remote << '
|
98
|
+
repositories.remote << 'https://repo1.maven.org/maven2'
|
99
99
|
|
100
100
|
WICKET = transitive('org.apache.wicket:wicket:jar:1.4-rc6')
|
101
101
|
SLF4J = 'org.slf4j:slf4j-jdk14:jar:1.5.8'
|
data/lib/buildr/core/generate.rb
CHANGED
@@ -81,7 +81,7 @@ GROUP = "#{name}"
|
|
81
81
|
COPYRIGHT = ""
|
82
82
|
|
83
83
|
# Specify Maven 2.0 remote repositories here, like this:
|
84
|
-
repositories.remote << "
|
84
|
+
repositories.remote << "https://repo1.maven.org/maven2"
|
85
85
|
|
86
86
|
desc "The #{name.capitalize} project"
|
87
87
|
define "#{name}" do
|
@@ -267,7 +267,7 @@ EOF
|
|
267
267
|
legacy = repository["layout"].to_s =~ /legacy/
|
268
268
|
!legacy
|
269
269
|
} rescue nil
|
270
|
-
repositories = [{"name" => "Standard maven2 repository", "url" => "
|
270
|
+
repositories = [{"name" => "Standard maven2 repository", "url" => "https://repo1.maven.org/maven2"}] if repositories.nil? || repositories.empty?
|
271
271
|
repositories.each do |repository|
|
272
272
|
name, url = repository["name"], repository["url"]
|
273
273
|
script << "# #{name}"
|
data/lib/buildr/core/project.rb
CHANGED
@@ -127,7 +127,7 @@ module Buildr #:nodoc:
|
|
127
127
|
# buildr compile
|
128
128
|
# from the command line, it will execute the compile task of the current project.
|
129
129
|
#
|
130
|
-
# Projects and sub-projects follow a directory
|
130
|
+
# Projects and sub-projects follow a directory hierarchy. The Buildfile is assumed to
|
131
131
|
# reside in the same directory as the top-level project, and each sub-project is
|
132
132
|
# contained in a sub-directory in the same name. For example:
|
133
133
|
# /home/foo
|
@@ -223,7 +223,7 @@ module Buildr #:nodoc:
|
|
223
223
|
end
|
224
224
|
|
225
225
|
# Top-level project? Invoke the project definition. Sub-project? We don't invoke
|
226
|
-
# the project
|
226
|
+
# the project definition yet (allow project calls to establish order of evaluation),
|
227
227
|
# but must do so before the parent project's definition is done.
|
228
228
|
project.parent.enhance { project.invoke } if project.parent
|
229
229
|
end
|
@@ -335,7 +335,7 @@ module URI
|
|
335
335
|
end
|
336
336
|
headers = { 'Content-MD5'=>Digest::MD5.hexdigest(content.string), 'Content-Type'=>'application/octet-stream', 'User-Agent'=>"Buildr-#{Buildr::VERSION}" }
|
337
337
|
request = Net::HTTP::Put.new(request_uri.empty? ? '/' : request_uri, headers)
|
338
|
-
request.basic_auth self.user, self.password if self.user
|
338
|
+
request.basic_auth URI.decode(self.user), URI.decode(self.password) if self.user
|
339
339
|
response = nil
|
340
340
|
with_progress_bar options[:progress], path.split('/').last, content.size do |progress|
|
341
341
|
request.content_length = content.size
|
data/lib/buildr/ide/idea.rb
CHANGED
@@ -212,6 +212,10 @@ module Buildr #:nodoc:
|
|
212
212
|
'iml'
|
213
213
|
end
|
214
214
|
|
215
|
+
def annotation_paths
|
216
|
+
@annotation_paths ||= [buildr_project._(:source, :main, :annotations)].select {|p| File.exist?(p)}
|
217
|
+
end
|
218
|
+
|
215
219
|
def main_source_directories
|
216
220
|
@main_source_directories ||= [buildr_project.compile.sources].flatten.compact
|
217
221
|
end
|
@@ -342,10 +346,7 @@ module Buildr #:nodoc:
|
|
342
346
|
buildr_project.assets.paths.each {|p| default_webroots[p] = '/' }
|
343
347
|
webroots = options[:webroots] || default_webroots
|
344
348
|
default_deployment_descriptors = []
|
345
|
-
|
346
|
-
'context.xml', 'weblogic.xml',
|
347
|
-
'jboss-deployment-structure.xml', 'jboss-web.xml',
|
348
|
-
'ibm-web-bnd.xml', 'ibm-web-ext.xml', 'ibm-web-ext-pme.xml'].
|
349
|
+
%w(web.xml sun-web.xml glassfish-web.xml jetty-web.xml geronimo-web.xml context.xml weblogic.xml jboss-deployment-structure.xml jboss-web.xml ibm-web-bnd.xml ibm-web-ext.xml ibm-web-ext-pme.xml).
|
349
350
|
each do |descriptor|
|
350
351
|
webroots.each_pair do |path, relative_url|
|
351
352
|
next unless relative_url == '/'
|
@@ -446,9 +447,7 @@ module Buildr #:nodoc:
|
|
446
447
|
ejb_roots = options[:ejb_roots] || default_ejb_roots
|
447
448
|
|
448
449
|
default_deployment_descriptors = []
|
449
|
-
|
450
|
-
'jboss.xml', 'jbosscmp-jdbc.xml', 'openejb-jar.xml', 'sun-cmp-mapping.xml', 'sun-ejb-jar.xml',
|
451
|
-
'weblogic-cmp-rdbms-jar.xml', 'weblogic-ejb-jar.xml'].
|
450
|
+
%w(ejb-jar.xml glassfish-ejb-jar.xml ibm-ejb-jar-bnd.xml ibm-ejb-jar-ext-pme.xml ibm-ejb-jar-ext.xml jboss.xml jbosscmp-jdbc.xml openejb-jar.xml sun-cmp-mapping.xml sun-ejb-jar.xml weblogic-cmp-rdbms-jar.xml weblogic-ejb-jar.xml).
|
452
451
|
each do |descriptor|
|
453
452
|
ejb_roots.each do |path|
|
454
453
|
d = "#{path}/WEB-INF/#{descriptor}"
|
@@ -483,12 +482,18 @@ module Buildr #:nodoc:
|
|
483
482
|
dependency_path = d.to_s
|
484
483
|
export = true
|
485
484
|
source_path = nil
|
485
|
+
annotations_path = nil
|
486
486
|
if d.respond_to?(:to_spec_hash)
|
487
487
|
source_spec = d.to_spec_hash.merge(:classifier => 'sources')
|
488
488
|
source_path = Buildr.artifact(source_spec).to_s
|
489
489
|
source_path = nil unless File.exist?(source_path)
|
490
490
|
end
|
491
|
-
|
491
|
+
if d.respond_to?(:to_spec_hash)
|
492
|
+
annotations_spec = d.to_spec_hash.merge(:classifier => 'annotations')
|
493
|
+
annotations_path = Buildr.artifact(annotations_spec).to_s
|
494
|
+
annotations_path = nil unless File.exist?(annotations_path)
|
495
|
+
end
|
496
|
+
[dependency_path, export, source_path, annotations_path]
|
492
497
|
end
|
493
498
|
end
|
494
499
|
|
@@ -499,12 +504,18 @@ module Buildr #:nodoc:
|
|
499
504
|
dependency_path = d.to_s
|
500
505
|
export = main_dependencies_paths.include?(dependency_path)
|
501
506
|
source_path = nil
|
507
|
+
annotations_path = nil
|
502
508
|
if d.respond_to?(:to_spec_hash)
|
503
509
|
source_spec = d.to_spec_hash.merge(:classifier => 'sources')
|
504
510
|
source_path = Buildr.artifact(source_spec).to_s
|
505
511
|
source_path = nil unless File.exist?(source_path)
|
506
512
|
end
|
507
|
-
|
513
|
+
if d.respond_to?(:to_spec_hash)
|
514
|
+
annotations_spec = d.to_spec_hash.merge(:classifier => 'annotations')
|
515
|
+
annotations_path = Buildr.artifact(annotations_spec).to_s
|
516
|
+
annotations_path = nil unless File.exist?(annotations_path)
|
517
|
+
end
|
518
|
+
[dependency_path, export, source_path, annotations_path]
|
508
519
|
end
|
509
520
|
end
|
510
521
|
|
@@ -550,22 +561,22 @@ module Buildr #:nodoc:
|
|
550
561
|
end
|
551
562
|
|
552
563
|
main_project_dependencies = project_dependencies.dup
|
553
|
-
self.test_dependency_details.each do |dependency_path, export, source_path|
|
564
|
+
self.test_dependency_details.each do |dependency_path, export, source_path, annotations_path|
|
554
565
|
next if export
|
555
|
-
generate_lib(xml, dependency_path, export, source_path, project_dependencies)
|
566
|
+
generate_lib(xml, dependency_path, export, source_path, annotations_path, project_dependencies)
|
556
567
|
end
|
557
568
|
|
558
569
|
test_project_dependencies = project_dependencies - main_project_dependencies
|
559
|
-
self.main_dependency_details.each do |dependency_path, export, source_path|
|
570
|
+
self.main_dependency_details.each do |dependency_path, export, source_path, annotations_path|
|
560
571
|
next unless export
|
561
|
-
generate_lib(xml, dependency_path, export, source_path, test_project_dependencies)
|
572
|
+
generate_lib(xml, dependency_path, export, source_path, annotations_path, test_project_dependencies)
|
562
573
|
end
|
563
574
|
|
564
575
|
xml.orderEntryProperties
|
565
576
|
end
|
566
577
|
end
|
567
578
|
|
568
|
-
def generate_lib(xml, dependency_path, export, source_path, project_dependencies)
|
579
|
+
def generate_lib(xml, dependency_path, export, source_path, annotations_path, project_dependencies)
|
569
580
|
project_for_dependency = Buildr.projects.detect do |project|
|
570
581
|
[project.packages, project.compile.target, project.resources.target, project.test.compile.target, project.test.resources.target].flatten.
|
571
582
|
detect { |artifact| artifact.to_s == dependency_path }
|
@@ -578,7 +589,7 @@ module Buildr #:nodoc:
|
|
578
589
|
end
|
579
590
|
project_dependencies << project_for_dependency
|
580
591
|
else
|
581
|
-
generate_module_lib(xml, url_for_path(dependency_path), export, (source_path ? url_for_path(source_path) : nil), !export)
|
592
|
+
generate_module_lib(xml, url_for_path(dependency_path), export, (source_path ? url_for_path(source_path) : nil), (annotations_path ? url_for_path(annotations_path) : nil), !export)
|
582
593
|
end
|
583
594
|
end
|
584
595
|
|
@@ -602,6 +613,14 @@ module Buildr #:nodoc:
|
|
602
613
|
xml.output(:url => file_path(self.main_output_dir.to_s))
|
603
614
|
xml.tag!('output-test', :url => file_path(self.test_output_dir.to_s))
|
604
615
|
xml.tag!('exclude-output')
|
616
|
+
paths = self.annotation_paths
|
617
|
+
unless paths.empty?
|
618
|
+
xml.tag!('annotation-paths') do |xml|
|
619
|
+
paths.each do |path|
|
620
|
+
xml.root(:url=> file_path(path))
|
621
|
+
end
|
622
|
+
end
|
623
|
+
end
|
605
624
|
end
|
606
625
|
|
607
626
|
def generate_content(xml)
|
@@ -654,12 +673,15 @@ module Buildr #:nodoc:
|
|
654
673
|
xml.orderEntry attribs
|
655
674
|
end
|
656
675
|
|
657
|
-
def generate_module_lib(xml, path, export, source_path, test = false)
|
676
|
+
def generate_module_lib(xml, path, export, source_path, annotations_path, test = false)
|
658
677
|
attribs = {:type => 'module-library'}
|
659
678
|
attribs[:exported] = '' if export
|
660
679
|
attribs[:scope] = 'TEST' if test
|
661
680
|
xml.orderEntry attribs do
|
662
681
|
xml.library do
|
682
|
+
xml.ANNOTATIONS do
|
683
|
+
xml.root :url => annotations_path
|
684
|
+
end if annotations_path
|
663
685
|
xml.CLASSES do
|
664
686
|
xml.root :url => path
|
665
687
|
end
|
@@ -170,11 +170,6 @@ module Buildr
|
|
170
170
|
'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
|
171
171
|
'xsi:schemaLocation' => 'http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd') do
|
172
172
|
xml.modelVersion '4.0.0'
|
173
|
-
xml.parent do
|
174
|
-
xml.groupId 'org.sonatype.oss'
|
175
|
-
xml.artifactId 'oss-parent'
|
176
|
-
xml.version '8'
|
177
|
-
end
|
178
173
|
xml.groupId project.group
|
179
174
|
xml.artifactId project.id
|
180
175
|
xml.version project.version
|
data/lib/buildr/java/doc.rb
CHANGED
@@ -24,6 +24,7 @@ module Buildr #:nodoc:
|
|
24
24
|
if project.doc.engine? Javadoc
|
25
25
|
options = project.doc.options
|
26
26
|
options[:windowtitle] = (project.comment || project.name) unless options[:windowtitle]
|
27
|
+
project.doc.sourcepath = project.compile.sources.dup if project.doc.sourcepath.empty?
|
27
28
|
end
|
28
29
|
end
|
29
30
|
end
|
@@ -61,6 +62,7 @@ module Buildr #:nodoc:
|
|
61
62
|
end
|
62
63
|
[:sourcepath, :classpath].each do |option|
|
63
64
|
Array(options[option]).flatten.tap do |paths|
|
65
|
+
paths = project.compile.sources if :sourcepath == option && options[option].nil?
|
64
66
|
cmd_args << "-#{option}" << paths.flatten.map(&:to_s).join(File::PATH_SEPARATOR) unless paths.empty?
|
65
67
|
end
|
66
68
|
end
|