v0.1.1 update
This commit is contained in:
63
CHANGELOG.md
Normal file
63
CHANGELOG.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to Seismo Fleet Manager 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).
|
||||
|
||||
## [0.1.1] - 2025-12-02
|
||||
|
||||
### Added
|
||||
- **Roster Editing API**: Full CRUD operations for roster management
|
||||
- `POST /api/roster/add` - Add new units to roster
|
||||
- `POST /api/roster/set-deployed/{unit_id}` - Toggle deployment status
|
||||
- `POST /api/roster/set-retired/{unit_id}` - Toggle retired status
|
||||
- `POST /api/roster/set-note/{unit_id}` - Update unit notes
|
||||
- **CSV Import**: Bulk roster import functionality
|
||||
- `POST /api/roster/import-csv` - Import units from CSV file
|
||||
- Support for all roster fields: unit_id, unit_type, deployed, retired, note, project_id, location
|
||||
- Optional update_existing parameter to control duplicate handling
|
||||
- Detailed import summary with added/updated/skipped/error counts
|
||||
- **Enhanced Database Models**:
|
||||
- Added `project_id` field to RosterUnit model
|
||||
- Added `location` field to RosterUnit model
|
||||
- Added `last_updated` timestamp tracking
|
||||
- **Dashboard Enhancements**:
|
||||
- Separate views for Active, Benched, and Retired units
|
||||
- New endpoints: `/dashboard/active` and `/dashboard/benched`
|
||||
|
||||
### Fixed
|
||||
- Database session management bug in `emit_status_snapshot()`
|
||||
- Added `get_db_session()` helper function for direct session access
|
||||
- Implemented proper session cleanup with try/finally blocks
|
||||
- Database schema synchronization issues
|
||||
- Database now properly recreates when model changes are detected
|
||||
|
||||
### Changed
|
||||
- Updated RosterUnit model to include additional metadata fields
|
||||
- Improved error handling in CSV import with row-level error reporting
|
||||
- Enhanced snapshot service to properly manage database connections
|
||||
|
||||
### Technical Details
|
||||
- All roster editing endpoints use Form data for better HTML form compatibility
|
||||
- CSV import uses multipart/form-data for file uploads
|
||||
- Boolean fields in CSV accept: 'true', '1', 'yes' (case-insensitive)
|
||||
- Database sessions now properly closed to prevent connection leaks
|
||||
|
||||
## [0.1.0] - 2024-11-20
|
||||
|
||||
### Added
|
||||
- Initial release of Seismo Fleet Manager
|
||||
- FastAPI-based REST API for fleet management
|
||||
- SQLite database with SQLAlchemy ORM
|
||||
- Emitter reporting endpoints
|
||||
- Basic fleet status monitoring
|
||||
- Docker and Docker Compose support
|
||||
- Web-based dashboard with HTMX
|
||||
- Dark/light mode toggle
|
||||
- Interactive maps with Leaflet
|
||||
- Photo management per unit
|
||||
- Automated status categorization (OK/Pending/Missing)
|
||||
|
||||
[0.1.1]: https://github.com/yourusername/seismo-fleet-manager/compare/v0.1.0...v0.1.1
|
||||
[0.1.0]: https://github.com/yourusername/seismo-fleet-manager/releases/tag/v0.1.0
|
||||
Reference in New Issue
Block a user