repo: always use host source lists and remove those found in plugins
Metadata
Current evaluation
Merged after approval and CI. Central apt source merging in the Ubuntu object, removed redundant cross-release sources from catkin and colcon plugins, updated tests, and removed unused plugin references. (+39/-109 lines, 7 files)
Suggested action: —
No scores available.
Issue body
The Ubuntu object is now responsible for ensuring that all of
the configured apt sources are merged (performed in
AptCache._collected_sources_list()).
- (Re)define plugin.PLUGIN_STAGE_SOURCES to be a list of strings of
repositories to be added. The base plugin will return an empty
list if the plugin doesn't define it. There was a bit of mixed
usage of str vs. list, so we make it explicit.
- Remove the redundant sources specified by the catkin and colcon
plugins, we do not support building for non-native releases.
- Update tests accordingly, removing catkin's tests for verifying
sources are formatted for cross-release build (i.e. base does
not match build environment), which is no longer supported.
- Remove unused reference to plugin._PLUGIN_STAGE_SOURCES.
- Remove unused reference to plugin._PLUGIN_STAGE_KEYRINGS.
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 after approval and CI. Central apt source merging in the Ubuntu object, removed redundant cross-release sources from catkin and colcon plugins, updated tests, and removed unused plugin references. (+39/-109 lines, 7 files) | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Centralized apt source management in the Ubuntu object, removed redundant plugin sources, and dropped cross-release build support. Updated tests and removed unused plugin attributes. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Centralized apt source handling in the Ubuntu object, redefined PLUGIN_STAGE_SOURCES as a string list, and removed redundant cross-release sources from catkin and colcon plugins. Updated tests and cleaned up unused references. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3012 plugins: install required apt sources and keys to system | snapcraft | merged | Merged. Refactors plugin stages to classmethods, updates colcon and catkin plugins for GPG keys, removes rosdep and wstool source handling to rely on host configuration, and adds install_gpg_key to Repo interfaces. | |
| #1194 tests: remove repo.Ubuntu patch for plugins | snapcraft | merged | Merged changes removing the repo.Ubuntu patch for plugins after stage-packages handling moved to the core. The patch remains for catkin tests. The update modified 8 files, deleting 32 lines of code. | |
| #2326 plugins: remove implicit source | snapcraft | merged | Merged. Removes implicit source from plugins, resolving Launchpad bug #1776807. Approved, passed CI, and refined internal logic from PR #2300. Updated 46 files (+84/-59 lines). | |
| #3030 repo: drop _AptCache and add migrate to install_stage_packages() | snapcraft | merged | Merged refactoring removing _AptCache and consolidating repo logic into install_stage_packages(). Uses system apt cache for performance, updates tests, and migrates ROS plugins. Approved; +490/-1009 lines across 18 files. | |
| #3664 ROS plugins v2: respect source-subdir key | snapcraft | merged | Merged. Updates ROS plugins v2 to respect the source-subdir key, removes an unnecessary catkin_tools dependency, and adds tests for Colcon and catkin v2 subdir handling. Approved by reviewers and passed CI. |