You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2012/02/24 18:34:25 UTC

svn commit: r1293354 - in /tapestry/tapestry5/branches/5.3: ./ tapestry-component-report/ tapestry-core/ tapestry-ioc/

Author: hlship
Date: Fri Feb 24 17:34:24 2012
New Revision: 1293354

URL: http://svn.apache.org/viewvc?rev=1293354&view=rev
Log:
Generate a binary archive as part of generating a release
Remove tapestry-component-report (no longer built or used)
Add some missing licenses
    
TAP5-1790


Added:
    tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-antlr.txt
    tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-prototype.txt
    tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-scriptaculous.txt
    tapestry/tapestry5/branches/5.3/tapestry-ioc/LICENSE-slf4j.txt
Removed:
    tapestry/tapestry5/branches/5.3/tapestry-component-report/
Modified:
    tapestry/tapestry5/branches/5.3/NOTICE.txt
    tapestry/tapestry5/branches/5.3/build.gradle
    tapestry/tapestry5/branches/5.3/tapestry-ioc/build.gradle

Modified: tapestry/tapestry5/branches/5.3/NOTICE.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/NOTICE.txt?rev=1293354&r1=1293353&r2=1293354&view=diff
==============================================================================
--- tapestry/tapestry5/branches/5.3/NOTICE.txt (original)
+++ tapestry/tapestry5/branches/5.3/NOTICE.txt Fri Feb 24 17:34:24 2012
@@ -1,5 +1,12 @@
 This product includes software developed by
 The Apache Software Foundation (http://www.apache.org/).
 
-Please refer to the NOTICE.txt for each sub-module to
+Please refer to the NOTICE.txt in each sub-module to
 identify further dependencies.
+
+The Maven central repository is the prefered method to download Tapestry
+and its dependencies. The binary archive includes just basic
+dependencies for tapestry-core; using other modules (such as
+tapestry-hibernate or any of the others) requires downloading
+additional dependencies. Please refer to the Maven POM for each module
+to identify its dependencies.

Modified: tapestry/tapestry5/branches/5.3/build.gradle
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/build.gradle?rev=1293354&r1=1293353&r2=1293354&view=diff
==============================================================================
--- tapestry/tapestry5/branches/5.3/build.gradle (original)
+++ tapestry/tapestry5/branches/5.3/build.gradle Fri Feb 24 17:34:24 2012
@@ -1,12 +1,14 @@
 description = "Apache Tapestry 5 Project"
 
 apply plugin: "base"
+apply plugin: "sonar"
+
 apply from: "ssh.gradle"
 apply from: "md5.gradle"
 
 // Remember that when generating a release, this should be incremented. Also don"t forget to
 // tag the release in Subversion.
-tapestryVersion = "5.3.3-rc1"
+tapestryVersion = "5.3.3-rc-1"
 
 jettyVersion = "7.0.0.v20091005"
 tomcatVersion = "6.0.30"
@@ -17,6 +19,13 @@ servletAPIVersion = "2.5"
 // Provided so that the CI server can override the normal version number for nightly builds.
 version = System.getProperty("project-version", tapestryVersion)
 
+// Let analysis.apache.org get in touch with our builds
+sonarUrl = System.getProperty("sonarUrl", "http://analysis.apache.org");
+sonarDbUrl = System.getProperty("sonarDbUrl", "");
+sonarDbUsername = System.getProperty("sonarDbUsername", "");
+sonarDbPassword = System.getProperty("sonarDbPassword", "");
+sonarDbDriverClassName = "com.mysql.jdbc.Driver"
+
 stagingUrl = "https://repository.apache.org/service/local/staging/deploy/maven2/"
 snapshotUrl = "https://repository.apache.org/content/repositories/snapshots"
 
@@ -28,13 +37,28 @@ deployUsernameProperty = isSnapshot() ? 
 deployPasswordProperty = isSnapshot() ? "snapshotDeployPassword" : "apacheDeployPassword"
 
 canDeploy = [deployUsernameProperty, deployPasswordProperty].every { project.hasProperty(it) }
+
 deployUsername = { getProperty(deployUsernameProperty) }
 deployPassword = { getProperty(deployPasswordProperty) }
 
+sonar {
+  server {
+    url = sonarUrl
+  }
+  database {
+    url = sonarDbUrl
+    driverClassName = sonarDbDriverClassName
+    username = sonarDbUsername
+    password = sonarDbPassword
+  }
+}
+
 allprojects {
 
   apply plugin: "eclipse"
   apply plugin: "idea"
+  apply plugin: "signing"
+
 
   repositories {
     mavenCentral()
@@ -66,10 +90,19 @@ configurations {
   if (doSign) {
     published.extendsFrom signatures
   }
+  binaries // additional dependencies included in the binary archive
 }
 
 dependencies {
   javadoc project(":tapestry-javadoc")
+
+  // From tapestry-ioc:
+  binaries "javax.inject:javax.inject:1"
+  binaries "org.slf4j:slf4j-api:1.6.1"
+  binaries "log4j:log4j:1.2.14"
+  binaries "org.slf4j:slf4j-log4j12:1.6.1"
+  binaries "commons-codec:commons-codec:1.5"
+  binaries "org.antlr:antlr-runtime:3.3", { transitive = false }
 }
 
 subprojects {
@@ -148,7 +181,6 @@ subprojects {
   }
 
   if (rootProject.doSign) {
-    apply plugin: "signing"
     // sign (create PGP signature for) archives (standard JARs)
     // and meta (sources JARs)
     signing { sign configurations.archives, configurations.meta }
@@ -166,8 +198,8 @@ subprojects {
       repositories {
 
         project.deployer = repositories.mavenDeployer {
-
-          if (doSign) {
+          
+	  if (doSign) {
             beforeDeployment { MavenDeployment deployment -> signPom(deployment) }
 	  }
 
@@ -188,6 +220,7 @@ subprojects.each { project.evaluationDep
 
 // Cribbed from https://github.com/hibernate/hibernate-core/blob/master/release/release.gradle#L19
 
+
 task aggregateJavadoc(type: Javadoc) {
 
   dependsOn configurations.javadoc
@@ -289,32 +322,101 @@ task zippedJavadoc(type: Zip) {
   into "apidocs"
 }
 
-task generateMD5Checksums(type: GenMD5) {
+task zippedBinaries(type:Zip) {
+  description "Zip archive of binaries of each sub-project"
+  // TODO: Plus dependencies?
   group "Release artifact"
-  description "Creates MD5 checksums for zippedJavadoc and zippedSources"
-  source zippedJavadoc, zippedSources
-  outputDir "$buildDir/md5"
+  // This may create a few unwanted dependencies, but does
+  // seem to ensure that the subprojects are created
+  inputs.files subprojects*.configurations*.archives.artifacts
+
+  destinationDir buildDir
+  baseName "apache-tapestry"
+  version project.version
+  classifier "bin"
+
+  // This is via some experimentation
+  from subprojects*.configurations*.archives.artifacts*.file*.findAll { 
+    ! (it.name.endsWith(".asc") || it.name.startsWith("quickstart"))
+  }
+
+  from configurations.binaries
+
+  // Pick up various licenses and notices
+
+  from (projectDir) { 
+    include "*.txt"
+  }
+
+  subprojects.each {  sub ->
+    from (sub.projectDir) { 
+      include "*.txt"
+      into sub.name
+    }
+  }
+
+  
+
 }
 
-task uploadSourcesAndJavadocs(type: Scp) {
-  group "Release artifact"
-  description "Uploads source and JavaDoc Zips and MD5 checksums to people.apache.org"
 
-  source files(generateMD5Checksums, generateMD5Checksums.inputs.files)
-  host "people.apache.org"
-  userName deployUsername()
-  password deployPassword()
-  // The destination folder needs to already exist.
-  destination "public_html/tapestry-releases"
-  verbose true
+
+
+if (canDeploy) {
+
+  configurations { 
+    archives
+    uploads.extendsFrom archives, signatures
+  }
+
+
+  artifacts { 
+    archives zippedJavadoc, zippedSources, zippedBinaries
+  }
+
+  configurations { 
+    upload.extendsFrom archives, signatures
+  }
+
+  task generateMD5Checksums(type: GenMD5) {
+    group "Release artifact"
+    description "Creates MD5 checksums for archives of source and JavaDoc"
+    source tasks.withType(Zip)
+    outputDir "$buildDir/md5"
+  }
+
+  if (doSign) {
+    signing { 
+      sign configurations.archives
+    }
+  }
+
+  task uploadArtifacts(type: Scp) {
+    group "Release artifact"
+    description "Uploads top-level artifacts to people.apache.org, along with MD5 checksums and PGP signatures (if signing is enabled)"
+
+    source files(generateMD5Checksums, configurations.uploads.allArtifacts.files)
+
+    host "people.apache.org"
+    userName deployUsername()
+    password deployPassword()
+
+    // The destination folder at people.apache.org needs to already exist.
+    destination "public_html/tapestry-releases"
+
+    doFirst { 
+      logger.info "Uploading the following files to people.apache.org (as user '${userName}'):"
+      source.files.each {  logger.info "  $it"}
+    }
+  }
+
+  task generateRelease {
+    dependsOn "quickstart:clean", continuousIntegration, subprojects.uploadPublished, uploadArtifacts
+    group "Release artifact"
+    description "Generates and uploads a final release to Apache Nexus"
+  }
 }
 
 boolean isSnapshot() {
   project.version.contains("SNAPSHOT")
 }
-
-task generateRelease {
-  dependsOn "quickstart:clean", continuousIntegration, subprojects.uploadPublished, uploadSourcesAndJavadocs
-  group "Release artifact"
-  description "Generates and uploads a final release to Apache Nexus"
-}

Added: tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-antlr.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-antlr.txt?rev=1293354&view=auto
==============================================================================
--- tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-antlr.txt (added)
+++ tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-antlr.txt Fri Feb 24 17:34:24 2012
@@ -0,0 +1,26 @@
+[The BSD License]
+Copyright (c) 2010 Terence Parr
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ 1. Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+ 3. The name of the author may not be used to endorse or promote products
+    derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Added: tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-prototype.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-prototype.txt?rev=1293354&view=auto
==============================================================================
--- tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-prototype.txt (added)
+++ tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-prototype.txt Fri Feb 24 17:34:24 2012
@@ -0,0 +1,18 @@
+Copyright (c) 2005-2007 Sam Stephenson
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+“Software”), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+

Added: tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-scriptaculous.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-scriptaculous.txt?rev=1293354&view=auto
==============================================================================
--- tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-scriptaculous.txt (added)
+++ tapestry/tapestry5/branches/5.3/tapestry-core/LICENSE-scriptaculous.txt Fri Feb 24 17:34:24 2012
@@ -0,0 +1,21 @@
+Copyright © 2005-2008 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+“Software”), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+

Added: tapestry/tapestry5/branches/5.3/tapestry-ioc/LICENSE-slf4j.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/tapestry-ioc/LICENSE-slf4j.txt?rev=1293354&view=auto
==============================================================================
--- tapestry/tapestry5/branches/5.3/tapestry-ioc/LICENSE-slf4j.txt (added)
+++ tapestry/tapestry5/branches/5.3/tapestry-ioc/LICENSE-slf4j.txt Fri Feb 24 17:34:24 2012
@@ -0,0 +1,21 @@
+Copyright (c) 2004-2011 QOS.ch
+ All rights reserved.
+
+ Permission is hereby granted, free  of charge, to any person obtaining
+ a  copy  of this  software  and  associated  documentation files  (the
+ "Software"), to  deal in  the Software without  restriction, including
+ without limitation  the rights to  use, copy, modify,  merge, publish,
+ distribute,  sublicense, and/or sell  copies of  the Software,  and to
+ permit persons to whom the Software  is furnished to do so, subject to
+ the following conditions:
+ 
+ The  above  copyright  notice  and  this permission  notice  shall  be
+ included in all copies or substantial portions of the Software.
+ 
+ THE  SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
+ EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
+ MERCHANTABILITY,    FITNESS    FOR    A   PARTICULAR    PURPOSE    AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Modified: tapestry/tapestry5/branches/5.3/tapestry-ioc/build.gradle
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/branches/5.3/tapestry-ioc/build.gradle?rev=1293354&r1=1293353&r2=1293354&view=diff
==============================================================================
--- tapestry/tapestry5/branches/5.3/tapestry-ioc/build.gradle (original)
+++ tapestry/tapestry5/branches/5.3/tapestry-ioc/build.gradle Fri Feb 24 17:34:24 2012
@@ -9,6 +9,9 @@ dependencies {
 
   compile "javassist:javassist:3.12.1.GA"
 
+  // For now, keep these compile dependencies synchronized with the binaries dependencies
+  // of the top-level build:
+
   compile "javax.inject:javax.inject:1"
 
   compile "org.slf4j:slf4j-api:1.6.1"