|
10 | 10 | - Create env: `python -m venv .venv && source .venv/bin/activate`. |
11 | 11 | - Install dev deps: `pip install -e .[dev]`. |
12 | 12 | - Run all tests + coverage: `tox`. |
13 | | -- Style/lint (ruff): `tox -e style` (runs `ruff check --fix` and `ruff format`). |
14 | 13 | - Extra tests with SQLean: `tox -e sqlean` (installs `[sqlean]` extras). |
15 | | -- Run tests directly: `pytest -v` or focused: `pytest -k keyword`. |
| 14 | +- Run tests directly: `pytest -q` or focused: `pytest -k keyword`. |
16 | 15 | - Launch CLI locally: `litecli path/to.db`. |
17 | 16 |
|
| 17 | +### Ruff (lint/format) |
| 18 | +- Full style pass: `tox -e style` (runs `ruff check --fix` and `ruff format`). |
| 19 | +- Direct commands: |
| 20 | + - Lint: `ruff check` (add `--fix` to auto-fix) |
| 21 | + - Format: `ruff format` |
| 22 | + |
| 23 | +### Mypy (type checking) |
| 24 | +- Repo-wide (recommended): `mypy --explicit-package-bases .` |
| 25 | +- Per-package: `mypy --explicit-package-bases litecli` |
| 26 | +- Notes: |
| 27 | + - Config is in `pyproject.toml` (target Python 3.9, stricter settings). |
| 28 | + - Use `--explicit-package-bases` to avoid module discovery issues when running outside tox. |
| 29 | + |
18 | 30 | ## Coding Style & Naming Conventions |
19 | 31 | - Formatter/linter: Ruff (configured via `.pre-commit-config.yaml` and `tox`). |
20 | 32 | - Indentation: 4 spaces. Line length: 140 (see `pyproject.toml`). |
|
33 | 45 | - PRs: include clear description, steps to reproduce/verify, and screenshots or snippets for CLI output when helpful. Use the PR template. |
34 | 46 | - Ensure CI passes (tests + ruff). Re-run `tox -e style` before requesting review. |
35 | 47 |
|
| 48 | +## Changelog Discipline |
| 49 | +- Always add an "Unreleased" section at the top of `CHANGELOG.md` when making changes. |
| 50 | +- Keep entries succinct; avoid overly detailed technical notes. |
| 51 | +- Group under "Features", "Bug Fixes", and "Internal" when applicable. |
| 52 | + |
36 | 53 | ## Security & Configuration Tips |
37 | 54 | - Do not commit local databases or secrets. Use files under `tests/data/` for fixtures. |
38 | 55 | - User settings live outside the repo; document defaults by editing `litecli/liteclirc`. |
0 commit comments