# Planetra Solver
**Planetra Solver** — это библиотека для работы с API Knowledge Space. Она предоставляет удобные функции для управления: объектами, моделями, наборами данных, классами и справочниками.
## Содержание
- [Установка](#установка)
- [Зависимости](#зависимости)
- [Использование](#использование)
- [Функции](#функции)
- [Авторы](#авторы)
- [Контакты](#контакты)
## Установка
Чтобы установить библиотеку, выполните следующую команду:
```bash
pip install planetra_solver
```
## Зависимости
Все необходимые для работы зависимости устанавливаются автоматически вместе с библиотекой.
## Использование
Для использования библиотеки необходимо импортировать её в ваш проект:
```python
from planetra_solver import *
```
## Функции
Библиотека включает в себя следующие функции:
### Объекты
- `create_object(class_id: str, model_id: str, object_name: str) -> None`: Создает новый объект.
- `create_objects(class_id: str, model_id: str, object_names: list) -> None`: Создает несколько объектов.
- `delete_object(object_id: str) -> None`: Удаляет объект.
- `delete_objects(object_ids: list) -> None`: Удаляет несколько объектов.
- `rename_object(object_id: str, object_name: str) -> None`: Переименовывает объект.
- `rename_objects(object_ids: list, object_names: list) -> None`: Переименовывает несколько объектов.
- `get_all_objects() -> None`: Возвращает список всех объектов.
### Модели
- `create_model(model_name: str) -> None`: Создает новую модель.
- `create_models(model_names: list) -> None`: Создает несколько моделей.
- `delete_model(node_id: str) -> None`: Удаляет модель.
- `delete_models(node_ids: list) -> None`: Удаляет несколько моделей.
- `rename_model(node_id: str, model_name: str) -> None`: Переименовывает модель.
- `rename_models(node_ids: list, model_names: list) -> None`: Переименовывает несколько моделей.
- `get_all_models() -> None`: Возвращает список всех моделей.
### Наборы данных
- `create_dataset(model_id: str, dataset_name: str) -> None`: Создает новый набор данных.
- `create_datasets(model_id: str, dataset_names: list) -> None`: Создает несколько наборов данных.
- `delete_dataset(dataset_id: str) -> None`: Удаляет набор данных.
- `delete_datasets(dataset_ids: list) -> None`: Удаляет несколько наборов данных.
- `get_all_datasets() -> None`: Возвращает список всех наборов данных.
### Классы
- `create_class(name: str) -> None`: Создает новый класс.
- `create_classes(name: list) -> None`: Создает несколько классов.
- `delete_class(class_id: str) -> None`: Удаляет класс.
- `rename_class(class_id: str, name: str) -> None`: Переименовывает класс.
- `update_class_policy(class_id: str, denied_edit: bool = False, denied_read: bool = False) -> None`: Обновляет политику класса.
- `get_class_tree() -> None`: Возвращает иерархию классов.
### Справочники
- `create_dict(name: str) -> None`: Создает новый справочник.
- `create_dict_element(dict_uuid: str, name: str, shortname: str | None = None) -> None`: Добавляет элемент в справочник.
- `create_dict_elements(dict_uuid: str, names: list) -> None`: Добавляет несколько элементов в справочник.
- `delete_dict(dict_uuid: str) -> None`: Удаляет справочник.
- `delete_dict_elements(elem_uuid: list) -> None`: Удаляет несколько элементов из справочника.
- `delete_dict_element(elem_uuid: str) -> None`: Удаляет элемент из справочника.
- `get_dict_elements_list(dict_uuid: str) -> None`: Возвращает список всех элементов справочника.
### Чаты
- `create_chat(name: str) -> None`: Создает новый чат.
- `delete_chat(chat_uuid: str) -> None`: Удаляет чат.
- `send_message(chat_uuid: str, body: str, comment: str) -> None`: Отправляет сообщение.
## Авторы
- **Ruslan Gafurov**
- **Anton Vyugin**
## Контакты
Если у вас есть предложения, вы можете связаться с авторами по следующим адресам:
- ruslan.gafurov@planetra.ru
- anton.vyugin.00@mail.ru
### Спасибо за использование **Planetra Solver!**
Raw data
{
"_id": null,
"home_page": "https://planetra.gitlab.yandexcloud.net/testgroup/planetra_solver.git",
"name": "planetra-solver",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "api solver planetra knowledge space",
"author": "Anton Vyugin, Ruslan Gafurov",
"author_email": "anton.vyugin.00@mail.ru, g.r.9@mail.ru",
"download_url": "https://files.pythonhosted.org/packages/43/6b/9faf221b079d8b01160b21bcff0179701e38e01145467950b2e98ff6d8e8/planetra_solver-0.2.3.tar.gz",
"platform": null,
"description": "# Planetra Solver\r\n\r\n**Planetra Solver** \u2014 \u044d\u0442\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 API Knowledge Space. \u041e\u043d\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f: \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u043c\u0438, \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438, \u043d\u0430\u0431\u043e\u0440\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438 \u0438 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430\u043c\u0438.\r\n\r\n## \u0421\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\r\n- [\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430](#\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430)\r\n- [\u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438](#\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438)\r\n- [\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435](#\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435)\r\n- [\u0424\u0443\u043d\u043a\u0446\u0438\u0438](#\u0444\u0443\u043d\u043a\u0446\u0438\u0438)\r\n- [\u0410\u0432\u0442\u043e\u0440\u044b](#\u0430\u0432\u0442\u043e\u0440\u044b)\r\n- [\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u044b](#\u043a\u043e\u043d\u0442\u0430\u043a\u0442\u044b)\r\n\r\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\r\n\u0427\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443, \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443:\r\n```bash\r\npip install planetra_solver\r\n```\r\n\r\n## \u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\r\n\u0412\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439.\r\n\r\n## \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\r\n\u0414\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0451 \u0432 \u0432\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442:\r\n```python\r\nfrom planetra_solver import *\r\n```\r\n\r\n## \u0424\u0443\u043d\u043a\u0446\u0438\u0438\r\n\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432 \u0441\u0435\u0431\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:\r\n\r\n### \u041e\u0431\u044a\u0435\u043a\u0442\u044b\r\n- `create_object(class_id: str, model_id: str, object_name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442.\r\n- `create_objects(class_id: str, model_id: str, object_names: list) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432.\r\n- `delete_object(object_id: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442.\r\n- `delete_objects(object_ids: list) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432.\r\n- `rename_object(object_id: str, object_name: str) -> None`: \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442.\r\n- `rename_objects(object_ids: list, object_names: list) -> None`: \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432.\r\n- `get_all_objects() -> None`: \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432.\r\n\r\n### \u041c\u043e\u0434\u0435\u043b\u0438\r\n- `create_model(model_name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c.\r\n- `create_models(model_names: list) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u0435\u043b\u0435\u0439.\r\n- `delete_model(node_id: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043c\u043e\u0434\u0435\u043b\u044c.\r\n- `delete_models(node_ids: list) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u0435\u043b\u0435\u0439.\r\n- `rename_model(node_id: str, model_name: str) -> None`: \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u043c\u043e\u0434\u0435\u043b\u044c.\r\n- `rename_models(node_ids: list, model_names: list) -> None`: \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u0435\u043b\u0435\u0439.\r\n- `get_all_models() -> None`: \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439.\r\n\r\n### \u041d\u0430\u0431\u043e\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445\r\n- `create_dataset(model_id: str, dataset_name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445.\r\n- `create_datasets(model_id: str, dataset_names: list) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.\r\n- `delete_dataset(dataset_id: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445.\r\n- `delete_datasets(dataset_ids: list) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.\r\n- `get_all_datasets() -> None`: \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.\r\n\r\n### \u041a\u043b\u0430\u0441\u0441\u044b\r\n- `create_class(name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441.\r\n- `create_classes(name: list) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u0430\u0441\u0441\u043e\u0432.\r\n- `delete_class(class_id: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043a\u043b\u0430\u0441\u0441.\r\n- `rename_class(class_id: str, name: str) -> None`: \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u043a\u043b\u0430\u0441\u0441.\r\n- `update_class_policy(class_id: str, denied_edit: bool = False, denied_read: bool = False) -> None`: \u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043a\u043b\u0430\u0441\u0441\u0430.\r\n- `get_class_tree() -> None`: \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u044e \u043a\u043b\u0430\u0441\u0441\u043e\u0432.\r\n\r\n### \u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0438\r\n- `create_dict(name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a.\r\n- `create_dict_element(dict_uuid: str, name: str, shortname: str | None = None) -> None`: \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a.\r\n- `create_dict_elements(dict_uuid: str, names: list) -> None`: \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a.\r\n- `delete_dict(dict_uuid: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a.\r\n- `delete_dict_elements(elem_uuid: list) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430.\r\n- `delete_dict_element(elem_uuid: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438\u0437 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430.\r\n- `get_dict_elements_list(dict_uuid: str) -> None`: \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430.\r\n\r\n### \u0427\u0430\u0442\u044b\r\n- `create_chat(name: str) -> None`: \u0421\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u0447\u0430\u0442.\r\n- `delete_chat(chat_uuid: str) -> None`: \u0423\u0434\u0430\u043b\u044f\u0435\u0442 \u0447\u0430\u0442.\r\n- `send_message(chat_uuid: str, body: str, comment: str) -> None`: \u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435.\r\n\r\n## \u0410\u0432\u0442\u043e\u0440\u044b\r\n- **Ruslan Gafurov**\r\n- **Anton Vyugin**\r\n\r\n## \u041a\u043e\u043d\u0442\u0430\u043a\u0442\u044b\r\n\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u0441 \u0430\u0432\u0442\u043e\u0440\u0430\u043c\u0438 \u043f\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0430\u0434\u0440\u0435\u0441\u0430\u043c:\r\n- ruslan.gafurov@planetra.ru\r\n- anton.vyugin.00@mail.ru\r\n\r\n### \u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 **Planetra Solver!**\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "The library contains basic functions that can help in Planetra development",
"version": "0.2.3",
"project_urls": {
"Homepage": "https://planetra.gitlab.yandexcloud.net/testgroup/planetra_solver.git"
},
"split_keywords": [
"api",
"solver",
"planetra",
"knowledge",
"space"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "cc093189cd8bde9aaaa9798b9cfc7f5f7d83869adbc47541d7d196103c763b1d",
"md5": "28a8adc7605618512f869e9184d43edf",
"sha256": "c86612f90e720f95759659ebeeee8ec0d4acf663f81dc35a26225a47d0117f3c"
},
"downloads": -1,
"filename": "planetra_solver-0.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "28a8adc7605618512f869e9184d43edf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 12046,
"upload_time": "2024-12-13T10:00:28",
"upload_time_iso_8601": "2024-12-13T10:00:28.589159Z",
"url": "https://files.pythonhosted.org/packages/cc/09/3189cd8bde9aaaa9798b9cfc7f5f7d83869adbc47541d7d196103c763b1d/planetra_solver-0.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "436b9faf221b079d8b01160b21bcff0179701e38e01145467950b2e98ff6d8e8",
"md5": "35724a05162123f73877c0404dffc79f",
"sha256": "a0f39ffdd11b7152e94784d7e2cf335a8a9fdde0616105095f5898a929ca35af"
},
"downloads": -1,
"filename": "planetra_solver-0.2.3.tar.gz",
"has_sig": false,
"md5_digest": "35724a05162123f73877c0404dffc79f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 9542,
"upload_time": "2024-12-13T10:00:33",
"upload_time_iso_8601": "2024-12-13T10:00:33.909462Z",
"url": "https://files.pythonhosted.org/packages/43/6b/9faf221b079d8b01160b21bcff0179701e38e01145467950b2e98ff6d8e8/planetra_solver-0.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-13 10:00:33",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "planetra-solver"
}