Use a tools section, rather than X-tool
- Dominant language
- Python
- Stars
- 191
- Forks
- 14
- PR merge metrics
- No merged PRs in 30d
Description
This is a case where I think that python with it's pyproject.toml made a really good choice, it specified that there would be a "tools" section, like so:
```toml
[tools]
[tools.pylint]
foo = ['a', 'b']
[tools.black]
```
I think this would be a better approach for CPS than the X- fields, there specification could look like, the tools key is an object, containing key: object mappings where the key is the name of the tool, and the object may contain any tool specific data, in the form the tool likes.
This allows the spec to say "no extra keys", for the schema to enforce "no extra keys" and we don't have to worry about collisions in the future if a new key is added and someone has ignored the guidance of using X-tool
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue compares CPS's current X-tool fields with Python's pyproject.toml [tools] pattern. Start by reviewing the current CPS specification and schema definitions, then read the comment thread for an agreed shape. Done means the specification and schema consistently define the proposed tools object without unintended extra-key or collision behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100