Repository navigation
gedis-v0.1.5.zip
This pull request introduces a comprehensive persistence system to Gedis, allowing users to save and load the entire dataset using a flexible backend architecture. It also enhances the Pub/Sub system with introspection capabilities and debugger integration, and improves the documentation and debugger UI to support these new features.
Persistence System:
- Added a pluggable persistence backend architecture, including a base class (
gedis_persistence_backend.gd) and a default JSON snapshot backend (gedis_json_snapshot_backend.gd) for saving and loading datasets. [1] [2] - Implemented high-level and low-level persistence methods (
save,load,dump,restore) in the Gedis core (gedis_core.gd), supporting flexible data serialization and filtering. - Updated the README with detailed persistence documentation and API reference entries. [1] [2]
Pub/Sub System Improvements:
- Added new signals (
subscribed,unsubscribed) and introspection methods (list_channels,list_subscribers,list_patterns,list_pattern_subscribers) to the Pub/Sub component for better tracking and debugging. [1] [2] - Changed signal emission to use the
.emit()syntax for consistency and reliability. [1] [2]
Debugger Integration and UI:
- Enhanced the Gedis debugger to listen for Pub/Sub subscription events and provide introspection of Pub/Sub state via debugger messages. [1] [2]
- Added a new Pub/Sub tab, tree view, and fetch button to the debugger panel UI for visualizing channels, patterns, and subscribers. [1] [2] [3]
Documentation and API Reference Updates:
- Added a Table of Contents and persistence section to the README for improved navigation and clarity. [1] [2]
- Updated the API reference to include new persistence methods.
Internal Structure and Maintenance:
- Registered new backend and debugger panel resources for use in the engine/editor. [1] [2] [3]
These changes significantly improve Gedis's usability for saving/loading state and debugging Pub/Sub activity, making it more robust and developer-friendly.