|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), |
| 6 | +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +## [Unreleased] |
| 9 | + |
| 10 | +## [1.0.0a1] - 2025-10-08 |
| 11 | + |
| 12 | +### Added |
| 13 | + |
| 14 | +#### Core Features |
| 15 | +- Full entity CRUD operations (create, read, update, delete, extend) |
| 16 | +- Simplified `Arkiv()` client with auto-managed local node and default account |
| 17 | +- Web3.py compatibility layer - drop-in replacement for Web3 client |
| 18 | +- Type-safe API with comprehensive type hints and mypy strict mode |
| 19 | +- Named account management for multi-account workflows |
| 20 | +- Provider builder for easy connection setup (localhost, Kaolin testnet, custom) |
| 21 | + |
| 22 | +#### Entity Management |
| 23 | +- Create entities with payload, annotations, and expiration |
| 24 | +- Update entity payload and annotations |
| 25 | +- Extend entity lifetime with additional blocks |
| 26 | +- Delete entities |
| 27 | +- Bulk operations support for all CRUD operations |
| 28 | +- Entity existence checking |
| 29 | +- Field projections (payload, annotations, metadata) |
| 30 | + |
| 31 | +#### Querying & Events |
| 32 | +- Query support for filtering entities by annotations |
| 33 | +- Event watching: EntityCreated, EntityUpdated, EntityDeleted, EntityExtended |
| 34 | +- Filter management with automatic cleanup |
| 35 | +- Block-based event subscription (latest, specific block numbers) |
| 36 | + |
| 37 | +#### Developer Experience |
| 38 | +- Automatic local node management with Docker/testcontainers |
| 39 | +- Auto-funded test accounts on local nodes |
| 40 | +- Comprehensive error handling with typed exceptions |
| 41 | +- 214 passing tests with 100% critical path coverage |
| 42 | +- Developer documentation with examples |
| 43 | +- USE_CASES.md with 7 concrete use cases for Arkiv |
| 44 | +- Dev container configuration for VS Code |
| 45 | +- Pre-commit hooks for code quality |
| 46 | + |
| 47 | +#### Documentation |
| 48 | +- Comprehensive README with quickstart guide |
| 49 | +- API documentation with examples |
| 50 | +- Architecture overview |
| 51 | +- Development guide |
| 52 | +- Use case examples (NFTs, Gaming, Social, DAOs, DeFi, Supply Chain, AI/ML) |
| 53 | + |
| 54 | +### Technical Details |
| 55 | +- Python 3.12+ required |
| 56 | +- Web3.py 7.13.0 integration |
| 57 | +- UV package manager support |
| 58 | +- Ruff linting and formatting |
| 59 | +- MyPy strict type checking |
| 60 | +- Pytest with parallel test execution |
| 61 | + |
| 62 | +### Notes |
| 63 | +- This is an alpha release (1.0.0a1) - API may change before 1.0.0 stable |
| 64 | +- Replaces the previous 0.x SDK with a complete rewrite |
| 65 | +- Production use not recommended until 1.0.0 stable release |
| 66 | + |
| 67 | +[Unreleased]: https://github.com/Arkiv-Network/arkiv-sdk-python/compare/v1.0.0a1...HEAD |
| 68 | +[1.0.0a1]: https://github.com/Arkiv-Network/arkiv-sdk-python/releases/tag/v1.0.0a1 |
0 commit comments