Swift клиент для CouchDB 2.4.0
Основные изменения
- Проведен рефакторинг внутреннего устройства выполнения запросов в CouchDBClient для использования более чистых потоков в стиле async/await и уменьшения дублирования логики обработки ответов.
- Улучшены пути буферизации и декодирования для сырых и типизированных запросов с упором на более безопасное выполнение в EventLoopGroup и повышение производительности при обработке ответов.
- Расширено тестовое покрытие для выполнения запросов на базе EventLoopGroup, включая сырые и типизированные get, сырые и типизированные find, загрузку вложений, вывод списков индексов Mango и объяснение запросов Mango.
- Обновлена документация для пользователей: README, статьи DocC и руководства (tutorials).
- Обновлены инструменты документирования для новых рабочих процессов DocC, включая поддержку экспорта в Markdown.
Улучшения API и поведения
- Добавлена и доработана поддержка EventLoopGroup для большего количества путей запросов в CouchDBClient.
- Улучшены внутренние пути обработки ошибок и поведение декодирования ответов для операций CouchDB.
- Упрощена многоуровневая структура помощников запросов и уменьшено дублирование кода обработки запросов/ответов.
- Улучшено поведение, связанное с вложениями, и соответствующие тесты.
- В манифест пакета добавлена поддержка visionOS.
Документация
- Исправлены и обновлены примеры в README для использования CRUD и запросов Mango.
- Обновлены целевые страницы DocC для лучшего отражения текущего API.
- Исправлены фрагменты кода в руководстве по продвинутым запросам Mango, чтобы они соответствовали текущему типизированному API запросов.
- Исправлены примеры в руководстве по Vapor.
- Исправлена настройка пакета и зависимостей в руководстве по Hummingbird.
-
Обновлен buildDocs.sh для поддержки:
- настраиваемого пути вывода и базового пути хостинга;
- встраивания контента для статического хостинга;
- экспериментального вывода в Markdown;
- генерации манифеста Markdown.
- Добавлен этап постобработки в buildDocs.sh, который внедряет относительную ссылку на Markdown в сгенерированные HTML-страницы DocC.
Инструменты и зависимости
- Обновлены зависимости пакета в Package.resolved.
- Обновлена матрица версий Swift для процесса сборки под Ubuntu.
CouchDB Client на GitHub | Документация с примерами и руководствами.
// ─── EOF ──────────────────────────────────────────────────