mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-03-21 20:59:10 +00:00
* fix(maven_artifact): resolve SNAPSHOT to latest using snapshot metadata block Prefer the <snapshot> block (timestamp + buildNumber) from maven-metadata.xml which always points to the latest build, instead of scanning <snapshotVersions> and returning on the first match. Repositories like GitHub Packages keep all historical entries in <snapshotVersions> (oldest first), causing the module to resolve to the oldest snapshot instead of the latest. Fixes #5117 Fixes #11489 * fix(maven_artifact): address review feedback - Check both timestamp and buildNumber before using snapshot block, preventing IndexError when buildNumber is missing - Remove unreliable snapshotVersions scanning fallback; use literal -SNAPSHOT version for non-unique snapshot repos instead - Add tests for incomplete snapshot block and non-SNAPSHOT versions * fix(maven_artifact): restore snapshotVersions scanning with last-match Restore <snapshotVersions> scanning as primary resolution (needed for per-extension accuracy per MNG-5459), but collect the last match instead of returning on the first. Fall back to <snapshot> block when no <snapshotVersions> match is found, then to literal -SNAPSHOT version. * docs: update changelog fragment to match final implementation * fix(maven_artifact): use updated timestamp for snapshot resolution Use the <updated> attribute to select the newest snapshotVersion entry instead of relying on list order. This works independently of how the repository manager sorts entries in maven-metadata.xml. Also fix test docstring and update changelog fragment per reviewer feedback. * test(maven_artifact): shuffle entries to verify updated timestamp sorting Reorder snapshotVersion entries so the newest JAR is in the middle, not at the end. This ensures the test actually validates that resolution uses the <updated> timestamp rather than relying on list position. |
||
|---|---|---|
| .. | ||
| action | ||
| become | ||
| cache | ||
| callback | ||
| connection | ||
| doc_fragments | ||
| filter | ||
| inventory | ||
| lookup | ||
| module_utils | ||
| modules | ||
| plugin_utils | ||
| test | ||