linters: add linting infrastructure
Metadata
Current evaluation
Merged into main as 9f70a0422, adding the linting framework, snapcraft.yaml lint configuration, pre-pack lint execution, and JSON-formatted issue output.
Resolution: closed resolved
Reason: PR #3847 was approved and merged into main as commit 9f70a0422, establishing the requested linting infrastructure.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Create a basic framework for linting including the `lint` entry in
snapcraft.yaml to disable specific linters. Linters run before
packing a snap.
A specific `lint` command to lint a snap package file will be added
in a future PR. JSON-formatted output is implemented but will only
be used with the `lint` command.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@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/)?
- [ ] Have you successfully run `make lint`?
- [ ] Have you successfully run `pytest tests/unit`?
-----
CRAFT-1098
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged into main as 9f70a0422, adding the linting framework, snapcraft.yaml lint configuration, pre-pack lint execution, and JSON-formatted issue output. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3847 added basic linting infrastructure, including snapcraft.yaml lint controls and linter execution before packing; commit 9f70a0422. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3847 added Snapcraft's linting framework, pre-pack lint checks, configurable disabled linters, and JSON output infrastructure. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged. Adds basic linting infrastructure to snapcraft, including a lint entry in snapcraft.yaml to disable specific linters before packing. JSON output is implemented for future use. Approved, rebased, and passed coverage checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged adding linting infrastructure to snapcraft. Adds a lint entry in snapcraft.yaml to disable specific linters before packing. Rebased on main, merged with 92.04% diff coverage and 0.13% overall coverage increase. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcore/snapcraft#4095
(confidence 90%)
Follow-up work added the planned standalone lint command.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #4095 cli: add lint command | snapcraft | merged | Merged PR #4095 (commit 297130c4e) adding the `snapcraft lint` CLI command with unit tests for CRAFT-1688, giving Snapcraft users access to lint checks. | |
| #4101 lint: prepare instance for linting a snap file | snapcraft | merged | Merged #4101 as caa2f2e9d, making snapcraft lint prepare an instance and re-execute lint inside it for CRAFT-1690. | |
| #4115 lint: lint snap files inside an instance | snapcraft | merged | Merged as ddd328f07, #4115 adds in-instance snap linting that unsquashes and installs the snap, reads metadata and filters, runs the linter, and reports warnings (CRAFT-1689). | |
| #5850 style: fix pending lints from snapcraft itself | snapcraft | merged | Merged PR #5850 as commit bc10f1dc1, resolving Snapcraft's pending lint warnings by excluding unused ICU libraries and adding missing contact and donation metadata. |