обновлен CONTRIBUTING.md

このコミットが含まれているのは:
Ilya (Marshal) 2022-10-16 17:22:42 +02:00
コミット 49c2129c0f
1個のファイルの変更31行の追加0行の削除

ファイルの表示

@ -61,6 +61,11 @@ PR'ы должны быть сделаны в `dev` ветку. Определё
В проекте используется `black`. Не забывайте перед публикацией
отформатировать код и проверить его на работоспособность.
Используются одинарные кавычки. Запускайте `black` с конфигом из основной директории:
```shell
black --config=black.toml yandex_music
```
## Создание новых моделей
@ -71,3 +76,29 @@ PR'ы должны быть сделаны в `dev` ветку. Определё
опциональных полей. Не забывайте перечислить поля, по которым можно отличить
один объект от другого в `_id_attrs` (метод `__post_init__`). Экземпляр класса
`Client` передаётся в каждую модель для возможности написания методов-сокращений.
При наличии дополнительных методов у модели не забудьте создать асинхронную версию
метода добавив в название суффикс `_async`. Кроме этого, если у вашей модели
есть метод, например, `download_async()`, то такому методу следует создать
camel case псевдоним (`downloadAsync()`). Для создания псевдонимов существует
генератор. Всё что вам надо сделать это поместить в конце файла с моделью маркер:
```
# camelCase псевдонимы
```
([пример](https://github.com/MarshalX/yandex-music-api/blob/a30082f4929e56381c870cb03103777ae29bcc6b/yandex_music/tracks_list.py#L80))
После чего запустить генератор:
```shell
python generate_camel_case_aliases.py
```
### Создание новых методов клиента
Если ваша задача включает добавление нового API метода, то не забудьте
сгенерировать асинхронную версию клиента. Сделать это можно следующей командой:
```shell
python generate_async_version.py
```
Ни в коем случае не редактируйте файл `client_async.py` и `request_async.py` руками!