← 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 #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().
80%
#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.
73%
#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.
73%
#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.
70%