providers: move `confirm_with_user()` call to providers.py (#91)
Metadata
Current evaluation
Merged #3938 moved Snapcraft's confirm_with_user() prompt out of the craft-providers interface and into providers.py; landed as commit 792d45f2f.
Resolution: closed resolved
Reason: PR canonical/snapcraft#3938 was merged as commit 792d45f2f, relocating the Snapcraft-specific confirmation flow to providers.py so craft-providers no longer owns that behavior.
Evaluated by: mr-cal-bot
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 |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged #3938 moved Snapcraft's confirm_with_user() prompt out of the craft-providers interface and into providers.py; landed as commit 792d45f2f. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged canonical/snapcraft#3938 moved the Snapcraft-specific confirm_with_user() call out of the craft-providers interface into providers.py (CRAFT-1400), mirroring canonical/rockcraft#91. | |
| 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. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/rockcraft#91
(confidence 98%)
The Snapcraft change explicitly mirrors the equivalent Rockcraft provider-interface refactor.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #91 providers: move `confirm_with_user()` call to providers.py | rockcraft | merged | Merged PR #91 as b189a224, moving Rockcraft-specific confirm_with_user() into providers.py and renaming is_provider_available() to is_provider_installed(). | |
| #3940 providers: move `get_provider()` to providers.py | snapcraft | merged | Merged PR #3940 by mr-cal moved get_provider() into snapcraft/providers.py (squash commit 2acdd89b6), a CRAFT-1409 refactor mirroring canonical/rockcraft#92, part of a series of provider/lifecycle function moves. | |
| #894 (internal) Moved user confirmation on provider installation (CRAFT-1401) | charmcraft | merged | Merged PR #894, moving user confirmation for provider installation; implementation d88f8cc9 landed via merge commit c129d921. | |
| #422 utils: introduce confirm_with_user() helper for prompting (CRAFT-336) | charmcraft | merged | Merged #422 via 802370cb, adding confirm_with_user() for consistent yes/no prompts with non-TTY defaults and managed-mode safeguards. |