Skip to content

v2.4.0

Choose a tag to compare

@Chu4hel Chu4hel released this 03 Jan 21:04
· 787 commits to main since this release

✨ Новые возможности (Feat)

  • Асинхронная поддержка: Реализована полная асинхронная поддержка для модулей config и secret_manager. Новые функции (aget_config, asave_config_value, aget_secret и др.) позволяют выполнять I/O-операции в неблокирующем режиме, что критически важно для современных asyncio-приложений.
  • Работа с путями в конфигурации: Добавлена новая функция get_config_path для удобной работы с путями. Она автоматически преобразует относительные пути в абсолютные. Поведение управляется флагом resolve_from_root.
  • Сохранение в локальный конфиг: В функцию save_config_value добавлен флаг save_to_local, который позволяет явно сохранять настройки в локальный файл конфигурации (config.local.yml), что удобно для переопределения настроек.

🐛 Исправления (Fix)

  • Безопасность зависимостей: Устранена уязвимость CVE-2024-12797 в пакете cryptography. Обновлены зависимости скорректированы требования к версии Python для исключения уязвимых версий (!=3.9.0, !=3.9.1).
  • Ротация логов: Устранена критическая ошибка PermissionError, возникавшая в Windows, когда несколько логгеров использовали один файл. Реализован механизм кэширования файловых обработчиков для предотвращения конфликтов.

📝 Документация (Docs)

  • Интернационализация: Проведена полная переработка документации для поддержки английского языка. Созданы английские версии README, CONTRIBUTING и CODE_OF_CONDUCT. Русскоязычные версии перенесены в директорию docs/.

✅ Тесты (Test)

  • Стабильность и покрытие: Исправлены тесты, затронутые изменениями в logger и secret_manager. Добавлены новы тесты, покрывающие механизм кэширования обработчиков логгера, чтобы предотвратить регрессии в будущем.