← Back to issue list

repo: fix for multi-arch virtual-packages

View original Github issue

Metadata

Project
snapcraft
Number
#3084
Type
pull request
State
merged
Author
cjp256
Labels
Created
Updated
Closed

Current evaluation

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.

Suggested action:

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
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.
qwen3.6-35b-a3b-mtp-q6 Merged fix for multi-arch virtual package resolution. Correctly handles implicit architecture tags by resolving packages and checking architectures first. Reverts or_dependencies to target_versions and fixes apt.Package.architectures method invocation.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#3080 repo: fix for multi-arch stage-package scenario snapcraft merged Merged fix for multi-arch stage-package dependency resolution. Uses python-apt's or_dependencies to resolve architectures correctly, passes target_arch internally, and adds fallback logic. Approved and merged after test updates.
85%
#3035 repo: fix resolution of virtual build packages snapcraft merged Merged fix for virtual build package resolution regression. Ensures proper resolution and versioning persistence for build and stage packages, adds logging, and includes unit and spread tests. Approved and passed CI.
77%
#3740 repo: enable package repository architectures snapcraft merged Merged into main. Enables package repository architectures by running dpkg --add-architecture for listed architectures, resolving Launchpad bug #1973213. Approved and passed CI with full coverage.
75%
#1050 repo: add multiarch support for stage packages. snapcraft merged Merged into master. Adds multiarch support for stage packages via the name:arch syntax, resolving LP #1655797. The author noted a simpler solution was proposed and reassigned the task, but the PR was ultimately merged.
72%
#876 repo: allow for architecture-specific stage-packages snapcraft merged Merged. Implements architecture-specific stage-packages using a package:arch syntax in the stage-packages list. A per-part architecture approach was rejected during review. The updated code passed CI and was merged.
72%
#3461 repo: account for arch & version when filtering stage packages snapcraft merged Merged into master. Refactored stage package filtering to correctly handle architecture and version qualifiers via a new helper. Updated cross-compile tests, achieved 90.74% diff coverage, and passed CI after maintainer approval.
72%
#898 Revert "Allow for architecture-specific packages (#876)" snapcraft merged Merged a revert of commit 9d6f953 to resolve LP: #1637282, as the original syntax was incompatible with deb multiarch. The change removes architecture-specific package handling and prompted the 2.22.1 release.
71%
#96 sources: only add "compatible" architectures craft-archives merged Merged fix correcting dpkg parameter order and restricting architecture addition to compatible pairs (amd64/i386, arm64/armhf) to prevent system breaks. Approved, passed CI, and achieved 100% diff coverage.
71%
#136 fix: add multi-arch to package and control models debcraft merged Merged changes adding Debian Multi-Arch field support to the Debcraft package model and generated control file, resolving issue #125. Approved by two reviewers across 8 files.
70%
#1185 repo: add version support for build-packages snapcraft merged Merged after adjusting apt_cache to exclude package versions, adding version support for build-packages. Rebased changes were re-applied and tests passed. Approved by two reviewers.
70%