|
| 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 | +## [1.0.0] - 2025-07-07 |
| 9 | + |
| 10 | +### Added |
| 11 | +- Initial release of JsonFileCRUD |
| 12 | +- Complete CRUD operations (Create, Read, Update, Delete) |
| 13 | +- Auto-ID assignment with duplicate prevention |
| 14 | +- Configurable ID fields (default: 'id') |
| 15 | +- Thread-safe operations with automatic queuing |
| 16 | +- Comprehensive error handling and validation |
| 17 | +- Zero external dependencies |
| 18 | +- Full ESM (ES modules) support |
| 19 | +- Comprehensive test suite with 35 tests |
| 20 | +- Practical usage examples: |
| 21 | + - Basic CRUD operations |
| 22 | + - Advanced features with concurrent operations |
| 23 | + - User management system example |
| 24 | +- Complete API documentation |
| 25 | +- Contributing guidelines with improvement ideas |
| 26 | + |
| 27 | +### Features |
| 28 | +- **create(item, callback)** - Create new items with auto-ID |
| 29 | +- **readAll(callback)** - Read all items from file |
| 30 | +- **findById(id, callback)** - Find item by ID |
| 31 | +- **findBy(filterFn, callback)** - Find items by custom filter |
| 32 | +- **update(id, data, callback)** - Update existing items |
| 33 | +- **delete(id, callback)** - Delete items by ID |
| 34 | +- **count(callback)** - Get total item count |
| 35 | +- **writeAll(items, callback)** - Replace all data |
| 36 | + |
| 37 | +### Performance |
| 38 | +- Optimized for small to medium datasets (up to ~10,000 items) |
| 39 | +- Sequential operations prevent race conditions |
| 40 | +- Automatic file creation on first write |
| 41 | +- Memory-efficient data handling |
| 42 | + |
| 43 | +### Documentation |
| 44 | +- Complete README with API reference |
| 45 | +- Multiple practical examples |
| 46 | +- Error handling guide |
| 47 | +- Performance considerations |
| 48 | +- Contributing guidelines |
| 49 | + |
| 50 | +## [Unreleased] |
| 51 | + |
| 52 | +### Future Improvements |
| 53 | +- TypeScript support with .d.ts files |
| 54 | +- Promise-based API (async/await) |
| 55 | +- Batch operations (createMany, updateMany, deleteMany) |
| 56 | +- File locking for multi-process safety |
| 57 | +- Enhanced documentation and examples |
0 commit comments