3.2 KiB
3.2 KiB
Changelog
Document Purpose
This document tracks all notable changes to the Aniworld project.
What This Document Contains
- Version History: All released versions with dates
- Added Features: New functionality in each release
- Changed Features: Modifications to existing features
- Deprecated Features: Features marked for removal
- Removed Features: Features removed from the codebase
- Fixed Bugs: Bug fixes with issue references
- Security Fixes: Security-related changes
- Breaking Changes: Changes requiring user action
What This Document Does NOT Contain
- Internal refactoring details (unless user-facing)
- Commit-level changes
- Work-in-progress features
- Roadmap or planned features
Target Audience
- All users and stakeholders
- Operators planning upgrades
- Developers tracking changes
- Support personnel
Format
This changelog follows Keep a Changelog principles and adheres to Semantic Versioning.
Sections for Each Release
## [Version] - YYYY-MM-DD
### Added
- New features
### Changed
- Changes to existing functionality
### Deprecated
- Features that will be removed in future versions
### Removed
- Features removed in this release
### Fixed
- Bug fixes
### Security
- Security-related fixes
Unreleased
Changes that are in development but not yet released.
Added
- Enhanced Anime Add Flow: Automatic database persistence, targeted episode scanning, and folder creation with sanitized names
- Filesystem utility module (
src/server/utils/filesystem.py) withsanitize_folder_name(),is_safe_path(), andcreate_safe_folder()functions Serie.sanitized_folderproperty for generating filesystem-safe folder names from display namesSerieScanner.scan_single_series()method for targeted scanning of individual anime without full library rescan- Add series API response now includes
missing_episodeslist andtotal_missingcount - Database transaction support with
@transactionaldecorator andatomic()context manager - Transaction propagation modes (REQUIRED, REQUIRES_NEW, NESTED) for fine-grained control
- Savepoint support for nested transactions with partial rollback capability
TransactionManagerhelper class for manual transaction control- Bulk operations:
bulk_mark_downloaded,bulk_delete,clear_allfor batch processing rotate_sessionatomic operation for secure session rotation- Transaction utilities:
is_session_in_transaction,get_session_transaction_depth get_transactional_sessionfor sessions without auto-commit
Changed
QueueRepository.save_item()now uses atomic transactions for data consistencyQueueRepository.clear_all()now uses atomic transactions for all-or-nothing behavior- Service layer documentation updated to reflect transaction-aware design
Fixed
- Scan status indicator now correctly shows running state after page reload during active scan
- Improved reliability of process status updates in the UI header
Version History
To be documented as versions are released.