Croway commented on PR #28581:
URL: https://github.com/apache/camel/pull/28581#issuecomment-6449975625
Thanks @davsclaus, all addressed in new commits on top (no force-push). The
same commits are ported to the backport #28584.
1. **Stale release list.** Fixed in 445943bb3602 + 1f08c3ef87b7. The listing
is now always fresh. The new `MavenDownloader.resolveAvailableVersions(groupId,
artifactId, extraRepositories, fresh)` uses update policy ALWAYS plus
`aether.updateCheckManager.sessionState=bypass`; without the latter, a second
listing in the same JVM still reused the cached metadata. POM reads keep using
the local cache, since release POMs are immutable. Verified end to end: on a
4.24 CLI, a release published between two `plugin add` runs is picked up by the
second one. The real Forage listing also sees 1.7.0 although `~/.m2` still had
metadata cached from before the release.
2. **10-POM cap.** Fixed in 1f08c3ef87b7. The walk now reads only the newest
patch of each plugin release line (`1.6.0/1.6.1/1.6.2` -> `1.6`), at most 10
lines. That is 4 reads for Forage today. The fixture has 27 releases over 9
lines; the old cap ended with no match, now it selects the right line.
- "Don't fall back to `LATEST` when it is known to exclude the CLI": done
for the case where that can be decided. When the CLI is between known Camel
lines, the newest release of the nearest **older** line is selected with a
warning, e.g. Forage 1.5.0 on a 4.21 CLI.
- `LATEST` remains in two cases: the CLI is newer than every release (a
new Camel minor no plugin release declares yet, where the newest release is the
best guess), or the CLI is older than every release.
3. **4.22.3 upgrade note on main.** Added to main's
`camel-4x-upgrade-guide-4_22.adoc` under "Upgrading from 4.22.2 to 4.22.3"
(e027d238d0c0), with the same text as the backport.
4. **Repositories used for the listing.** Fixed in 445943bb3602. The listing
now uses every configured repository: Central, active `settings.xml` profile
repositories with mirrors, and `--repos` or the known-plugin repos. The docs
say exactly that. Verified with a plugin that is only in a `settings.xml`
profile repository.
5. **Minor.**
- "Never fails": description corrected. `plugin add` fails (config
unchanged) only when the release it selected can't be downloaded.
- The hard-coded Forage bullets are replaced by the rule plus one
labelled example (e027d238d0c0).
- `maven-resolver-api` / `-util` are now declared explicitly in
`camel-jbang-core` (1f08c3ef87b7).
Re-tested before pushing:
- Unit: `Plugin*Test`, `MavenDownloaderImplTest`, `UpdateRunTest` and
`CamelJBangMain*Test`, plus the full module suites in a container.
- End to end with the built 4.24.0-SNAPSHOT and 4.22.3-SNAPSHOT launchers:
56 cases, all passing, including the cases above and the real Forage 1.7.0
release.
--
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]