## [0.1.0] - 2026-01-30 ### Added ### Changed ### Fixed # Changelog All notable changes to WebDrop Bridge 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). ## [1.0.0] - 2026-01-28 ### Added - **Core Features** - Qt6-based desktop application for web-to-file drag-and-drop - PySide6 integration with WebEngine for embedded browser - Path validation and security with whitelist-based access control - Drag-and-drop event interception and handling - Real-time drag state monitoring - **UI/UX** - Professional main window with toolbar navigation - Restricted web view with URL whitelist enforcement - Kiosk-mode support (restricted browsing) - Beautiful default welcome page for unconfigured instances - Responsive layout with proper window management - **Configuration** - Environment-based configuration system (.env file support) - Configurable allowed root directories for file access - URL whitelist with wildcard support (*.example.com) - Window size and appearance settings - Logging level and output control - **Logging & Monitoring** - Structured logging with INFO, DEBUG, ERROR levels - Optional file-based logging - Comprehensive error messages and diagnostics - Application startup and shutdown logging - **Build & Distribution** - PyInstaller configuration for Windows and macOS - Standalone executable generation (195.7 MB for Windows) - Dependency bundling (PySide6, Qt6, Chromium) - Resource embedding (webapp, icons, stylesheets) - Cross-platform support (Windows .exe, macOS .dmg) - **Testing & Quality** - 99 unit and integration tests - 84% code coverage - Ruff linting and Black code formatting - mypy type checking - Comprehensive test fixtures and mocking - **CI/CD** - Forgejo Actions workflow for automated builds - Windows executable build on tag push - macOS DMG build on tag push - SHA256 checksum generation - Automatic release creation on Forgejo - **Documentation** - Comprehensive API documentation with docstrings - Architecture documentation (ARCHITECTURE.md) - Development plan (DEVELOPMENT_PLAN.md) - Setup and quickstart guides - Contributing guidelines ### Technical Details - **Language**: Python 3.13 - **Framework**: PySide6 6.10.1 (Qt6) - **Web Engine**: Qt6 WebEngine with Chromium - **Build Tool**: PyInstaller 6.18.0 - **Testing**: pytest with coverage - **Linting**: Ruff + Black ### Known Limitations - Requires .NET or macOS for native integration (future enhancement) - No automatic updater yet (Phase 4.1) - No multi-window support (Phase 4.2) - Requires configuration for custom web applications ## [Unreleased] ### Planned for Phase 4 - **Auto-Update System** with Forgejo integration - **Enhanced Logging** with monitoring dashboard - **Advanced Configuration** UI - **User Documentation** and tutorials - **Code Signing** for Windows MSI - **Apple Notarization** for macOS DMG --- ## Version Numbering - **MAJOR**: Significant feature additions or breaking changes - **MINOR**: New features, backward compatible - **PATCH**: Bug fixes, improvements Example: `1.0.0` = Version 1, Release 0, Patch 0 ## Release Process 1. Update version in `src/webdrop_bridge/config.py` (APP_VERSION) 2. Update CHANGELOG.md with new features/fixes 3. Commit: `git commit -m "chore: Bump version to X.Y.Z"` 4. Tag: `git tag -a vX.Y.Z -m "Release version X.Y.Z"` 5. Push: `git push upstream vX.Y.Z` 6. Forgejo Actions automatically builds and creates release --- **Current Version**: 1.0.0 (Released 2026-01-28) **Next Version**: 1.1.0 (Planned with auto-update system)