更新履歴
[1.1.1] - 2026-05-16
🚀 追加
- 明示的トランザクション: 手動でトランザクションを制御するための
atomic()コンテキストマネージャをNyanSQLiteに、async with atomic()をNyanSQLiteAIOに追加しました。 - 入れ子構造のトランザクション: ネスト(入れ子)された
atomic()ブロックのサポートを追加しました。
🔄 変更
- スレッドセーフ:
NyanSQLiteでthreading.RLockを使用するように変更し、スレッド安全性を向上させました。 - 非同期安全性:
NyanSQLiteAIOにおいて、atomic()使用時のデッドロックを防ぐためにリエントラントな非同期ロックを実装しました。
[1.1.0] - 2026-05-16
🚀 追加
- 非同期サポート:
NyanSQLiteAIOクラスによるasyncioの完全サポート。 - パフォーマンス向上:
asyncio.to_thread内での効率的な行処理により、読み取り操作を最適化。 - ドキュメント更新: 非同期利用に関する日英のドキュメントを追加。
🔄 変更
NyanSQLiteAIOのquery,select,searchメソッドの内部最適化。- 同期版
NyanSQLiteクラスにおいて、読み取り操作のロック保持時間を最小化。
[1.0.1] - 2026-05-15
🐞 修正
- 軽微なバグ修正とパフォーマンスの改善。
[1.0.0] - 2026-05-15
🚀 追加
- Pydantic v2 対応: Pydanticモデルをそのままデータベーススキーマとして利用可能。
- Djangoライクなクエリ構文:
__gte,__in,__likeなどの直感的なフィルタリングをサポート。 - FTS5 全文検索: SQLiteのFTS5拡張を利用した高速な全文検索機能。
- 自動インデックス管理:
Indexed[T]やUniqueIndexed[T]アノテーションによるB-treeインデックスの自動生成。 - 複合インデックス: Pydanticの
Fieldメタデータを介したCompositeIndexのサポート。 - 透過的な型処理:
dictやlistなどの複雑な型を自動的にJSONとしてシリアライズ/デシリアライズ。 - WALモードのサポート: パフォーマンスと並行性の向上のため、デフォルトでWAL(Write-Ahead Logging)モードを有効化。
- コンテキストマネージャ対応:
with構文による自動的なコネクション終了処理。
🔄 変更
- NyanSQLite の初期公開リリース。