[ https://issues.apache.org/jira/browse/MSHARED-1285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17781394#comment-17781394 ]
ASF GitHub Bot commented on MSHARED-1285: ----------------------------------------- pcdavid commented on PR #77: URL: https://github.com/apache/maven-filtering/pull/77#issuecomment-1787352103 FWIW, the (single) test failure I get with this PR is this one: ``` [ERROR] Tests run: 4, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.162 s <<< FAILURE! - in org.apache.maven.shared.filtering.IncrementalResourceFilteringTest [ERROR] org.apache.maven.shared.filtering.IncrementalResourceFilteringTest.testSimpleIncrementalFiltering Time elapsed: 0.031 s <<< FAILURE! junit.framework.ComparisonFailure: expected:<[]time> but was:<[no]time> at junit.framework.Assert.assertEquals(Assert.java:100) at junit.framework.Assert.assertEquals(Assert.java:107) at junit.framework.TestCase.assertEquals(TestCase.java:260) at org.apache.maven.shared.filtering.IncrementalResourceFilteringTest.assertTime(IncrementalResourceFilteringTest.java:158) at org.apache.maven.shared.filtering.IncrementalResourceFilteringTest.testSimpleIncrementalFiltering(IncrementalResourceFilteringTest.java:69) ``` I don't know anything about this project/codebase, but as an Eclipse user impacted by [this](https://github.com/eclipse-m2e/m2e-core/issues/1302) I was curious, and the last PR build is too old and the failure logs are not available anymore. > DefaultMavenResourcesFiltering uses BuildContext in a way that fails sometimes > ------------------------------------------------------------------------------ > > Key: MSHARED-1285 > URL: https://issues.apache.org/jira/browse/MSHARED-1285 > Project: Maven Shared Components > Issue Type: Bug > Reporter: Christoph Läubrich > Priority: Major > > The maven resources plugin uses > [https://github.com/apache/maven-filtering/blob/master/src/main/java/org/apache/maven/shared/filtering/DefaultMavenResourcesFiltering.java] > to copy resources, but that component has some subtile flaws reported here: > [https://github.com/eclipse-m2e/m2e-core/discussions/1468] > The problematic part is the usage of BuildContext#newScanner that already > mentions in the javadoc that passing ignoreDelta to neScanner might not > reveal all required items +*for copy-resources*+ form A -> B and instead > BuildContext#isUpTodate should be used. > Just from a quick look I assume that part of code actually wants to use > something like this: > {code:java} > DirectoryScanner ds = new DirectoryScanner() { > @Override > protected boolean isSelected(String name, File file) { > if (file.isFile() && buildContext.isUptodate(getTargetFile(file), file)) > { > return false; > } > return true; > } > }; > ds.setBasedir(basedir); {code} > That way all the code that currently checks for if output directory existed > before can also be removed what is another issue because it leads to a full > resources copy even if source+target are already even if a single class file > is changed while the idea seems more that if the output was not there it > should not try to be incremental! -- This message was sent by Atlassian Jira (v8.20.10#820010)