← Back to issue list

feat: add linter checks for naming conventions

View original Github issue

Metadata

Project
charmcraft
Number
#1487
Type
pull request
State
merged
Author
deusebio
Labels
Created
Updated
Closed

Current evaluation

Merged PR adding linter checks to enforce hyphen-based naming for composite keys per the Juju SDK styleguide. Approved by two reviewers, refactored into a centralized Linter class, and merged with 240 lines added.

Suggested action:

No scores available.

Issue body

This PR provides extra checks for compliance of configuration options, action names and action parameters with respect to use hyphens instead of snake case when composite/compound keys are used. The checks follows [this guideline](https://juju.is/docs/sdk/styleguide#heading--naming). In general, we raise warning, although I believe that charms should provide strong consistency on the naming scheme adopted within the charm. So if one uses mixed contentions (some keys have hyphens and others have snake case), I would believe it is fair to error out. This could be by passed by using `--force`, but that would produce a strong nudge on charmers to NOT mix the two conventions.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged PR adding linter checks to enforce hyphen-based naming for composite keys per the Juju SDK styleguide. Approved by two reviewers, refactored into a centralized Linter class, and merged with 240 lines added.
qwen3.6-35b-a3b-mtp-q6 Merged PR adding linter checks to enforce hyphen-based naming for Juju charm configs and actions per SDK guidelines. Refactored into a dedicated Linter class with a --force bypass for mixed conventions. CI tests passed after retrigger.
qwen3.6-35b-a3b-mtp-q6 Merged after refactoring into a centralized Linter class. Adds checks to enforce hyphen-based naming for configuration options, action names, and parameters per the Juju SDK styleguide, warning or erroring on mixed conventions.

Update history

No update history recorded yet.

Related issues

No related issues found above the similarity threshold.