-
Notifications
You must be signed in to change notification settings - Fork 3
Description
The io.spine.gradle.publish.SpinePublishing extension class (please see it under buildSrc) is overloaded with functionality.
It does both extension jobs, like managing data) and plugin jobs, like creating publication handlers, managing task depenendicies.
The SpinePublishing.kt is already 536 lines long, and it's hard to understand. For example, we've had hard time finding the cause of duplicated publishing tasks when fixing publishing in tool-base.
We should revisit this publishing functionality, which took the current form during the course of development of the Spine SDK and adding and revisiting things in Gradle.
The most obvious course seen at the time of writing is having a plugin class residing under buildSrc which would be applied via its class to the root project, AND to subprojects, should they need custom publishing.