snazy commented on PR #568:
URL: https://github.com/apache/creadur-rat/pull/568#issuecomment-3476649680

   > If Gradle needs an HTML report (as does Maven Report plugin) then perhaps 
following the anticipated Maven pattern may make sense.
   
   Gradle doesn't need it. I just added it as [this 
plugin](https://github.com/eskatos/creadur-rat-gradle) created an HTML report 
as well.
   
   > My plan to fix Maven is to have the "check" part of the plugin write an 
XML file into the target space somewhere. Then the "report" part of the plugin 
will read that XML and generate a report from it.
   > There is also a request to generate multiple reports on a single CLI run. 
So I expect that the output-style will change to allow multiple style sheets. 
Not sure how exactly but we can work through that.
   
   That sound great! The Gradle plugin can follow this mechanism, and I think 
that's the most flexible approach. It's rather a technical detail what and how 
"all the stylesheets" are processed. If that's pluggable, even better!
   
   > On the question of monolith I am moving toward the UI as a separate 
package. If each of the UIs is a separate package then we can strip the core 
down to the minimum necessary to support all the standard CLI options, and put 
the reporters in separate jars bundled with core and tools.
   
   That's doable. We just need what's in the apache-rat-core module. When the 
reporters are pluggable, we can also allow custom reporters. That's relatively 
easy, the actual report generation is running as a "classloader isolated" 
Gradle work action, we and users can add whatever they want there.
   
   > So `apache-rat-<version>.jar` is the CLI version 
`apache-rat-maven-<version>-<mavenversion>.jar` is the maven plugin version 
that requires `<mavenversion>` of maven. 
`apache-rat-ant-<version>-<antversion>.jar` is the ant component version that 
requires `<antversion>` of Ant. 
`apache-rat-gradle-<version>-<gradleversion>.jar` is the gradle component 
version that requires the `<gradleversion>` of Gradle. 
`apache-rat-core-<version>.jar` is the core component used by and embedded in 
all the UI versions.
   
   SGTM! It's not common to add the (minimum) Gradle version to plugins. 
Plugins rather define the minimum version it supports.
   
   > The current `tools` component gets broken up and distributed so that all 
the common bits are in `core` and all the UI specific bits are in the UI 
plugins.
   
   +1
   
   > I have put forward a design proposal [1] that includes this PR and how we 
should think about UIs going forward. Please take a look, join the mailing list 
if you have not already done so, and let's have discussion about how to support 
the various flavours of UI going forward.
   
   Will do!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to