mirror of
https://github.com/dexoron/dcr.git
synced 2026-10-21 08:48:30 +00:00
Rewrite project from Python to Rust and add Windows/MacOS supports
This commit is contained in:
@@ -4,41 +4,43 @@
|
||||
|
||||
## Требования
|
||||
|
||||
- Обязательно использовать форматирование `ruff`.
|
||||
- Обязательно использовать аннотации типов и проверять их через `ty`.
|
||||
- Использовать Rust stable.
|
||||
- Перед PR код должен проходить форматирование, линт и сборку.
|
||||
|
||||
## Быстрый старт(GNU/Linux)
|
||||
## Быстрый старт
|
||||
|
||||
Создайте линковку ./PATH_TO_PROJECT/dcr и ~/.local/bin/dcr
|
||||
После этого, вы можете использовать команду dcr где угодно
|
||||
```bash
|
||||
git clone https://github.com/dexoron/dcr.git
|
||||
cd dcr
|
||||
cargo check
|
||||
```
|
||||
|
||||
## Стиль кода
|
||||
|
||||
- Форматируйте код через `ruff`.
|
||||
- Форматируйте код через `cargo fmt`.
|
||||
- Проверяйте предупреждения через `cargo clippy`.
|
||||
- Держите функции небольшими и сфокусированными.
|
||||
- Предпочитайте понятные имена вместо "хитрых".
|
||||
|
||||
## Типизация
|
||||
|
||||
- Добавляйте аннотации типов для нового и изменяемого кода.
|
||||
- Запускайте `ty` для проверки корректности типов.
|
||||
|
||||
## Проверки
|
||||
|
||||
Для запуска всех проверок используйте скрипт проекта:
|
||||
Перед PR запускайте:
|
||||
|
||||
```bash
|
||||
./check.sh
|
||||
cargo fmt --all
|
||||
cargo clippy --all-targets --all-features -- -D warnings
|
||||
cargo check
|
||||
```
|
||||
|
||||
> Скрипт можно запустить из любой папки, указав путь до него: `../check.sh` (или больше `../`, если нужно).
|
||||
## CI/CD и релизы
|
||||
|
||||
## Запуск инструментов напрямую
|
||||
|
||||
```bash
|
||||
ruff check src
|
||||
uvx ty check src
|
||||
```
|
||||
- CI: `.github/workflows/ci.yml`
|
||||
- Release: `.github/workflows/release.yml`
|
||||
- Релиз запускается по тегу `v*` и публикует бинарники для:
|
||||
- `x86_64-unknown-linux-gnu`
|
||||
- `x86_64-apple-darwin`
|
||||
- `aarch64-apple-darwin`
|
||||
- `x86_64-pc-windows-msvc`
|
||||
|
||||
## Коммиты и PR
|
||||
|
||||
@@ -48,7 +50,7 @@ uvx ty check src
|
||||
|
||||
## Вопросы
|
||||
|
||||
Если что-то непонятно, откройте issue или задайте вопрос в PR.
|
||||
Если что-то непонятно, открой issue или задайте вопрос в PR.
|
||||
|
||||
Также можно задать вопрос напрямую:
|
||||
- TG: @dexoron
|
||||
|
||||
Reference in New Issue
Block a user