This is an automated email from the ASF dual-hosted git repository. thiagohp pushed a commit to branch latest-java-tests in repository https://gitbox.apache.org/repos/asf/tapestry-5.git
commit 5d8f3b0eb802cd7fc11b94b15bba8dbf69c24f5c Author: Thiago H. de Paula Figueiredo <[email protected]> AuthorDate: Fri Jan 14 22:07:57 2022 -0300 Partial work on upgrading to latest Gradle --- beanmodel/build.gradle | 14 +-- build.gradle | 84 +++++++------ buildSrc/build.gradle | 2 +- commons/build.gradle | 6 +- genericsresolver-guava/build.gradle | 8 +- gradle/wrapper/gradle-wrapper.jar | Bin 54727 -> 55616 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 22 +++- gradlew.bat | 18 ++- plastic/build.gradle | 2 +- settings.gradle | 24 ++++ tapestry-beanvalidator/build.gradle | 8 +- tapestry-clojure/build.gradle | 8 +- tapestry-core/build.gradle | 24 ++-- tapestry-func/build.gradle | 4 +- tapestry-hibernate-core/build.gradle | 14 +-- tapestry-hibernate/build.gradle | 10 +- tapestry-http/build.gradle | 14 +-- tapestry-internal-test/build.gradle | 2 +- tapestry-ioc-jcache/build.gradle | 10 +- tapestry-ioc-junit/build.gradle | 4 +- tapestry-ioc/build.gradle | 24 ++-- tapestry-javadoc/build.gradle | 6 +- tapestry-jmx/build.gradle | 4 +- tapestry-jpa/build.gradle | 16 +-- tapestry-kaptcha/build.gradle | 6 +- tapestry-latest-java-tests/LICENSE.txt | 202 +++++++++++++++++++++++++++++++ tapestry-latest-java-tests/build.gradle | 5 + tapestry-mongodb/build.gradle | 10 +- tapestry-openapi-viewer/build.gradle | 4 +- tapestry-rest-jackson/build.gradle | 6 +- tapestry-runner/build.gradle | 20 +-- tapestry-spock/build.gradle | 8 +- tapestry-spring/build.gradle | 6 +- tapestry-test-data/build.gradle | 2 +- tapestry-test/build.gradle | 14 +-- tapestry-upload/build.gradle | 8 +- tapestry-version-migrator/build.gradle | 2 +- tapestry-webresources/build.gradle | 20 +-- 39 files changed, 459 insertions(+), 184 deletions(-) diff --git a/beanmodel/build.gradle b/beanmodel/build.gradle index c63d5b6..e1bb074 100644 --- a/beanmodel/build.gradle +++ b/beanmodel/build.gradle @@ -9,21 +9,21 @@ apply plugin: 'antlr' buildDir = 'target/gradle-build' dependencies { - compile project(":plastic") - compile project(":tapestry5-annotations") - compile project(":commons") - compile "org.slf4j:slf4j-api:${versions.slf4j}" + implementation project(":plastic") + api project(":tapestry5-annotations") + api project(":commons") + implementation "org.slf4j:slf4j-api:${versions.slf4j}" // ANTLR tool path used with the generateGrammarSource task antlr "org.antlr:antlr:3.5.2" // Transitive will bring in the unwanted string template library as well - compile "org.antlr:antlr-runtime:3.5.2", { + implementation "org.antlr:antlr-runtime:3.5.2", { exclude group: "org.antlr", module: "stringtemplate" } - testCompile "org.testng:testng:${versions.testng}", { transitive = false } - testCompile "org.easymock:easymock:${versions.easymock}" + testImplementation "org.testng:testng:${versions.testng}", { transitive = false } + testImplementation "org.easymock:easymock:${versions.easymock}" } clean.delete generateGrammarSource.outputDirectory diff --git a/build.gradle b/build.gradle index b73e698..c70e907 100755 --- a/build.gradle +++ b/build.gradle @@ -80,8 +80,6 @@ allprojects { apply plugin: "eclipse" apply plugin: "idea" - apply plugin: "signing" - repositories { mavenCentral() @@ -133,12 +131,28 @@ String jdkVersion = System.properties['java.version'] def jdkMajorVersion = jdkVersion.substring(0, jdkVersion.indexOf(".")) // 1, 9, 10... subprojects { - - def specifyMaxPermSize = jdkVersion ==~ /1\.[67].+/ - version = parent.version + def specifyMaxPermSize = jdkVersion ==~ /1\.[67].+/ - group = "org.apache.tapestry" + apply plugin: "maven-publish" // for deployment + + publishing { + publications { + maven(MavenPublication) { + version = parent.version + groupId = "org.apache.tapestry" + // from components.java + } + } + } + + if (doSign) { + apply plugin: "signing" + signing { + // sign publishing.publications.mavenJava + sign publishing.publications.maven + } + } configurations { provided @@ -146,8 +160,6 @@ subprojects { apply plugin: "java" apply plugin: "groovy" // mostly for testing - apply plugin: "maven" // for deployment - // TODO: replace the "maven" plugin above with the newer "maven-publish" apply plugin: "project-report" apply plugin: "jacoco" @@ -179,9 +191,11 @@ subprojects { dependencies { - testCompile "org.spockframework:spock-core:${versions.spock}" + // https://docs.gradle.org/7.3.3/userguide/upgrading_version_6.html#potential_breaking_changes, + // Table 1. Common configuration upgrades + testImplementation "org.spockframework:spock-core:${versions.spock}" - testRuntime "org.slf4j:slf4j-log4j12:${versions.slf4j}" + testRuntimeOnly "org.slf4j:slf4j-log4j12:${versions.slf4j}" } compileTestGroovy { @@ -274,40 +288,38 @@ subprojects { } } - if (rootProject.doSign) { - // sign (create PGP signature for) archives (standard JARs) - // and meta (sources JARs) - signing { sign configurations.archives, configurations.meta } - } - - uploadPublished { - - doFirst { - if (!canDeploy) { - throw new InvalidUserDataException("Missing upload credentials. Set '$deployUsernameProperty' and '$deployPasswordProperty' root project properties.") - } - } +// uploadPublished { +// +// doFirst { +// if (!canDeploy) { +// throw new InvalidUserDataException("Missing upload credentials. Set '$deployUsernameProperty' and '$deployPasswordProperty' root project properties.") +// } +// } if (canDeploy) { repositories { - - project.ext.deployer = repositories.mavenDeployer { - - if (doSign) { - beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } - } - - repository(url: stagingUrl) { - authentication(userName: deployUsername(), password: deployPassword()) + + maven { + name = "apacheSnapshots" + url = snapshotUrl + credentials { + username = deployUsername() + password = deployPassword() } - - snapshotRepository(url: snapshotUrl) { - authentication(userName: deployUsername(), password: deployPassword()) + } + + maven { + name = "apacheStaging" + url = stagingUrl + credentials { + username = deployUsername() + password = deployPassword() } } + } } - } +// } } subprojects.each { project.evaluationDependsOn(it.name) } diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index 33da1fc..c08ff05 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -6,7 +6,7 @@ repositories { dependencies { - compile ("ro.isdc.wro4j:wro4j-extensions:1.8.0"){ + implementation ("ro.isdc.wro4j:wro4j-extensions:1.8.0"){ exclude group: 'org.jruby' exclude module: 'spring-web' exclude module: 'closure-compiler' diff --git a/commons/build.gradle b/commons/build.gradle index 31859b4..3e2396b 100644 --- a/commons/build.gradle +++ b/commons/build.gradle @@ -8,9 +8,9 @@ description = "Project including common classes for tapestry-core, tapestry-ioc buildDir = 'target/gradle-build' dependencies { - compile project(":plastic") - compile project(":tapestry5-annotations") - compile project(":tapestry-func") + implementation project(":plastic") + implementation project(":tapestry5-annotations") + implementation project(":tapestry-func") } jar { diff --git a/genericsresolver-guava/build.gradle b/genericsresolver-guava/build.gradle index f7b037c..c6001a9 100644 --- a/genericsresolver-guava/build.gradle +++ b/genericsresolver-guava/build.gradle @@ -1,8 +1,8 @@ description = "Replaces the Tapestry Commons's own Java Generics resolution code with the one from Google Guava's one" dependencies { - compile project(':commons') - testCompile project(':tapestry-core') - testCompile project(':tapestry-test') - provided compile ('com.google.guava:guava:27.0.1-jre') + implementation project(':commons') + testImplementation project(':tapestry-core') + testImplementation project(':tapestry-test') + provided implementation ('com.google.guava:guava:27.0.1-jre') } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 27768f1..5c2d1cf 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index fb7ef98..2e6e589 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip diff --git a/gradlew b/gradlew index cccdd3d..83f2acf 100755 --- a/gradlew +++ b/gradlew @@ -1,5 +1,21 @@ #!/usr/bin/env sh +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + ############################################################################## ## ## Gradle start up script for UN*X @@ -28,7 +44,7 @@ APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" @@ -109,8 +125,8 @@ if $darwin; then GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" fi -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` JAVACMD=`cygpath --unix "$JAVACMD"` diff --git a/gradlew.bat b/gradlew.bat index e95643d..24467a1 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome diff --git a/plastic/build.gradle b/plastic/build.gradle index 17e24b6..83be57d 100644 --- a/plastic/build.gradle +++ b/plastic/build.gradle @@ -1,7 +1,7 @@ description = "High-level runtime transformations of Java classes" dependencies { - compile "org.slf4j:slf4j-api:${versions.slf4j}" + implementation "org.slf4j:slf4j-api:${versions.slf4j}" } test { diff --git a/settings.gradle b/settings.gradle index a3705d0..5f58e6b 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,9 +1,33 @@ +def getJavaLatestMajorVersion() { + return 17 +} + +def getJavaMajorVersion() { + String javaVersion = System.getProperty("java.version") + return Integer.parseInt(javaVersion.substring(0, javaVersion.indexOf("."))) +} + +def isJavaLatestMajorVersion() { + return getJavaMajorVersion() == getJavaLatestMajorVersion() +} + +def isWrongJavaLatestMajorVersion() { + return getJavaMajorVersion() > getJavaLatestMajorVersion() +} + +if (isWrongJavaLatestMajorVersion()) { + println "Current major Java version is higher than the latest one configured in settings.gradle"; +} + include "plastic", "tapestry5-annotations", "tapestry-test", "tapestry-func", "tapestry-ioc", "tapestry-json", "tapestry-http", "tapestry-core" include "tapestry-hibernate-core", "tapestry-hibernate", "tapestry-jmx", "tapestry-upload", "tapestry-spring" include "tapestry-beanvalidator", "tapestry-jpa", "tapestry-kaptcha" if (JavaVersion.current() != JavaVersion.VERSION_1_8) { include "tapestry-javadoc" } +if (isJavaLatestMajorVersion()) { + include "tapestry-latest-java-tests" +} include "quickstart", "tapestry-clojure", "tapestry-mongodb" include "tapestry-test-data", 'tapestry-internal-test', "tapestry-ioc-junit" include "tapestry-webresources", "tapestry-runner", "tapestry-test-constants" diff --git a/tapestry-beanvalidator/build.gradle b/tapestry-beanvalidator/build.gradle index 24ac5a1..4db1bba 100644 --- a/tapestry-beanvalidator/build.gradle +++ b/tapestry-beanvalidator/build.gradle @@ -3,12 +3,12 @@ import t5build.* description = "Support for JSR-303 Bean Validation via the Hibernate validator implementation" dependencies { - compile project(':tapestry-core') + implementation project(':tapestry-core') - compile "javax.validation:validation-api:1.0.0.GA" - compile "org.hibernate:hibernate-validator:4.3.2.Final" + implementation "javax.validation:validation-api:1.0.0.GA" + implementation "org.hibernate:hibernate-validator:4.3.2.Final" - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') } task compileCoffeeScript(type: CompileCoffeeScript) { diff --git a/tapestry-clojure/build.gradle b/tapestry-clojure/build.gradle index 38db04e..9ce3f66 100644 --- a/tapestry-clojure/build.gradle +++ b/tapestry-clojure/build.gradle @@ -1,12 +1,12 @@ description = "Allows Clojure functions to be injected into Tapestry services and components" dependencies { - compile project(':tapestry-ioc') - compile "org.clojure:clojure:1.6.0" + implementation project(':tapestry-ioc') + implementation "org.clojure:clojure:1.6.0" // Added just to prove that it works (TAP5-1945) - testCompile project(':tapestry-core') - testRuntime "javax.servlet:javax.servlet-api:${versions.servletapi}" + testImplementation project(':tapestry-core') + testRuntimeOnly "javax.servlet:javax.servlet-api:${versions.servletapi}" } test { diff --git a/tapestry-core/build.gradle b/tapestry-core/build.gradle index 640402d..16f1b11 100644 --- a/tapestry-core/build.gradle +++ b/tapestry-core/build.gradle @@ -12,27 +12,27 @@ project.ext { clean.delete mainGeneratedDir, testGeneratedDir dependencies { - compile project(':tapestry-ioc') - compile project(':tapestry-json') - compile project(':beanmodel') - compile project(':tapestry-http') + implementation project(':tapestry-ioc') + implementation project(':tapestry-json') + implementation project(':beanmodel') + implementation project(':tapestry-http') - compile 'jakarta.annotation:jakarta.annotation-api:1.3.4' - compile 'jakarta.xml.bind:jakarta.xml.bind-api:2.3.2' - compile 'org.glassfish.jaxb:jaxb-runtime:2.3.2' - compile 'com.sun.xml.ws:jaxws-rt:2.3.2' - compile 'javax.xml.ws:jaxws-api:2.3.1' + implementation 'jakarta.annotation:jakarta.annotation-api:1.3.4' + implementation 'jakarta.xml.bind:jakarta.xml.bind-api:2.3.2' + implementation 'org.glassfish.jaxb:jaxb-runtime:2.3.2' + implementation 'com.sun.xml.ws:jaxws-rt:2.3.2' + implementation 'javax.xml.ws:jaxws-api:2.3.1' provided project(":tapestry-test") provided project(":tapestry-test-constants") provided "javax.servlet:javax.servlet-api:${versions.servletapi}" - compile "commons-codec:commons-codec:1.10" + implementation "commons-codec:commons-codec:1.10" - testRuntime "org.hsqldb:hsqldb:1.8.0.10" + testRuntimeOnly "org.hsqldb:hsqldb:1.8.0.10" - testRuntime 'com.google.inject:guice:3.0' + testRuntimeOnly 'com.google.inject:guice:3.0' } task preprocessCoffeeScript(type: PreprocessCoffeeScript) { diff --git a/tapestry-func/build.gradle b/tapestry-func/build.gradle index 566e264..a160dd0 100644 --- a/tapestry-func/build.gradle +++ b/tapestry-func/build.gradle @@ -1,6 +1,6 @@ description = "Light-weight functional programming for Flows of values" dependencies { - testCompile "org.testng:testng:${versions.testng}" - testCompile "commons-lang:commons-lang:2.6" + testImplementation "org.testng:testng:${versions.testng}" + testImplementation "commons-lang:commons-lang:2.6" } \ No newline at end of file diff --git a/tapestry-hibernate-core/build.gradle b/tapestry-hibernate-core/build.gradle index 4aca3ed..26c7c5a 100644 --- a/tapestry-hibernate-core/build.gradle +++ b/tapestry-hibernate-core/build.gradle @@ -2,16 +2,16 @@ description = "Basic Hibernate services for Tapestry, useable outside of a Tapes dependencies { - compile project(':tapestry-ioc') + implementation project(':tapestry-ioc') - compile group: 'org.hibernate', name: 'hibernate-core', version: versions.hibernate + implementation group: 'org.hibernate', name: 'hibernate-core', version: versions.hibernate - compile 'org.glassfish.jaxb:jaxb-runtime:2.3.2' + implementation 'org.glassfish.jaxb:jaxb-runtime:2.3.2' - testCompile project(':tapestry-test') - testCompile "org.easymock:easymock:${versions.easymock}" - testCompile "org.testng:testng:${versions.testng}", { transitive = false } - testRuntime "org.hsqldb:hsqldb:2.2.8" + testImplementation project(':tapestry-test') + testImplementation "org.easymock:easymock:${versions.easymock}" + testImplementation "org.testng:testng:${versions.testng}", { transitive = false } + testRuntimeOnly "org.hsqldb:hsqldb:2.2.8" } jar { diff --git a/tapestry-hibernate/build.gradle b/tapestry-hibernate/build.gradle index 52e2ca3..06286ba 100644 --- a/tapestry-hibernate/build.gradle +++ b/tapestry-hibernate/build.gradle @@ -1,13 +1,13 @@ description = "Provides support for simple CRUD applications built on top of Tapestry and Hibernate" dependencies { - compile project(':tapestry-core') - compile project(':tapestry-hibernate-core') - compile "org.jboss.logging:jboss-logging:3.3.0.Final" + implementation project(':tapestry-core') + implementation project(':tapestry-hibernate-core') + implementation "org.jboss.logging:jboss-logging:3.3.0.Final" - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') - testRuntime "org.hsqldb:hsqldb:2.2.8" + testRuntimeOnly "org.hsqldb:hsqldb:2.2.8" } jar { diff --git a/tapestry-http/build.gradle b/tapestry-http/build.gradle index 0840bf9..c9d4efc 100644 --- a/tapestry-http/build.gradle +++ b/tapestry-http/build.gradle @@ -5,21 +5,21 @@ import t5build.* description = "Tapestry classes that handle HTTP requests" dependencies { - compile project(':tapestry-ioc') - compile project(':tapestry-json') - compile project(':beanmodel') + implementation project(':tapestry-ioc') + implementation project(':tapestry-json') + implementation project(':beanmodel') provided project(":tapestry-test") provided project(":tapestry-test-constants") provided "javax.servlet:javax.servlet-api:${versions.servletapi}" - compile "commons-codec:commons-codec:1.10" - compile "commons-io:commons-io:2.11.0" + implementation "commons-codec:commons-codec:1.10" + implementation "commons-io:commons-io:2.11.0" - testRuntime "org.hsqldb:hsqldb:1.8.0.10" + testRuntimeOnly "org.hsqldb:hsqldb:1.8.0.10" - testRuntime 'com.google.inject:guice:3.0' + testRuntimeOnly 'com.google.inject:guice:3.0' } // Not sure why this is necessary: diff --git a/tapestry-internal-test/build.gradle b/tapestry-internal-test/build.gradle index 7ca24b6..9caa72c 100644 --- a/tapestry-internal-test/build.gradle +++ b/tapestry-internal-test/build.gradle @@ -1,5 +1,5 @@ description = "Internal utilties used to assist with testing; not intended for outside use" dependencies { - compile project(":tapestry-core") + implementation project(":tapestry-core") } \ No newline at end of file diff --git a/tapestry-ioc-jcache/build.gradle b/tapestry-ioc-jcache/build.gradle index 5a06738..878cbab 100644 --- a/tapestry-ioc-jcache/build.gradle +++ b/tapestry-ioc-jcache/build.gradle @@ -12,11 +12,11 @@ project.ext.libraryVersions = [ dependencies { /*compile "org.apache.tapestry:tapestry-ioc:${tapestryVersion()}"*/ provided project(":tapestry-ioc") - compile "javax.cache:cache-api:${libraryVersions.jcache}" - compile "org.jsr107.ri:cache-annotations-ri-common:${libraryVersions.jcache}" - testCompile "javax.cache:cache-tests:${libraryVersions.jcache}" - testCompile "javax.cache:test-domain:${libraryVersions.jcache}" - testRuntime "org.infinispan:infinispan-jcache:7.0.0.Alpha4" /* Just to be able to run the tests */ + implementation "javax.cache:cache-api:${libraryVersions.jcache}" + implementation "org.jsr107.ri:cache-annotations-ri-common:${libraryVersions.jcache}" + testImplementation "javax.cache:cache-tests:${libraryVersions.jcache}" + testImplementation "javax.cache:test-domain:${libraryVersions.jcache}" + testRuntimeOnly "org.infinispan:infinispan-jcache:7.0.0.Alpha4" /* Just to be able to run the tests */ } jar { diff --git a/tapestry-ioc-junit/build.gradle b/tapestry-ioc-junit/build.gradle index 6b2b625..39a81a2 100644 --- a/tapestry-ioc-junit/build.gradle +++ b/tapestry-ioc-junit/build.gradle @@ -1,8 +1,8 @@ description = "Utilities for junit testing a tapestry-ioc application" dependencies { - compile project(':tapestry-ioc') - compile 'junit:junit:4.11' + implementation project(':tapestry-ioc') + implementation 'junit:junit:4.11' } test { diff --git a/tapestry-ioc/build.gradle b/tapestry-ioc/build.gradle index cfce1ca..b571603 100644 --- a/tapestry-ioc/build.gradle +++ b/tapestry-ioc/build.gradle @@ -1,27 +1,27 @@ description = "A code-centric, high-performance, simple Inversion of Control container" dependencies { - compile project(':tapestry-func') - compile project(':tapestry5-annotations') - compile project(":plastic") - compile project(":beanmodel") + implementation project(':tapestry-func') + implementation project(':tapestry5-annotations') + implementation project(":plastic") + implementation project(":beanmodel") provided project(':tapestry-test') // For now, keep these compile dependencies synchronized with the binaries dependencies // of the top-level build: - compile "javax.inject:javax.inject:1" - compile "javax.annotation:javax.annotation-api:1.3.2" + implementation "javax.inject:javax.inject:1" + implementation "javax.annotation:javax.annotation-api:1.3.2" - compile "org.slf4j:slf4j-api:${versions.slf4j}" + implementation "org.slf4j:slf4j-api:${versions.slf4j}" - testCompile "commons-lang:commons-lang:2.6" - testCompile "org.apache.commons:commons-lang3:3.4" + testImplementation "commons-lang:commons-lang:2.6" + testImplementation "org.apache.commons:commons-lang3:3.4" - testCompile "org.apache.commons:commons-lang3:3.4" - testCompile "org.hibernate:hibernate-core:5.2.10.Final" - testRuntime "org.hsqldb:hsqldb:2.2.8" + testImplementation "org.apache.commons:commons-lang3:3.4" + testImplementation "org.hibernate:hibernate-core:5.2.10.Final" + testRuntimeOnly "org.hsqldb:hsqldb:2.2.8" provided "org.testng:testng:${versions.testng}", { transitive = false } } diff --git a/tapestry-javadoc/build.gradle b/tapestry-javadoc/build.gradle index c2b7241..d72b91a 100644 --- a/tapestry-javadoc/build.gradle +++ b/tapestry-javadoc/build.gradle @@ -1,11 +1,11 @@ description = "JavaDoc Plugin for Tapestry that generates component reference documentation for component classes" dependencies { - compile project(':tapestry-core') - compile "commons-lang:commons-lang:2.6" + implementation project(':tapestry-core') + implementation "commons-lang:commons-lang:2.6" if (JavaVersion.current() <= JavaVersion.VERSION_1_8) { - compile files(getTools()) + implementation files(getTools()) } } diff --git a/tapestry-jmx/build.gradle b/tapestry-jmx/build.gradle index 465c74e..ef371e8 100644 --- a/tapestry-jmx/build.gradle +++ b/tapestry-jmx/build.gradle @@ -1,9 +1,9 @@ description = "Allows easy exposure of Tapestry Services as JMX MBeans" dependencies { - compile project(':tapestry-core') + implementation project(':tapestry-core') - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') } test { diff --git a/tapestry-jpa/build.gradle b/tapestry-jpa/build.gradle index 40bfe9d..cc6c106 100644 --- a/tapestry-jpa/build.gradle +++ b/tapestry-jpa/build.gradle @@ -1,17 +1,17 @@ description = "Provides support for simple CRUD applications built on top of Tapestry and JPA" dependencies { - compile project(':tapestry-core') - compile "org.apache.geronimo.specs:geronimo-jpa_2.0_spec:1.1" - compile 'javax.enterprise:cdi-api:1.2' + implementation project(':tapestry-core') + implementation "org.apache.geronimo.specs:geronimo-jpa_2.0_spec:1.1" + implementation 'javax.enterprise:cdi-api:1.2' - testCompile project(':tapestry-test') - testCompile 'org.eclipse.persistence:eclipselink:2.7.7' + testImplementation project(':tapestry-test') + testImplementation 'org.eclipse.persistence:eclipselink:2.7.7' - testRuntime "com.h2database:h2:1.2.145" - testRuntime "org.apache.tomcat:dbcp:6.0.32" - testRuntime 'com.h2database:h2:1.3.175' + testRuntimeOnly "com.h2database:h2:1.2.145" + testRuntimeOnly "org.apache.tomcat:dbcp:6.0.32" + testRuntimeOnly 'com.h2database:h2:1.3.175' } repositories { diff --git a/tapestry-kaptcha/build.gradle b/tapestry-kaptcha/build.gradle index 2594d6a..4b79ed9 100644 --- a/tapestry-kaptcha/build.gradle +++ b/tapestry-kaptcha/build.gradle @@ -1,13 +1,13 @@ description = "Kaptcha user verification support" dependencies { - compile project(':tapestry-core') + implementation project(':tapestry-core') - compile "com.github.axet:kaptcha:0.0.8" + implementation "com.github.axet:kaptcha:0.0.8" provided "javax.servlet:javax.servlet-api:${versions.servletapi}" - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') } jar { diff --git a/tapestry-latest-java-tests/LICENSE.txt b/tapestry-latest-java-tests/LICENSE.txt new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/tapestry-latest-java-tests/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/tapestry-latest-java-tests/build.gradle b/tapestry-latest-java-tests/build.gradle new file mode 100644 index 0000000..7e81295 --- /dev/null +++ b/tapestry-latest-java-tests/build.gradle @@ -0,0 +1,5 @@ +description = "Test suite for making sure Tapestry runs on latest Java" + +dependencies { + compile project(':tapestry-ioc') +} \ No newline at end of file diff --git a/tapestry-mongodb/build.gradle b/tapestry-mongodb/build.gradle index 7a7df39..5fb5b3c 100644 --- a/tapestry-mongodb/build.gradle +++ b/tapestry-mongodb/build.gradle @@ -1,14 +1,14 @@ description = "Basic MongoDB services for Tapestry, useable outside of a Tapestry web application" dependencies { - compile project(':tapestry-ioc') - testCompile project(':tapestry-test') + implementation project(':tapestry-ioc') + testImplementation project(':tapestry-test') - compile group: 'org.mongodb', name: 'mongo-java-driver', version: '2.10.1' + implementation group: 'org.mongodb', name: 'mongo-java-driver', version: '2.10.1' - testCompile group: 'org.jongo', name: 'jongo', version: '0.3' + testImplementation group: 'org.jongo', name: 'jongo', version: '0.3' - testCompile "de.flapdoodle.embed:de.flapdoodle.embed.mongo:1.28" + testImplementation "de.flapdoodle.embed:de.flapdoodle.embed.mongo:1.28" } test { diff --git a/tapestry-openapi-viewer/build.gradle b/tapestry-openapi-viewer/build.gradle index a42b2ec..b6a62e6 100644 --- a/tapestry-openapi-viewer/build.gradle +++ b/tapestry-openapi-viewer/build.gradle @@ -1,8 +1,8 @@ description = "Embedded OpenAPI (Swagger) viewer for Tapestry, based on Swagger UI" dependencies { - compile project(':tapestry-core') - testCompile "javax.servlet:javax.servlet-api:${versions.servletapi}" + implementation project(':tapestry-core') + testImplementation "javax.servlet:javax.servlet-api:${versions.servletapi}" } jar { diff --git a/tapestry-rest-jackson/build.gradle b/tapestry-rest-jackson/build.gradle index 7c9498a..d4605e5 100644 --- a/tapestry-rest-jackson/build.gradle +++ b/tapestry-rest-jackson/build.gradle @@ -1,9 +1,9 @@ description = "Support for using Jackson Databind with the Tapestry REST support" dependencies { - compile project(':tapestry-core') - compile "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}" - compile "com.github.victools:jsonschema-generator:${versions.jsonschemaGenerator}" + implementation project(':tapestry-core') + implementation "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}" + implementation "com.github.victools:jsonschema-generator:${versions.jsonschemaGenerator}" provided "javax.servlet:javax.servlet-api:${versions.servletapi}" } diff --git a/tapestry-runner/build.gradle b/tapestry-runner/build.gradle index 0913bcc..3ec04ab 100644 --- a/tapestry-runner/build.gradle +++ b/tapestry-runner/build.gradle @@ -2,16 +2,16 @@ description = "Utilities for running a Tapestry application in Jetty or Tomcat a dependencies { - compile project(":tapestry-test-constants") - compile "org.eclipse.jetty:jetty-server:${versions.jetty}" - compile "org.eclipse.jetty:jetty-jndi:${versions.jetty}" - compile "org.eclipse.jetty:jetty-plus:${versions.jetty}" - compile "org.eclipse.jetty:jetty-webapp:${versions.jetty}" + implementation project(":tapestry-test-constants") + implementation "org.eclipse.jetty:jetty-server:${versions.jetty}" + implementation "org.eclipse.jetty:jetty-jndi:${versions.jetty}" + implementation "org.eclipse.jetty:jetty-plus:${versions.jetty}" + implementation "org.eclipse.jetty:jetty-webapp:${versions.jetty}" - compile "org.apache.tomcat:tomcat-catalina:${versions.tomcat}" - compile "org.apache.tomcat:tomcat-coyote:${versions.tomcat}" - runtime "org.apache.tomcat:tomcat-jasper:${versions.tomcat}" + implementation "org.apache.tomcat:tomcat-catalina:${versions.tomcat}" + implementation "org.apache.tomcat:tomcat-coyote:${versions.tomcat}" + implementation "org.apache.tomcat:tomcat-jasper:${versions.tomcat}" - compile "org.apache.tomcat:tomcat-dbcp:${versions.tomcat}" - compile "commons-cli:commons-cli:1.2" + implementation "org.apache.tomcat:tomcat-dbcp:${versions.tomcat}" + implementation "commons-cli:commons-cli:1.2" } diff --git a/tapestry-spock/build.gradle b/tapestry-spock/build.gradle index 5c94718..dc10977 100644 --- a/tapestry-spock/build.gradle +++ b/tapestry-spock/build.gradle @@ -1,11 +1,11 @@ description = "Provides support Tapestry injections in Spock specifications" dependencies { - compile project(':commons') - compile project(':tapestry-ioc') - compile "org.spockframework:spock-core:${versions.spock}" + implementation project(':commons') + implementation project(':tapestry-ioc') + implementation "org.spockframework:spock-core:${versions.spock}" - testCompile "javax.inject:javax.inject:1" + testImplementation "javax.inject:javax.inject:1" } test { diff --git a/tapestry-spring/build.gradle b/tapestry-spring/build.gradle index 42ac6f2..1b4bb0c 100644 --- a/tapestry-spring/build.gradle +++ b/tapestry-spring/build.gradle @@ -1,12 +1,12 @@ description = "Integration of Tapestry with the Spring Inversion Of Control Container" dependencies { - compile project(':tapestry-core') - compile "org.springframework:spring-web:3.2.9.RELEASE" + implementation project(':tapestry-core') + implementation "org.springframework:spring-web:3.2.9.RELEASE" provided "javax.servlet:javax.servlet-api:${versions.servletapi}" - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') } jar { diff --git a/tapestry-test-data/build.gradle b/tapestry-test-data/build.gradle index 136263b..63229bc 100644 --- a/tapestry-test-data/build.gradle +++ b/tapestry-test-data/build.gradle @@ -1,5 +1,5 @@ description = "Utilities for generating random data used when populating entities" dependencies { - compile "org.slf4j:slf4j-api:${versions.slf4j}" + implementation "org.slf4j:slf4j-api:${versions.slf4j}" } diff --git a/tapestry-test/build.gradle b/tapestry-test/build.gradle index 41ef97f..75432d9 100644 --- a/tapestry-test/build.gradle +++ b/tapestry-test/build.gradle @@ -2,18 +2,18 @@ description = "[Deprecated] Utilities for integration testing of Tapestry applic dependencies { - compile project(":tapestry-test-data") - compile project(":tapestry-runner") + implementation project(":tapestry-test-data") + implementation project(":tapestry-runner") - compile ("io.github.bonigarcia:webdrivermanager:2.2.4") + implementation ("io.github.bonigarcia:webdrivermanager:2.2.4") - compile "org.seleniumhq.selenium:selenium-leg-rc:${versions.selenium}", { + implementation "org.seleniumhq.selenium:selenium-leg-rc:${versions.selenium}", { exclude group: "org.seleniumhq.selenium", module: "jetty-repacked" exclude group: "org.testng", module: "testng" exclude group: "javax.servlet", module: "javax.servlet-api" } - compile "org.seleniumhq.selenium:selenium-support:${versions.selenium}" + implementation "org.seleniumhq.selenium:selenium-support:${versions.selenium}" - compile "org.testng:testng:${versions.testng}" - compile "org.easymock:easymock:${versions.easymock}" + implementation "org.testng:testng:${versions.testng}" + implementation "org.easymock:easymock:${versions.easymock}" } diff --git a/tapestry-upload/build.gradle b/tapestry-upload/build.gradle index 8e8574f..88971ab 100644 --- a/tapestry-upload/build.gradle +++ b/tapestry-upload/build.gradle @@ -1,12 +1,12 @@ description = "File Upload component, with supporting services" dependencies { - compile project(':tapestry-core') - compile "commons-fileupload:commons-fileupload:1.3.2" - compile "commons-io:commons-io:2.4" + implementation project(':tapestry-core') + implementation "commons-fileupload:commons-fileupload:1.3.2" + implementation "commons-io:commons-io:2.4" provided "javax.servlet:javax.servlet-api:${versions.servletapi}" - testCompile project(':tapestry-test') + testImplementation project(':tapestry-test') } jar { diff --git a/tapestry-version-migrator/build.gradle b/tapestry-version-migrator/build.gradle index 8769d68..04a897d 100644 --- a/tapestry-version-migrator/build.gradle +++ b/tapestry-version-migrator/build.gradle @@ -1,7 +1,7 @@ description = "Tool to help migrate source code using Tapestry from one version to another. Initially built for 5.7.0" dependencies { - testCompile group: 'org.testng', name: 'testng', version: '7.3.0' + testImplementation group: 'org.testng', name: 'testng', version: '7.3.0' } test { diff --git a/tapestry-webresources/build.gradle b/tapestry-webresources/build.gradle index 3f3db74..7121406 100644 --- a/tapestry-webresources/build.gradle +++ b/tapestry-webresources/build.gradle @@ -7,26 +7,26 @@ description = "Integration with WRO4J to perform runtime CoffeeScript compilatio //} dependencies { - compile project(":tapestry-core") - compile "com.github.sommeri:less4j:1.12.0" - compile "com.google.javascript:closure-compiler-unshaded:v20200504" - compile "org.mozilla:rhino:1.7.7.2" + implementation project(":tapestry-core") + implementation "com.github.sommeri:less4j:1.12.0" + implementation "com.google.javascript:closure-compiler-unshaded:v20200504" + implementation "org.mozilla:rhino:1.7.7.2" - testCompile project(":tapestry-runner") - testCompile "org.gebish:geb-spock:${versions.geb}", { + testImplementation project(":tapestry-runner") + testImplementation "org.gebish:geb-spock:${versions.geb}", { exclude group: "org.codehaus.groovy", module: "groovy-all" // avoid multiple Groovy compilers on classpath } - testCompile "org.spockframework:spock-tapestry:${versions.spock}", { + testImplementation "org.spockframework:spock-tapestry:${versions.spock}", { exclude group: "org.apache.tapestry" } - testCompile "org.seleniumhq.selenium:selenium-java:${versions.selenium}", { + testImplementation "org.seleniumhq.selenium:selenium-java:${versions.selenium}", { exclude group: "org.eclipse.jetty" } - testCompile "org.seleniumhq.selenium:selenium-server:${versions.selenium}", { + testImplementation "org.seleniumhq.selenium:selenium-server:${versions.selenium}", { exclude group: "org.eclipse.jetty" } - testCompile ("io.github.bonigarcia:webdrivermanager:2.2.4") + testImplementation ("io.github.bonigarcia:webdrivermanager:2.2.4") }
