Skip to content

Add JSON schema for symbol config#9

Merged
aaliboyev merged 1 commit into
wyolet:mainfrom
zhouzhou626:docs/config-schema
May 20, 2026
Merged

Add JSON schema for symbol config#9
aaliboyev merged 1 commit into
wyolet:mainfrom
zhouzhou626:docs/config-schema

Conversation

@zhouzhou626
Copy link
Copy Markdown
Contributor

Summary

  • Add a draft 2020-12 JSON schema for symbol.toml / [tool.symbol] config.
  • Update the README configuration example to match the current parser shape (checker, checkers.*, etc.).
  • Add schema tests covering JSON validity, key config sections, and the documented config shape.

Closes #5.

Tests

  • uv run pytest tests\test_config_schema.py tests\test_project_config.py
  • uv run ruff check tests\test_config_schema.py
  • python -m json.tool schemas\symbol.config.schema.json > $null
  • uv run python -c "import json; from pathlib import Path; from jsonschema import Draft202012Validator; Draft202012Validator.check_schema(json.loads(Path('schemas/symbol.config.schema.json').read_text(encoding='utf-8')))"
  • uv run pytest on Windows: 332 passed, 22 failed. The failures appear unrelated to this PR and come from existing Windows platform assumptions around CRLF byte offsets, path separators, and chmod behavior.

@aaliboyev
Copy link
Copy Markdown
Member

Thanks — verified the schema against project_config.py and config_resolver.py, all accurate. Will give it one more pass and merge.

@aaliboyev aaliboyev merged commit 90b6bd2 into wyolet:main May 20, 2026
1 check passed
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.

Publish a JSON schema for symbol.toml / [tool.symbol]

2 participants