Skip to content

[Feature]: Add code-quality checks #83

Description

@Malcolmnixon

Feature Summary

Code Quality checks should be enforced using:

  • streetsidesoftware/cspell-action@v8
  • DavidAnson/markdownlint-cli2-action@v22
  • ibiqlik/action-yamllint@v3

Problem Statement

Adding code-quality checks improves consistency across the repository.

Proposed Solution

Modify the build_on_push.yaml to add a Code Quality job which:

  1. Checks spelling using streetsidesoftware/cspell-action@v8
  2. Checks all markdown files using DavidAnson/markdownlint-cli2-action@v22
  3. Checks all yaml files using ibiqlik/action-yamllint@v3

Alternatives Considered

No response

Usage Example

Feature Category

Documentation

Priority

Medium - Would be nice to have

Use Case

N/A

Benefits

Improved file quality and consistency

Willing to Contribute

Yes, I can submit a pull request

Additional Context

The .markdownlint.json file should be:

{
  "default": true,
  "MD003": { "style": "atx" },
  "MD007": { "indent": 2 },
  "MD013": { "line_length": 120 },
  "MD033": false,
  "MD041": false
}

The .yamllint.yaml file should be:

---
# yamllint configuration for SpdxModel
# This configuration defines the rules for YAML file linting

extends: default

rules:
  # Allow 'on:' in GitHub Actions workflows (not a boolean value)
  truthy:
    allowed-values: ['true', 'false', 'on', 'off']
    check-keys: true

  # Allow longer lines for URLs and complex expressions
  line-length:
    max: 120
    level: error

  # Ensure proper indentation
  indentation:
    spaces: 2
    indent-sequences: true

  # Ensure proper comment formatting
  comments:
    min-spaces-from-content: 2

Checklist

  • I have searched existing issues to ensure this feature hasn't been requested before
  • This feature aligns with the goals and scope of the SpdxModel project
  • I have provided all the information requested above

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

documentationImprovements or additions to documentation

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions