Skip to content

Release v1.0.3

Choose a tag to compare

@texport texport released this 05 Jul 19:58

Release Notes v1.0.3

Этот релиз включает критические исправления для повышения надежности, достижение 100% тестового покрытия и полное документирование публичного API.

Изменения по категориям

Bug Fixes 🐛

  • Стабилизация покрытия и рефакторинг: Выделен метод processCommand в QueueService для устранения дублирования finally-блоков компилятором Kotlin. Ветвления (branch coverage) доведены до 100%.
  • Аварийные сценарии: Добавлены тесты для проверки выброса исключений при сбое базы данных и одновременном сбое освобождения распределенных блокировок.
  • Устранение предупреждений Gradle: Избавились от предупреждений об обращении к Task.project на этапе выполнения (Execution Time) в задаче generateSpmManifest. Устранена депрекация объявления проекта через project(":") в пользу dependencies.project(...).
  • Информативность ошибок: Переработан класс QueueErrorMessages с предоставлением операторам понятных инструкций на русском, казахском и английском языках взамен технических трассировок стека.

Features 🚀

  • Тестирование типов команд: Реализована автоматическая проверка корректной передачи всех типов команд (QueueCommandType) из базы данных до прикладного обработчика.

Tooling & Chore 🛠️

  • Полное документирование: Публичные API в модуле commonMain полностью задокументированы с помощью KDoc на русском языке.
  • Kover & CI: Интегрированы строгие лимиты покрытия (100% строк/ветвлений/инструкций), а шаги CI-сборки разделены в соответствии с шаблоном KMP.

Swift Package Manager (SPM) Integration

Для подключения библиотеки через SPM используйте следующий таргет в вашем Package.swift:

.binaryTarget(
    name: "SuperkassaOfflineQueue",
    url: "https://github.com/texport/superkassa-offline-queue/releases/download/v1.0.3/SuperkassaOfflineQueue.xcframework.zip",
    checksum: "ad9a3f622b325aed4822677bf924b6e6a63930c08a1ab71be4c5850ef54ed409"
)