repo: fix for multi-arch virtual-packages
Metadata
Current evaluation
Merged PR #3084 as caf0e0ca5, fixing multi-architecture virtual-package resolution by checking provider architecture, restoring target_versions, and correcting the apt architecture API.
Resolution: closed resolved
Reason: PR #3084 was merged into Snapcraft as commit caf0e0ca5. It resolves architecture selection for virtual packages whose unqualified provider name differs from the explicit provider architecture.
Evaluated by: mr-cal-bot
No scores available.
Issue body
wine-devel-i386 does not have the explicit ":i386" tag, but
the virtual package is provided by "wine-devel-i386:i386".
Account for this possibility by resolving the package and
checking the architecture first, if no arch is specified by
the user.
- Revert the use of or_dependendencies back to target_versions
now that target_arch should correct the previously faulty
behavior (where target_versions ended up switching to the
incorrect arch after following an :any package).
- Fix apt.Package.architectures to architectures() method call.
Signed-off-by: Chris Patterson <chris.patterson@canonical.com>
- [ ] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you successfully run `./runtests.sh static`?
- [ ] Have you successfully run `./runtests.sh tests/unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3084 as caf0e0ca5, fixing multi-architecture virtual-package resolution by checking provider architecture, restoring target_versions, and correcting the apt architecture API. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3084 as caf0e0ca5, fixing multi-arch virtual-package resolution by checking provider architecture and restoring target_versions for dependency handling. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged as caf0e0ca5, fixing multi-architecture virtual-package resolution by validating the provider architecture and correcting apt package API usage. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #3084 as caf0e0ca5, fixing multi-architecture virtual-package resolution by checking provider architecture and correcting dependency-version and apt.Package API usage. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in PR #3084 (commit caf0e0ca5): corrected multi-architecture virtual-package resolution, restored target_versions dependency handling, and fixed the apt architectures call. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged fix for multi-arch virtual package resolution. Correctly handles architecture tags, reverts or_dependencies to target_versions, and fixes an apt.Package.architectures method call. Approved and passed CI. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix for multi-arch virtual package resolution. Handles implicit architecture tags by resolving packages and checking architectures first. Reverts or_dependencies to target_versions and corrects the apt.Package.architectures method call. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcraft#3080
(confidence 98%)
PR #3084 reverted this PR's or_dependencies approach after correcting the target-architecture behavior that caused the faulty selection.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3080 repo: fix for multi-arch stage-package scenario | snapcraft | merged | Merged in commit 4a75be6ec, fixing multi-arch stage-package dependency resolution with architecture-aware package lookup. | |
| #3035 repo: fix resolution of virtual build packages | snapcraft | merged | Merged PR #3035 in commit 9e9290554, restoring virtual build-package resolution, preserving versions, logging resolved packages, and adding unit and spread tests. | |
| #3740 repo: enable package repository architectures | snapcraft | merged | Merged PR #3740 via merge commit 7b848f76d; implementation 7e0403d runs dpkg --add-architecture for package-repository architectures. | |
| #876 repo: allow for architecture-specific stage-packages | snapcraft | merged | Merged as 9d6f953a1 with package:arch support for stage-packages; the change was later reverted by #898 in 5ac55528f. | |
| #136 fix: add multi-arch to package and control models | debcraft | merged | Merged PR #136 in commit 0777283, adding validated Debian Multi-Arch support to package and binary control models and fixing #125. |