Contributing¶
Guidelines for contributing to ProgridPy. This section covers development setup, coding standards, and testing practices.
Sections¶
- Development -- Environment setup, branching, linting, and the pull request process.
- Testing -- pytest conventions, test structure, fixtures, and coverage expectations.
Code Conventions (Summary)¶
These principles govern all code in the repository:
- Simple, short, elegant, optimized code. No over-engineering.
- No try-except bloat. Let errors propagate unless there is a specific recovery action.
- No helpers for one-time use. No premature abstractions.
- Comments only when logic is not self-evident. Keep comments brief.
- Absolute imports everywhere. No relative imports.
- Polars for ISO processing. All data processing in the ISO module uses Polars (SPP is the reference). The metrics module uses pandas.
- PEP 695 generics for type parameterization.
rufffor linting and formatting. No other formatters.
Architecture Reference¶
See the API Reference for the full module map. The high-level data flow is: