store: on prem base client
Metadata
Current evaluation
Merged into main. Adds an OnPrem base client derived from craft-store to support Snapcraft's on-premise store. Approved by reviewer, passed CI, and increased unit test coverage by 0.05%.
Suggested action: —
No scores available.
Issue body
Derivation from craft-store's BaseClient to support the OnPrem store.
This implementation is specific enough to Snapcraft to be implemented
here.
This includes an update to the test mock in legacy pertaining to the
change of where JSONDecoder comes from now (requests).
Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>
- [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`?
-----
CRAFT-1243
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged into main. Adds an OnPrem base client derived from craft-store to support Snapcraft's on-premise store. Approved by reviewer, passed CI, and increased unit test coverage by 0.05%. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged, resolving CRAFT-1243. Adds an OnPrem store base client derived from craft-store's BaseClient, tailored for Snapcraft, with updated test mocks for JSONDecoder origin changes. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into main. Introduces an OnPrem base client derived from craft-store to support Snapcraft's on-premise store. Updates test mocks for the JSONDecoder import change. Achieved 100% diff coverage and increased overall coverage by 0.05%. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3885 store: initial support for an onprem store | snapcraft | merged | Merged into main, adding initial onprem store support. Approved by one reviewer, passed CI, and increased coverage by 0.08%. The change modifies four files to implement the feature. | |
| #3892 store: support close for an on prem store | snapcraft | merged | Merged into main after approval and passing CI. Adds close support for on-prem stores, modifying four files and increasing test coverage by 0.02%. | |
| #3887 store: support status for an onprem store | snapcraft | merged | Merged into main. Adds status support for on-prem stores. Approved by maintainers, passed CI checks, and achieved 100% diff coverage before integration. | |
| #3692 legacy storeapi: use craft-store | snapcraft | merged | Merged PR replaces the legacy storeapi HTTP client with craft-store, removes obsolete tests and logout calls, and adapts the codebase to craft-store API changes. Approved and passed CI. |