77 lines
2.7 KiB
Markdown
77 lines
2.7 KiB
Markdown
|
|
# Changelog
|
||
|
|
|
||
|
|
All notable changes to this project will be documented in this file.
|
||
|
|
|
||
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||
|
|
|
||
|
|
## [Unreleased]
|
||
|
|
|
||
|
|
### Added
|
||
|
|
|
||
|
|
### Changed
|
||
|
|
|
||
|
|
### Fixed
|
||
|
|
|
||
|
|
## [0.26.0] - 2025-07-30
|
||
|
|
|
||
|
|
### Added
|
||
|
|
- Organized documentation structure with docs/ directory
|
||
|
|
- Proper CHANGELOG.md for release management
|
||
|
|
- Statistics optimizations implemented across all storage adapters
|
||
|
|
- In-memory caching of statistics data
|
||
|
|
- Batched updates with adaptive flush timing
|
||
|
|
- Time-based partitioning for statistics files
|
||
|
|
- Error handling and retry mechanisms for statistics operations
|
||
|
|
|
||
|
|
### Changed
|
||
|
|
- Moved technical documentation to docs/technical/
|
||
|
|
- Moved development documentation to docs/development/
|
||
|
|
- Moved guides to docs/guides/
|
||
|
|
- Archived temporary documentation files
|
||
|
|
- Refactored BaseStorageAdapter to include shared optimizations
|
||
|
|
- Updated FileSystemStorage, MemoryStorage, and OPFSStorage with new statistics handling
|
||
|
|
- Improved performance through reduced storage operations
|
||
|
|
- Enhanced scalability with time-based partitioning
|
||
|
|
|
||
|
|
### Fixed
|
||
|
|
- Fixed FileSystemStorage constructor path operations issue where path module was used before being fully loaded
|
||
|
|
- Deferred path operations to init() method when path module is guaranteed to be available
|
||
|
|
- Resolved "Cannot read properties of undefined (reading 'join')" error
|
||
|
|
|
||
|
|
### Technical Details
|
||
|
|
- Added `scheduleBatchUpdate()` and `flushStatistics()` methods to BaseStorageAdapter
|
||
|
|
- Updated core statistics methods: `saveStatistics()`, `getStatistics()`, `incrementStatistic()`, `decrementStatistic()`, and `updateHnswIndexSize()`
|
||
|
|
- Maintained backward compatibility with legacy statistics files
|
||
|
|
- Added fallback mechanisms for multiple storage locations
|
||
|
|
|
||
|
|
## [Previous Versions]
|
||
|
|
|
||
|
|
For detailed implementation notes and technical summaries of previous versions, see:
|
||
|
|
- `docs/technical/` - Technical documentation and analysis
|
||
|
|
- `archive/` - Archived change logs and summaries
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## How to Update This Changelog
|
||
|
|
|
||
|
|
When making changes to the project:
|
||
|
|
|
||
|
|
1. Add new entries under `[Unreleased]` section
|
||
|
|
2. Use the following categories:
|
||
|
|
- `Added` for new features
|
||
|
|
- `Changed` for changes in existing functionality
|
||
|
|
- `Deprecated` for soon-to-be removed features
|
||
|
|
- `Removed` for now removed features
|
||
|
|
- `Fixed` for any bug fixes
|
||
|
|
- `Security` for vulnerability fixes
|
||
|
|
|
||
|
|
3. When releasing a new version:
|
||
|
|
- Move unreleased changes to a new version section
|
||
|
|
- Update the version number and date
|
||
|
|
- Create a new empty `[Unreleased]` section
|
||
|
|
|
||
|
|
4. Link to GitHub releases: `[0.26.0] - 2025-07-28` format
|
||
|
|
5. Keep entries concise but informative for users
|
||
|
|
6. Include technical details in a separate subsection if needed
|