← Back to issue list

providers: move `confirm_with_user()` call to providers.py (#91)

View original Github issue

Metadata

Project
snapcraft
Number
#3938
Type
pull request
State
merged
Author
mr-cal
Labels
Created
Updated
Closed

Current evaluation

Merged changes moving the snapcraft-specific confirm_with_user() call out of the craft-providers interface into providers.py. The update was approved, passed CI, and aligns with parallel rockcraft modifications.

Suggested action:

No scores available.

Issue body

- [X] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [X] Have you successfully run `make lint`? - [X] Have you successfully run `pytest tests/unit`? ----- `confirm_with_user()` is a snapcraft-specific call, so it is moved out of the craft-providers interface. Similar to [this rockcraft PR](https://github.com/canonical/rockcraft/pull/91) (CRAFT-1400)

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged changes moving the snapcraft-specific confirm_with_user() call out of the craft-providers interface into providers.py. The update was approved, passed CI, and aligns with parallel rockcraft modifications.
qwen3.6-35b-a3b-mtp-q6 Merged pull request #91 moves the snapcraft-specific confirm_with_user call from the craft-providers interface to providers.py. This refactoring isolates project-specific logic from shared provider code, mirroring similar rockcraft updates.
qwen3.6-35b-a3b-mtp-q6 Merged. Moved the snapcraft-specific confirm_with_user() call out of the craft-providers interface into providers.py. Aligns with rockcraft PR #91 and addresses CRAFT-1400.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#91 providers: move `confirm_with_user()` call to providers.py rockcraft merged Merged after approval and passing CI. Moved the rockcraft-specific confirm_with_user logic out of the craft-providers interface into providers.py. Renamed is_provider_available to is_provider_installed across ten files.
88%
#3940 providers: move `get_provider()` to providers.py snapcraft merged Merged the refactoring that moves get_provider() to providers.py. Aligned with rockcraft, the change passed code review and CI checks, modified 7 files, and was successfully integrated into main.
74%
#71 providers: install rockcraft snap via craft-providers API rockcraft merged Merged a refactor updating snapcraft to install the rockcraft snap via the new craft-providers API. The change modifies six files with no functional impact, passed CI checks, and received approval.
73%
#110 providers: move lxd project name out of craft-providers interface rockcraft merged Merged refactoring that moves rockcraft's project name from lxd.py to providers.py in the craft-providers interface. Approved by one reviewer, passed CI, and successfully integrated.
73%
#3927 providers: move `get_command_environment()` to providers.py snapcraft merged Merged pull request moving the snapcraft-specific get_command_environment() function out of the craft-providers interface and into providers.py. Approved, passed CI checks, and achieved 100% coverage.
73%
#894 (internal) Moved user confirmation on provider installation (CRAFT-1401) charmcraft merged Merged changes moving user confirmation during provider installation, resolving CRAFT-1401. Approved by one reviewer, the update modified nine files with a net reduction of 27 lines.
71%
#1098 build: update craft-providers rockcraft merged Merged update to the craft-providers dependency to resolve recurring snapd watch errors in spread tests. Approved by two reviewers and passed CI checks. The change modifies three files with minor adjustments.
71%
#104 requirements: update craft-providers to v1.5.1 rockcraft merged Merged dependency update to craft-providers v1.5.1, resolving a snap injection assertion error during ROCK builds. Approved and passed CI.
71%
#898 providers: move `get_provider()` to providers.py charmcraft merged Merged after approval. Moved the get_provider() function to providers.py as part of CRAFT-1410. The refactoring touched 10 files, adding 178 lines and removing 226, and was previously blocked by PR 896.
70%
#3926 providers: move `get_instance_name()` to providers.py snapcraft merged Merged. Moved get_instance_name() to snapcraft/providers/providers.py, removing snapcraft-specific logic from provider modules. This refactoring prepares the codebase for the new craft-providers API. Approved by reviewers and passed all CI checks.
70%