You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by bo...@apache.org on 2011/01/28 06:45:30 UTC
svn commit: r1064465 - in /buildr/trunk: CHANGELOG
lib/buildr/java/packaging.rb lib/buildr/scala/doc.rb spec/scala/doc_spec.rb
Author: boisvert
Date: Fri Jan 28 05:45:30 2011
New Revision: 1064465
URL: http://svn.apache.org/viewvc?rev=1064465&view=rev
Log:
Added: BUILDR-564 Add package(:scaladoc)
Fixed: Scaladoc task would cause build to exit prematurely
Modified:
buildr/trunk/CHANGELOG
buildr/trunk/lib/buildr/java/packaging.rb
buildr/trunk/lib/buildr/scala/doc.rb
buildr/trunk/spec/scala/doc_spec.rb
Modified: buildr/trunk/CHANGELOG
URL: http://svn.apache.org/viewvc/buildr/trunk/CHANGELOG?rev=1064465&r1=1064464&r2=1064465&view=diff
==============================================================================
--- buildr/trunk/CHANGELOG (original)
+++ buildr/trunk/CHANGELOG Fri Jan 28 05:45:30 2011
@@ -12,6 +12,7 @@
* Added: BUILDR-538 Shell tasks should support passing :java_args
* Added: BUILDR-544 Support ${groupId} in pom files (Chris Dean)
* Added: BUILDR-552 Projects may now be defined using project(:name) and a block
+* Added: BUILDR-564 Add package(:scaladoc)
* Added: Automatically add "require buildr/{groovy,scala}" when generating
project if Groovy/Scala files are detected.
* Change: BUILDR-540 Upgrade to rspec 2.1.0
@@ -35,6 +36,7 @@
* Fixed: BUILDR-558 Artifact uploads should show a progress bar (Tammo van Lessen)
* Fixed: BUILDR-560 show a meaning full error message when POM cannot be parsed
(Tammo van Lessen)
+* Fixed: Scaladoc task would cause build to exit prematurely
1.4.4 (2010-11-16)
* Change: BUILDR-549 Upgrade to RJB 1.3.3 to address "Cannot create JVM" issue with Java Update 3
Modified: buildr/trunk/lib/buildr/java/packaging.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/lib/buildr/java/packaging.rb?rev=1064465&r1=1064464&r2=1064465&view=diff
==============================================================================
--- buildr/trunk/lib/buildr/java/packaging.rb (original)
+++ buildr/trunk/lib/buildr/java/packaging.rb Fri Jan 28 05:45:30 2011
@@ -714,7 +714,7 @@ module Buildr
end
def package_as_javadoc_spec(spec) #:nodoc:
- spec.merge(:type=>:zip, :classifier=>'javadoc')
+ spec.merge(:type=>:jar, :classifier=>'javadoc')
end
def package_as_javadoc(file_name) #:nodoc:
Modified: buildr/trunk/lib/buildr/scala/doc.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/lib/buildr/scala/doc.rb?rev=1064465&r1=1064464&r2=1064465&view=diff
==============================================================================
--- buildr/trunk/lib/buildr/scala/doc.rb (original)
+++ buildr/trunk/lib/buildr/scala/doc.rb Fri Jan 28 05:45:30 2011
@@ -61,8 +61,11 @@ module Buildr
info "Generating Scaladoc for #{project.name}"
trace (['scaladoc'] + cmd_args).join(' ')
Java.load
- Java.scala.tools.nsc.ScalaDoc.main(cmd_args.to_java(Java.java.lang.String)) == 0 or
- fail 'Failed to generate Scaladocs, see errors above'
+ begin
+ Java.scala.tools.nsc.ScalaDoc.process(cmd_args.to_java(Java.java.lang.String))
+ rescue => e
+ fail 'Failed to generate Scaladocs, see errors above: ' + e
+ end
end
end
end
@@ -115,8 +118,23 @@ module Buildr
end
end
+ module Packaging
+ module Scala
+ def package_as_scaladoc_spec(spec) #:nodoc:
+ spec.merge(:type=>:jar, :classifier=>'scaladoc')
+ end
+
+ def package_as_scaladoc(file_name) #:nodoc:
+ ZipTask.define_task(file_name).tap do |zip|
+ zip.include :from=>doc.target
+ end
+ end
+ end
+ end
+
class Project
include ScaladocDefaults
+ include Packaging::Scala
end
end
Modified: buildr/trunk/spec/scala/doc_spec.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/spec/scala/doc_spec.rb?rev=1064465&r1=1064464&r2=1064465&view=diff
==============================================================================
--- buildr/trunk/spec/scala/doc_spec.rb (original)
+++ buildr/trunk/spec/scala/doc_spec.rb Fri Jan 28 05:45:30 2011
@@ -57,12 +57,32 @@ describe "Scaladoc" do
define('foo') do
doc.using :windowtitle => "foo"
end
- Java.scala.tools.nsc.ScalaDoc.should_receive(:main) do |args|
+ Java.scala.tools.nsc.ScalaDoc.should_receive(:process) do |args|
# Convert Java Strings to Ruby Strings, if needed.
args.map { |a| a.is_a?(String) ? a : a.toString }.should include("-doc-title")
0 # normal return
end
project('foo').doc.invoke
end
+end
+
+describe "package(:scaladoc)" do
+ it "should generate target/project-version-scaladoc.jar" do
+ write 'src/main/scala/Foo.scala', 'class Foo'
+ define 'foo', :version=>'1.0' do
+ package(:scaladoc)
+ end
+
+ scaladoc = project('foo').package(:scaladoc)
+ scaladoc.should point_to_path('target/foo-1.0-scaladoc.jar')
+ lambda {
+ project('foo').task('package').invoke
+ }.should change { File.exist?('target/foo-1.0-scaladoc.jar') }.to(true)
+
+ scaladoc.should exist
+ scaladoc.should contain('index.html')
+ scaladoc.should contain('Foo.html')
+ end
end
+