Асинхронный Python-клиент для работы с сервисами репозитория ALT Linux. Библиотека предоставляет удобный интерфейс для доступа к данным о пакетах, задачах, мейнтейнерах и другой информации из экосистемы ALT Linux.
## Возможности
-**REST API** — полный клиент для [rdb.altlinux.org/api](https://rdb.altlinux.org/api): информация о пакетах, поиск, задачи, мейнтейнеры, баги, ACL, зависимости, эрраты, лицензии и многое другое
-**Парсер новостей** — получение и разбор новостей из рассылки [sisyphus-cybertalk](https://lists.altlinux.org/pipermail/sisyphus-cybertalk/): добавленные, обновлённые и удалённые пакеты, баги
-**Watch** — отслеживание устаревших пакетов через [watch.altlinux.org](https://watch.altlinux.org), как по отдельному мейнтейнеру, так и по всему репозиторию целиком
-**FTBFS** — список пакетов с ошибками пересборки
-**AppStream** — загрузка, кеширование и поиск по AppStream-метаданным пакетов
## Установка
```bash
pip3 install altrepo
```
## Быстрый старт
Минимальный пример для начала работы с библиотекой. Создаём клиент, инициализируем сессию и делаем запрос:
Все URL-ы и настройки имеют разумные значения по умолчанию, поэтому для стандартного использования никакая дополнительная конфигурация не требуется. При необходимости любой параметр можно переопределить через `ALTRepoConfig`:
```python
fromaltrepoimportALTRepo,ALTRepoConfig
config=ALTRepoConfig(
api_base_url="https://rdb.altlinux.org/api",
appstream_dir="/tmp/appstream",
appstream_branches=["sisyphus","p11","p10"],
)
client=ALTRepo(config=config)
```
Если в вашем приложении уже есть `aiohttp.ClientSession`, её можно передать при инициализации, чтобы не создавать лишних соединений: