Skip to content

v0.2.0

Choose a tag to compare

@borzov borzov released this 11 Jan 17:05
· 148 commits to main since this release

Что нового

Добавлено

  • Типизированная поддержка Milestones для задач и проектов (модель Milestone, методы get_milestones() и add_milestone())
  • Универсальная работа с фильтрами через FilterBuilder с fluent API (TaskFilterBuilder, TradeFilterBuilder, поддержка всех типов FilterTerm)
  • Нормализация BaseEntity объектов (автоматическая конвертация строковых ID в int для параметров пагинации и baseOn)
  • Валидация статусов задач через VALID_TASK_STATUSES
  • Улучшения метода check_exists() для сделок (поддержка множественных параметров, нормализация BaseEntity)
  • Утилиты валидации для интеграционных тестов
  • Реорганизация интеграционных тестов (read_only/ и write/)

Изменено

  • Реорганизация README.md (оглавление, раздел "Общие паттерны", устранение дублирования ~800 строк)
  • Улучшена безопасность (убрано логирование username, приватный access_token)
  • Оптимизирован EntityCache (отслеживание типов через defaultdict)

Исправлено

  • Исправлена обработка Milestones API (опциональный id, обход ошибки 500, корректный формат DateTime)
  • Исправлена нормализация BaseEntity объектов
  • Исправлены ruff предупреждения UP038

Улучшено (Рефакторинг)

  • Устранены нарушения DRY (generic методы для milestones, сокращено ~160 строк кода)
  • Упрощение кода KISS (_normalize_base_entity() -29%, check_exists() -16%, чистая функция _normalize_datetime_field())
  • Удален мёртвый код (неиспользуемые параметры пагинации в get_milestones(), ContractorsResource.delete())
  • Применены замечания разработчика (ruff предупреждения, чистая функция, упрощение методов)

Удалено

  • Исключена директория docs/ из репозитория

Установка

Этот релиз доступен на PyPI:

pip install megaplan-sdk==0.2.0

Ссылки