CHANGELOG
[1.1.1] - 2026-05-16
🚀 Added
- Explicit Transactions: Added
atomic()context manager toNyanSQLiteandasync with atomic()toNyanSQLiteAIOfor manual transaction control. - Nested Transactions: Added support for nested
atomic()blocks.
🔄 Changed
- Thread Safety: Improved thread safety by switching to
threading.RLockinNyanSQLite. - Async Safety: Implemented re-entrant async lock in
NyanSQLiteAIOto prevent deadlocks when usingatomic().
[1.1.0] - 2026-05-16
🚀 Added
- Asynchronous Support: Full support for
asyncioviaNyanSQLiteAIOclass. - Improved Performance: Optimized read operations by minimizing thread context switching and processing rows efficiently in
asyncio.to_thread. - Documentation Updates: Added English and Japanese documentation for asynchronous usage.
🔄 Changed
- Internal optimization for
query,select, andsearchmethods inNyanSQLiteAIO. - Optimized read operations in synchronous
NyanSQLiteclass by minimizing lock duration.
[1.0.1] - 2026-05-15
🐞 Fixed
- Minor bug fixes and performance improvements.
[1.0.0] - 2026-05-15
🚀 Added
- Pydantic v2 support: Models can be used directly as database schemas.
- Django-like Query Syntax: Support for intuitive filtering such as
__gte,__in,__like, etc. - FTS5 Full-Text Search: Fast full-text search capabilities using SQLite's FTS5 extension.
- Automatic Index Management: B-tree indexes are automatically created using
Indexed[T]andUniqueIndexed[T]annotations. - Composite Indexes: Support for
CompositeIndexvia Pydantic'sFieldextra metadata. - Transparent Type Handling: Automatically handles complex types like
dictandlistby serializing them to JSON. - WAL Mode Support: Write-Ahead Logging is enabled by default for better performance and concurrency.
- Context Manager Support:
NyanSQLitecan be used as a context manager for automatic connection closing.
🔄 Changed
- Initial public release of NyanSQLite.