Snapcraft schema validation with bases
Metadata
Current evaluation
Fixed by snapcore/snapcraft#2473, merged as 3f7d63cdf, which improved Go/Python plugin schema validation and covered no-op part configurations.
Resolution: closed resolved
Reason: PR snapcore/snapcraft#2473 was merged as commit 3f7d63cdf. It strengthened Go/Python plugin schema validation and added coverage for no-op part configurations.
Evaluated by: mr-cal-bot
No scores available.
Issue body
When building snaps and using bases, there can be "weird" errors if snacraft.yaml includes old pre-bases declarations, e.g.:
base: core18
parts:
go:
plugin: go
someapp:
after: [go]
plugin: go
source: https://github.com/someapp.git
go-importpath: github.com/someuser/someapp
Results in:
"Please consider setting `go-importpath` for the 'go' part"
Expected behavior:
Schema check before initializing the VM and building whereby conflicting parts of code are detected and flagged.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Fixed by snapcore/snapcraft#2473, merged as 3f7d63cdf, which improved Go/Python plugin schema validation and covered no-op part configurations. | |
| stealth/space-bunny-alpha | — | closed resolved | Schema handling was improved by merged snapcraft#2473, which tightened Go/Python plugin validation and added tests for the no-op case. | |
| stealth/space-bunny-alpha | — | closed stale | Closed without documented resolution after prolonged inactivity; no fix, superseding change, or maintainer explanation is recorded for the schema-validation request (LP #1806055). | |
| stealth/space-bunny-alpha | — | closed stale | Closed without a documented fix; proposed pre-build validation for conflicting or legacy snapcraft.yaml parts in base projects. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. Requested schema validation for pre-bases declarations to prevent build errors. With zero comments and no fix documented, it appears abandoned or superseded by newer validation mechanisms. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned due to inactivity. Pre-build schema validation for conflicting base declarations was never implemented. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed and likely abandoned. Reported confusing schema validation errors when mixing pre-bases declarations with bases. No resolution or discussion provided. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Abandoned. The report highlighted missing schema validation for conflicting base declarations in snapcraft.yaml, requesting pre-build checks to flag deprecated configurations. No resolution was implemented. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcore/snapcraft#2473
(confidence 100%)
The resolving PR tightened plugin schema validation and added tests for the no-op case.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #419 Properly validate the schema | snapcraft | merged | Merged PR #419 in commit 116352b7d, refactoring schema validation to remove duplicated logic from snapcraft.yaml and fixing autopackage tests. | |
| #2627 synchronizing snapd supported schema to snapcraft | snapcraft | merged | Merged in snapcore/snapcraft#2627 (5534fe3d), synchronizing Snapcraft’s schema with snapd’s supported daemon and app fields and validation patterns. | |
| #5730 feat: add inheritance-based validation and schemas | snapcraft | merged | Merged as commit 7cfb25977, adding inheritance-based pydantic validation and JSON schema generation (tools/schema.py, snapcraft/models/project.py) for snapcraft.yaml, closing issue #5543. |