add first structure
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
# Contributing
|
||||
|
||||
## Development setup
|
||||
|
||||
Prerequisites:
|
||||
[uv](https://docs.astral.sh/uv/#installation),
|
||||
[just](https://just.systems/man/en/installation.html)
|
||||
|
||||
```shell
|
||||
# Arch Linux
|
||||
pacman -S uv just
|
||||
# optinal
|
||||
pacman -S just-lsp yamlfmt shellcheck
|
||||
```
|
||||
|
||||
The development environment and testing requires multiple specific Python versions; they can be installed with (inside the pulled git project directory):
|
||||
|
||||
```shell
|
||||
uv sync
|
||||
```
|
||||
|
||||
The storage directory of Python versions can be configured with `UV_PYTHON_INSTALL_DIR`. (It must be an absolute path.)
|
||||
|
||||
## Testing
|
||||
|
||||
A script is available to run the test suit.
|
||||
|
||||
```shell
|
||||
just test
|
||||
```
|
||||
|
||||
## Formatting
|
||||
|
||||
Formatting of YAML files requires [yamlfmt](https://github.com/google/yamlfmt) to be installed seperately.
|
||||
|
||||
A script is available to run the format check.
|
||||
|
||||
```shell
|
||||
just format-check
|
||||
just schema-scheck
|
||||
```
|
||||
|
||||
## Linting
|
||||
|
||||
Linting requires [shellcheck](https://github.com/koalaman/shellcheck) to be installed separately.
|
||||
Validating `pyproject.toml` against the checked-in uv schema also requires
|
||||
[jq](https://jqlang.org/).
|
||||
|
||||
A script is available to run the lint check.
|
||||
|
||||
```shell
|
||||
just lint-check
|
||||
just type-check
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
A script is available to run the documentaion generation.
|
||||
|
||||
```shell
|
||||
just docs
|
||||
just man
|
||||
```
|
||||
Reference in New Issue
Block a user