Release v1.0.3
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"
)