Improve Vedic CLI Tooling, Add Pre-commit Hooks, and Format Codebase #39
+282
−170
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR includes a series of enhancements and refactors aimed at improving the development workflow, code quality, and CLI tooling for the
vedicproject. Key areas of focus include:Key Changes
CLI Improvements (
tools/cli.py)Refactored the CLI for clarity, modularity, and correctness
Fixed malformed
argparseargument definitionsAdded:
cargo,wasm-pack,pre-commit)cargo fmtandpre-commit--verbosemode with unified loggingImproved subprocess handling and output
Code Formatting and Cleanup
cargo fmton Rust code for consistent formattingPre-commit Integration
Added
.pre-commit-config.yamlwith:black,isort,pyupgradeHook autoupdate metadata included (
autoupdate_schedule,commit_msg)Configured Python hooks to run using Python 3
Git Utilities
Documented and tested commands for:
git diff --cached --color-wordschmod -x $(find tests/ -type f)git add --chmod=-x $(find tests/ -type f)How to Test
python tools/cli.py --helpto check all CLI optionspython tools/cli.py -fto format and run hookspre-commit run --all-filessucceedsDependencies
Pre-commit should be installed:
pip install pre-commitRust environment tools required:
cargo,rustc,wasm-pack