[ 
https://issues.apache.org/jira/browse/LUCENE-9977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17351654#comment-17351654
 ] 

Uwe Schindler commented on LUCENE-9977:
---------------------------------------

Hi,

I tried to fix the problem but gave up because of limited time.

The problem is that this task is global per project and not split into 
different ones, it’s all mixed together. It works if I add a @InputDirectory 
with the projectDir, but this leads to strange exceptions, because it also 
tries to hash files from build directory.

IMHO, the correct way to fix this is:
-       Generate a generic RatTask that extends SourceTask (do NOT extend 
DefaultTask!). This brings a source directory and include/exclude automatically 
so it’s easiy to configure. All you need is to use the converter when executing 
the task, that changes a FileCollection to an ANT fileset: 
this.getSource().addToAntBuilder(antTaskDeclaration, ”fileset”, 
FileCollection.AntType.FileSet)
-       Create a separate task for each affected sourceset and also one for the 
base project dir, each with correct includes/excludes

I gave up, as my time was limited and I was not able to quickly split the task 
into one for each surceset

Uwe


> Gradle's RAT task has missing inputs, so it can't figure out when to run
> ------------------------------------------------------------------------
>
>                 Key: LUCENE-9977
>                 URL: https://issues.apache.org/jira/browse/LUCENE-9977
>             Project: Lucene - Core
>          Issue Type: Task
>    Affects Versions: main (9.0)
>            Reporter: Uwe Schindler
>            Assignee: Dawid Weiss
>            Priority: Major
>
> This also affects Solr!
> [~romseygeek] wrote:
> {quote}
> There’s a subject line I never thought I’d type :)
> Firstly: can I say how much I appreciate all the work that’s gone into the 
> gradle build? I’ve been doing lots of small PRs for the spans-to-queries work 
> and being able to run checks multiple times in an extremely efficient manner 
> has been a life saver.  Massive thanks to Dawid, and also to Robert for all 
> the work on speeding up tests.
> I think may have found a bug in the input configuration for our license 
> header checks.  Thanks to the new build, I have been running `./gradlew 
> check` before pushing code, but it has let through files with missing headers 
> a few times, which were subsequently caught by the GitHub action running on 
> the PR.
> So I tried the following:
> - start a new git branch
> - run ./gradlew rat -> everything should pass
> - edit one of the files to remove the license header
> - run ./gradlew rat -> still passes!
> - run ./gradlew clean
> - run ./gradlew rat -> now I get an error
> This looks to me like the fileset that the rat task is looking at is not set 
> up correctly, but I don’t know enough gradle to actually work out what is 
> wrong and what the fix should be.
> {quote}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to