[
https://issues.apache.org/jira/browse/TAP5-2809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18038666#comment-18038666
]
ASF subversion and git services commented on TAP5-2809:
-------------------------------------------------------
Commit a3a4ef92a291c6e1effb371eb874489b8322be4c in tapestry-5's branch
refs/heads/javax from Ben Weidig
[ https://gitbox.apache.org/repos/asf?p=tapestry-5.git;h=a3a4ef92a ]
TAP5-2809: Gradle project setup overhaul
Whole project setup was overhauled to address multiple issues:
- remove pre-Java 8 remnants
- inconsistent testing libraries
- outdated dependencies
The following changes where done:
- share most build-logic related concerns via Gradle conventions
- introduce Gradle version catalogue
- update dependencies where possible
- align versions throughout the submodules
- streamline testing setup
- remove testng.xml if not necessary
- prefer JUnit5 where possible
- prefer parameterized Java tests over Spock
> Improve/Fix Gradle Setup
> ------------------------
>
> Key: TAP5-2809
> URL: https://issues.apache.org/jira/browse/TAP5-2809
> Project: Tapestry 5
> Issue Type: Task
> Affects Versions: 5.9.1
> Reporter: Ben Weidig
> Assignee: Ben Weidig
> Priority: Major
>
> The current Gradle setup has multiple issues:
> * Pre-Java 8 remnants
> * Incomplete upgrade to JUnit 5
> * Incorrect testng.xml
> * Misaligned dependency version between projects
>
> To improve the situation, I suggest:
> * Remove all pre-Java 8 options
> * Create Gradle conventions for
> ** Subproject setup
> ** JUnit 5 (+Spock)
> ** TestNG (and move testng.xml to default locations)
> ** JUnit 4 for legacy reasons
> * Introducing version catalogs for shared dependencies and a consistent
> declaration of module-specific dependencies.
>
> In a second step, more tasks, like Javadoc-related tasks or publishing, could
> be done with conventions or build plugins, to make them easier to use and
> maintain.
> The overall risk is breaking the build and breaking changes for Tapestry
> users if a dependency is no longer exposed.
> However, choosing the right configuration so as not to accidentally export
> dependencies is more critical, and the error messages should clearly state
> why a build is no longer working.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)