Releases: StratusQuo/SurrealDB.d
Releases · StratusQuo/SurrealDB.d
0.1.0-alpha
SurrealDB.D 0.1.0-alpha Release Notes
Example:
Initial Alpha Release
This is the first alpha release of SurrealDB.D, providing D language bindings for SurrealDB based on the official C bindings.
🎯 About This Release
This initial alpha release provides working low-level bindings to SurrealDB's C API. While functional, the API is subject to change as we work towards a stable release.
✨ Features
- Complete low-level bindings to SurrealDB's C API
- Basic CRUD operations
- Query execution support
- Connection management
- Memory-safe resource handling with
scope(exit)
- Example application demonstrating basic usage
- Automatic build integration with Rust/Cargo
🔧 Core Functionality
- Database connection and management
- Namespace and database selection
- Record creation and querying
- Live query capabilities
- Transaction support
- Error handling
- Memory management utilities
📝 Important Notes
- API Stability: This is an alpha release. The API may change significantly in future versions.
- String Handling: All strings passed to C functions must be null-terminated.
- Memory Management: Use
scope(exit)
for proper resource cleanup. - Compiler Support: Tested with DMD and LDC. GDC support is untested.
🚧 Known Limitations
- Limited test coverage
- No high-level wrapper yet
- Documentation is basic
- CI/CD pipeline not yet implemented
🛣️ Roadmap
Planned for future releases:
- Comprehensive test suite
- High-level D wrapper
- Documentation website
- CI/CD integration
- More examples
- Performance optimizations
🔍 Requirements
- D Compiler (DMD or LDC)
- DUB package manager
- Rust toolchain
- Cargo
📦 Installation
Currently available through direct git clone:
git clone https://github.com/StratusQuo/surrealdb.d.git
cd surrealdb.d
dub build
🐛 Bug Reports
Please report any issues on the GitHub issue tracker. When reporting bugs, please include:
- D compiler version
- Operating system
- Steps to reproduce
- Expected vs actual behavior
🤝 Contributing
Contributions are welcome! Areas where help is particularly appreciated:
- Bug fixes
- Documentation improvements
- Test cases
- Feature suggestions
- Performance improvements