3.7 KiB
3.7 KiB
[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, and this project adheres to Semantic Versioning.
[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
- Update version in
src/webdrop_bridge/config.py(APP_VERSION) - Update CHANGELOG.md with new features/fixes
- Commit:
git commit -m "chore: Bump version to X.Y.Z" - Tag:
git tag -a vX.Y.Z -m "Release version X.Y.Z" - Push:
git push upstream vX.Y.Z - 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)