Вышел релиз sqlite-utils 4.0 — первая мажорная версия популярной библиотеки для работы с SQLite за последние четыре года. Обновление привносит критически важные инструменты для управления жизненным циклом данных: встроенную систему миграций схем, поддержку вложенных транзакций и работу с составными внешними ключами, что значительно упрощает интеграцию SQLite в сложные агентные системы и пайплайны данных.

Основное нововведение — механизм миграций, который позволяет автоматизировать изменение структуры базы данных без потери информации. Это критично для проектов, где схема данных эволюционирует вместе с логикой ИИ-агента. Вложенные транзакции, реализованные через метод `db.atomic()`, обеспечивают более надежную обработку ошибок при выполнении пакетных операций, что повышает целостность данных в агентных рабочих процессах.

Библиотека также получила улучшения в работе с внешними ключами, включая поддержку составных ключей, что расширяет возможности проектирования реляционных связей внутри локальных хранилищ данных. Несмотря на наличие ряда изменений, нарушающих обратную совместимость, переход на новую версию позволяет использовать более гибкие и безопасные паттерны управления состоянием в приложениях, использующих SQLite в качестве бэкенда.

Ключевые факты

  • Релиз 4.0 стал первым мажорным обновлением проекта с ноября 2020 года.
  • Добавлена встроенная система миграций для управления изменениями схемы БД.
  • Появился метод `db.atomic()` для поддержки вложенных транзакций.
  • Реализована полноценная поддержка составных внешних ключей (compound foreign keys).
  • Обновление включает ряд изменений, нарушающих обратную совместимость, требующих ознакомления с руководством по миграции.