Copilot commented on code in PR #409:
URL: https://github.com/apache/maven-filtering/pull/409#discussion_r4111449471


##########
src/main/java/org/apache/maven/shared/filtering/BaseFilter.java:
##########
@@ -155,7 +155,7 @@ public List<FilterWrapper> getDefaultFilterWrappers(final 
AbstractMavenFiltering
             }
         }
 
-        final ValueSource propertiesValueSource = new 
PropertiesBasedValueSource(filterProperties);
+        final ValueSource propertiesValueSource = new 
RecursivePropertiesValueSource(filterProperties, getLogger());

Review Comment:
   This makes the existing `getPropertyValue` cycle tracker apply to every 
runtime/POM property, but that tracker never removes keys after a branch 
finishes. As a result, a valid value such as `a=${b}-${c}`, with `b=1` and 
`c=${b}`, is treated as circular when resolving `c` and the whole raw value 
`${b}-${c}` is returned. The new custom-delimiter path therefore still emits 
unresolved text for properties that reuse a dependency; use a recursion stack 
scoped to the active branch (and add a regression case for repeated/shared 
references).



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