Context
After the resolution (Phase 2) and download (Phase 3) dispatches are wired, CLI commands that display or use package configuration need to understand the new source: config.
Parent epic: #1254 (Phase 8)
What needs to happen
package info / _resolve_fromager()
When a package has source: config, display it in the output instead of (or alongside) the legacy resolver_dist / download_source fields.
find-updates / _find_newer_versions()
Use source_resolver.resolver_provider() for resolution when pbi.source_resolver is present. Fall back to legacy path otherwise.
list-overrides
Include packages that have non-default source: config (e.g., provider: github-tag-git) in the overrides listing, since these represent custom source handling.
build / build_sequence()
Ensure the build command's resolution and download steps use the new dispatch (this should mostly work via sources.resolve_source() and sources.download_source() if Phase 2 and 3 are done).
Files
src/fromager/commands/package.py
src/fromager/commands/find_updates.py
src/fromager/commands/list_overrides.py
src/fromager/commands/build.py
Tests
package info shows source: config for new-config packages
find-updates resolves via new system for new-config packages
list-overrides includes source-config packages
- Legacy-config packages display unchanged
Depends on
- Phase 2: Resolution dispatch
- Phase 3: Download dispatch
Context
After the resolution (Phase 2) and download (Phase 3) dispatches are wired, CLI commands that display or use package configuration need to understand the new
source:config.Parent epic: #1254 (Phase 8)
What needs to happen
package info/_resolve_fromager()When a package has
source:config, display it in the output instead of (or alongside) the legacyresolver_dist/download_sourcefields.find-updates/_find_newer_versions()Use
source_resolver.resolver_provider()for resolution whenpbi.source_resolveris present. Fall back to legacy path otherwise.list-overridesInclude packages that have non-default
source:config (e.g.,provider: github-tag-git) in the overrides listing, since these represent custom source handling.build/build_sequence()Ensure the build command's resolution and download steps use the new dispatch (this should mostly work via
sources.resolve_source()andsources.download_source()if Phase 2 and 3 are done).Files
src/fromager/commands/package.pysrc/fromager/commands/find_updates.pysrc/fromager/commands/list_overrides.pysrc/fromager/commands/build.pyTests
package infoshowssource:config for new-config packagesfind-updatesresolves via new system for new-config packageslist-overridesincludes source-config packagesDepends on