jeantil commented on code in PR #2786:
URL: https://github.com/apache/james-project/pull/2786#discussion_r2347358578


##########
pom.xml:
##########
@@ -3179,7 +3179,336 @@
                                         </execution>
                                     </executions>
                                 </plugin>
+                                <plugin>
+                                    <groupId>net.alchim31.maven</groupId>
+                                    <artifactId>scala-maven-plugin</artifactId>
+                                    <executions>
+                                        <execution>
+                                            <id>scala-compile-first</id>
+                                            <inputs>
+                                                <fileSets>
+                                                    <fileSet>
+                                                        <name>sourceDir</name>
+                                                        
<includesProperty>includes</includesProperty>
+                                                        
<excludesProperty>excludes</excludesProperty>
+                                                        <normalization>
+                                                            
<ignoreLineEndings>true</ignoreLineEndings>
+                                                            
<ignoreEmptyDirectories>true</ignoreEmptyDirectories>
+                                                        </normalization>
+                                                    </fileSet>
+                                                    <fileSet>
+                                                        
<name>classpathElements</name>
+                                                        
<normalization>COMPILE_CLASSPATH</normalization>
+                                                    </fileSet>
+                                                </fileSets>
+                                                <properties>
+                                                    <property>
+                                                        
<name>addJavacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>addScalacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>additionalDependencies</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>args</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>checkMultipleScalaVersions</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>compileOrder</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>displayCmd</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>encoding</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>failOnMultipleScalaVersions</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>forceUseArgFile</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>fork</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>javacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>jvmArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>recompileMode</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>release</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaClassName</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaCompatVersion</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>scalaHome</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaOrganization</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaVersion</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>sendJavaToScalac</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>skipMain</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>source</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>target</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>useCanonicalPath</name>
+                                                    </property>
+                                                </properties>
+                                                <ignoredProperties>
+                                                    <ignore>project</ignore>
+                                                    <ignore>session</ignore>
+                                                    
<ignore>notifyCompilation</ignore>
+                                                    
<ignore>javacGenerateDebugSymbols</ignore>
+                                                    <!-- ignoring these feels 
wrong but I couldn't find a way to track them -->
+                                                    
<ignore>pluginArtifacts</ignore>
+                                                    
<ignore>dependencies</ignore>
+                                                    
<ignore>compilerPlugins</ignore>
+                                                    <ignore>classpath</ignore>
+                                                </ignoredProperties>
+                                            </inputs>
+                                            <outputs>
+                                                <cacheableBecause>compilation 
is CPU-bound</cacheableBecause>
+                                                <directories>
+                                                    <directory>
+                                                        <name>outputDir</name>
+                                                    </directory>
+                                                </directories>
+                                            </outputs>
+                                            <localState>
+                                                <fileSets>
+                                                    <fileSet>
+                                                        
<name>secondaryCacheDir</name>
+                                                    </fileSet>
+                                                    <fileSet>
+                                                        
<name>analysisCacheFile</name>
+                                                    </fileSet>
+                                                </fileSets>
+                                            </localState>
+                                        </execution>
+                                        <execution>
+                                            <id>scala-test-compile</id>
+                                            <skipIfTrue>
+                                                <property>skip</property>
+                                            </skipIfTrue>
+                                            <inputs>
+                                                <fileSets>
+                                                    <fileSet>
+                                                        
<name>testSourceDir</name>
+                                                        
<includesProperty>includes</includesProperty>
+                                                        
<excludesProperty>excludes</excludesProperty>
+                                                        <normalization>
+                                                            
<ignoreLineEndings>true</ignoreLineEndings>
+                                                            
<ignoreEmptyDirectories>true</ignoreEmptyDirectories>
+                                                        </normalization>
+                                                    </fileSet>
+                                                    <fileSet>
+                                                        
<name>classpathElements</name>
+                                                        
<normalization>COMPILE_CLASSPATH</normalization>
+                                                    </fileSet>
+                                                </fileSets>
+                                                <properties>
+                                                    <property>
+                                                        
<name>addJavacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>addScalacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>additionalDependencies</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>args</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>checkMultipleScalaVersions</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>compileOrder</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>displayCmd</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>encoding</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>failOnMultipleScalaVersions</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>forceUseArgFile</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>fork</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>javacArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>jvmArgs</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>recompileMode</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>release</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaClassName</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaCompatVersion</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>scalaHome</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaOrganization</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>scalaVersion</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>sendJavaToScalac</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>source</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>target</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>useCanonicalPath</name>
+                                                    </property>
+                                                </properties>
+                                                <ignoredProperties>
+                                                    <ignore>project</ignore>
+                                                    <ignore>session</ignore>
+                                                    
<ignore>notifyCompilation</ignore>
+                                                    
<ignore>javacGenerateDebugSymbols</ignore>
+                                                    <!-- ignoring these feels 
wrong but I couldn't find a way to track them -->
+                                                    
<ignore>pluginArtifacts</ignore>
+                                                    
<ignore>dependencies</ignore>
+                                                    
<ignore>compilerPlugins</ignore>
+                                                </ignoredProperties>
+                                            </inputs>
+                                            <outputs>
+                                                <cacheableBecause>compilation 
is CPU-bound</cacheableBecause>
+                                                <directories>
+                                                    <directory>
+                                                        
<name>testOutputDir</name>
+                                                    </directory>
+                                                </directories>
+                                            </outputs>
+                                            <localState>
+                                                <fileSets>
+                                                    <fileSet>
+                                                        
<name>secondaryCacheDir</name>
+                                                    </fileSet>
+                                                    <fileSet>
+                                                        
<name>testAnalysisCacheFile</name>
+                                                    </fileSet>
+                                                </fileSets>
+                                            </localState>
+                                        </execution>
+                                    </executions>
+                                </plugin>
+                                <plugin>
+                                    <groupId>org.jacoco</groupId>
+                                    
<artifactId>jacoco-maven-plugin</artifactId>
+                                    <skipIfTrue>
+                                        <property>skip</property>
+                                    </skipIfTrue>
+                                    <executions>
+                                        <execution>
+                                            <id>jacoco-report</id>
+                                            <inputs>
+                                                <properties>
+                                                    <property>
+                                                        
<name>dataFileExcludes</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>dataFileExcludes</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>dataFileIncludes</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>excludes</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>footer</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>includeCurrentProject</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>includes</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>outputEncoding</name>
+                                                    </property>
+                                                    <property>
+                                                        
<name>sourceEncoding</name>
+                                                    </property>
+                                                    <property>
+                                                        <name>title</name>
+                                                    </property>
+                                                </properties>
+                                                <ignoredProperties>
+                                                    <ignore>project</ignore>
+                                                    
<ignore>reactorProjects</ignore>
+                                                    <!--
+                                                     we should not be ignoring 
this since formats changes the content of the output
+                                                      but it contains a list 
of enum see 
https://github.com/jacoco/jacoco/blob/562a7299399b8321dfcf8eeb21ea4bfc27556fdc/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java
+                                                     and that's not storable 
in the cache key
+                                                     no sure how this should 
be handled ?
+                                                     -->
+                                                    <ignore>formats</ignore>
+                                                </ignoredProperties>
+                                            </inputs>
+                                            <outputs>
+                                                <cacheableBecause>compilation 
is CPU-bound</cacheableBecause>
+                                                <directories>
+                                                    <directory>
+                                                        
<name>outputDirectory</name>
+                                                    </directory>
+                                                </directories>
+                                            </outputs>
+                                        </execution>
+                                    </executions>
+                                </plugin>
                             </plugins>
+                            <normalization>
+                                <runtimeClassPath>
+                                    <ignoredFiles>
+                                        
<ignoredFile>git.properties</ignoredFile>

Review Comment:
   I haven't been able to retrieve the contents to understand why they were 
different but [build scan 
comparison](https://develocity.apache.org/c/iy5unsfnfjnzo/qa2fkmefkbzkk/goal-inputs?expanded=WyJwMmtjeXhvMjQycWF5LXRlc3RjbGFzc3BhdGhlbGVtZW50cyIsInAya2N5eG8yNDJxYXktdGVzdENsYXNzcGF0aEVsZW1lbnRzLTAtMCIsIm53dHByajJjdXB5Mm8tdGVzdGNsYXNzcGF0aGVsZW1lbnRzIiwibnd0cHJqMmN1cHkyby10ZXN0Q2xhc3NwYXRoRWxlbWVudHMtMC0xIiwibnd0cHJqMmN1cHkyby10ZXN0Q2xhc3NwYXRoRWxlbWVudHMtMC0wIl0)
 showed that this file was preventing caching of the test outputs



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to