Releases: dbzero-software/dbzero
0.1.2
What's Changed
- db0.load_all implemented by @wskozlowski in #653
- feat: non-persistent members by @wskozlowski in #654
- license changed to LGPLv2.1 by @wskozlowski in #655
- Fixed crashes related to memo cleanup on process exit by @sigsegvdev in #661
- fix(CFile): fixed problem with fsync on windows by @adrian-zawadzki in #672
Full Changelog: v0.1.1-alpha...v0.1.2
0.1.1-alpha
Cleanups
0.1.0-alpha
Release Notes - dbzero v0.1.0-alpha
Release Date: December 19, 2025
Overview
We are excited to announce the first official release of dbzero - a novel state management system for Python that unifies your application's business logic, data persistence, and caching into a single, efficient layer.
What is dbzero?
dbzero lets you code as if you have infinite memory. Inspired by the thought experiment from Architecture Patterns with Python by Harry Percival and Bob Gregory, dbzero handles the complexities of data management in the background while you work with simple Python objects.
Core Philosophy
The guiding philosophy behind dbzero is invisibility—it stays out of your way as much as possible. No schema definitions, no explicit save calls, no ORM configuration. You just write regular Python code, as you always have, and dbzero transparently handles persistence for your entire object graph.
The DISTIC Memory Model
dbzero implements the DISTIC memory model, providing:
- Durable - Data persists across application restarts
- Infinite - Work with data as if memory constraints don't exist (create lists, dicts, or sets with billions of elements)
- Shared - Multiple processes can access and share the same data
- Transactional - Full transaction support for data integrity
- Isolated - Reads performed against consistent point-in-time snapshots
- Composable - Plug in multiple prefixes (memory partitions) on demand and access other apps' data
Key Features
Automatic Persistence
Application objects (classes and common structures like list, dict, set) are automatically persisted without any explicit save operations.
Intelligent Caching
Only the data actually accessed is retrieved and cached. Access 10 elements from a million-element list? Only those 10 are loaded.
Database-Grade Reliability
- Serializable consistency for immediate, consistent reads
- Atomic transactions using context managers
- Snapshots & Time Travel to query historical data
- UUID support for direct object referencing
Advanced Capabilities
- Tags for object filtering and retrieval
- Indexing with dynamic, lightweight indexes
- Data composability across apps, processes, and servers
- Custom data models tailored to your domain
- Memory constraints to control RAM consumption
Platform Support
- Python: 3.9+
- Operating Systems: Linux, macOS, Windows
- Storage: Local filesystem or network-attached storage
Getting Started
pip install dbzeroTransform any Python class into a persistent object with a simple decorator:
import dbzero as db0
@db0.memo(singleton=True)
class MyApp:
def __init__(self):
self.data = []That's it. No additional configuration needed.
Use Cases
dbzero is ideal for:
- Applications requiring persistent state without database overhead
- Systems needing to work with large datasets efficiently
- Multi-process applications sharing data
- Projects requiring audit trails and time-travel debugging
- Microservices architectures with data composability needs
License
dbzero is released under the AGPL v3 license.
Learn More
Visit dbzero.io for complete documentation, tutorials, and examples.
Thank you for being part of the dbzero community. We look forward to seeing what you build!