Skip to content

Comments

chore: add pre-commit configuration and CI#12

Open
nearlyforget wants to merge 6 commits intoUniversal-Commerce-Protocol:mainfrom
nearlyforget:feat/add-pre-commit
Open

chore: add pre-commit configuration and CI#12
nearlyforget wants to merge 6 commits intoUniversal-Commerce-Protocol:mainfrom
nearlyforget:feat/add-pre-commit

Conversation

@nearlyforget
Copy link
Contributor

Description:
This PR establishes a robust linting and formatting pipeline for the Python SDK. By integrating pre-commit, we
automate the enforcement of code quality standards and security best practices.

Tools & Hooks Added:

Ruff: Highly efficient Python linter and formatter. Configured to automatically fix safe issues and ensure
consistent code style across the SDK's extensive model and schema definitions.
Prettier: Handles formatting for non-Python assets, including Markdown documentation, YAML workflows, and JSON
files.
ShellCheck: Ensures the reliability and portability of generate_models.sh.
codespell: Periodically checks the codebase for common typos in docstrings and comments.
Hygiene Hooks: Standardizes file endings and removes trailing whitespace to keep the diffs clean.
CI/CD Integration:

GitHub Actions (linter.yml): Automatically validates every push and pull request against these standards to
prevent the introduction of unformatted code.

@nearlyforget nearlyforget requested a review from a team as a code owner February 21, 2026 02:55
rev: v0.10.0
hooks:
- id: shellcheck
- repo: https://github.com/codespell-project/codespell
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want codespell here? We're using cspell on the main ucp repo.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I switched to this for low maintenance so we don't have to manage

  • additional custom files for each repo (e.g.custom keywords)
  • update dictionary every time something new comes up.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants