Releases: duartebarbosadev/PhotoSort
v1.3.1b
What's Changed
- Feat: AI refactor pipeline by @duartebarbosadev in #59
- refactor best shot engine handling and improve ETA calculations by @duartebarbosadev in #60
- feat: Implement navigation preferences for skipping singleton clusters and rating-based navigation by @duartebarbosadev in #61
- feat: Enhance release notes generation with optional tag input and workflow adjustments by @duartebarbosadev in #62
- refactor: Update Python version support and reorganize requirements files... by @duartebarbosadev in #63
Full Changelog: v1.2.0b...v1.3.1b
v1.2.0b
Release Notes for PhotoSort v1.2.0b
This release of PhotoSort introduces several enhancements and improvements, particularly in image processing and analysis. The focus has been on refining the BestPhotoSelector functionality, improving error handling, and ensuring compatibility with Python 3.12.
🚀 New Features
- Enhanced raw image processing in BestPhotoSelector with improved path normalization and preview handling (6b4c2ba).
- Updated keyboard shortcuts for analyzing best shots to align with the new keyboard layout (65cd156).
- Introduced local best shot constants and refactored eye openness estimation in BestPhotoSelector and BestShotPipeline (f1b1242).
- Added ETA calculation and formatting for progress updates in AI rating workers (9a01424).
- Enhanced AI rating process with device detection and image downscaling (d646ddd).
🔧 Improvements
- Updated test for mid-quality rating to reflect the correct expected value (8f87f90).
- Refactored quality normalization logic and improved error handling in the best shot pipeline (c7d69f3).
- Enhanced metric summary formatting and improved error logging in LocalBestShotStrategy (5fbba3a).
- Refactored image analysis in BestPhotoSelector and implemented parallel ranking in LocalBestShotStrategy (3bf07d1).
- Refactored ETA formatting functions for improved readability and consistency (c07400d).
- Added detailed logging for image analysis and eye state processing in BestPhotoSelector (3d5d9a5).
🐛 Bug Fixes
- No specific bug fixes were documented in this release.
⚠️ Breaking Changes
- No breaking changes were introduced in this release.
📚 Documentation
- Updated CI configuration and documentation for compatibility with Python 3.12 (8029569).
🏗️ Technical Changes
- Refactored best-shot model checker and dependency management (638dc74).
- Ran ruff for code quality improvements (0e611d9).
This release enhances the overall functionality and performance of PhotoSort, ensuring a more efficient photo management experience.
v1.1.0b
PhotoSort v1.1.0b Release Notes
PhotoSort v1.1.0b introduces several enhancements aimed at improving user experience and application performance. This release features new confirmation dialogs, best shot detection, and various optimizations and bug fixes.
🚀 New Features
- Confirmation Dialogs: Added confirmation dialogs for folder changes and marked deletions to prevent accidental actions. [PR #58]
- Best Shot Detection: Implemented a feature to automatically detect the best shot among multiple photos. [PR #57]
🔧 Improvements
- Clustering Accuracy: Adjusted the DBSCAN epsilon value to enhance clustering accuracy for image grouping. [d1c8cb9]
- UI Performance: Optimized UI thread blocking to improve responsiveness during operations. [PR #55]
- Parallel Processing: Implemented parallel processing for image rotation, significantly speeding up the rotation process. [PR #50]
🐛 Bug Fixes
- Thread Safety: Added thread safety to session initialization in the ModelRotationDetector to prevent potential issues during concurrent operations. [PR #54]
- Viewer Leak: Fixed a memory leak issue when switching from multi-selection to single selection in the viewer. [PR #51]
- macOS Dependencies: Updated the release build and README to include necessary macOS system dependencies for the installation of pyexiv2. [PR #53]
📚 Documentation
- Updated the README file to provide clearer instructions regarding macOS system dependencies for users installing pyexiv2. [PR #53]
🏗️ Technical Changes
- Refactored code to enhance maintainability and performance, including adjustments to the DBSCAN clustering algorithm and the implementation of parallel processing for image rotation.
These updates collectively enhance the functionality and reliability of PhotoSort, ensuring a smoother experience for users managing their photo collections.
v1.0.0b
PhotoSort Release Notes v1.0.0b
Summary
The v1.0.0b release of PhotoSort introduces several enhancements and bug fixes aimed at improving performance and user experience. Key updates include the implementation of background workers for various tasks and improvements to the Mac DMG release build.
🚀 New Features
-
Set Core Count on Async Tasks
Introduced functionality to set the core count for asynchronous tasks, optimizing performance based on user hardware capabilities. (PR #48) -
Speed & Performance via Background Workers
Added background workers for tasks such as rating writing and rotation application, allowing for smoother operation without blocking the main interface. (PR #47)
🔧 Improvements
- Mac DMG Release Build
Fixed issues related to the Mac DMG release build, ensuring a more reliable installation experience for macOS users. (PR #49)
🐛 Bug Fixes
- Release Notes Generator Update
Updated the release notes generator to include the 'created' event type and simplified tag resolution logic, enhancing the clarity and accuracy of release documentation. (Commit: aa1e65c)
🏗️ Technical Changes
- Refactor Release Notes Categories Order
Changed the order of categories in the release notes to improve readability and organization. (Commit: 41613d2)
These updates reflect ongoing efforts to enhance the functionality and reliability of PhotoSort, ensuring a better experience for all users.
v1.1.0a
Release Notes for PhotoSort v1.1.0a
This release introduces several enhancements, bug fixes, and technical improvements to the PhotoSort application, aimed at improving user experience and application performance.
🚀 New Features
- Update Checker Functionality: Implemented a new feature that allows the application to check for updates automatically, ensuring users are always informed about the latest versions available. This feature is tracked in PR #42.
🐛 Bug Fixes
- Splashscreen Logo Path Resolution: A function has been added to resolve the splashscreen logo path, fixing an issue where the splashscreen was not displaying any image. This fix is documented in PR #43.
- Fixed rotation & image context menu: A fix has been applied to resolve the freeze when the context menu was shown in the left panel or an image was rotated. PR #44
🔧 Improvements
- Image Rotation Enhancement: The ImageRotator has been updated to adopt a metadata-first rotation approach, which simplifies the image rotation process and improves performance. This change is part of the refactoring efforts in PR #44.
🏗️ Technical Changes
- Removal of macOS Intel Build Configuration: The configuration for building the application on macOS Intel has been removed to streamline the build process.
- Dependency Update: The jpegtran dependency has been removed, which reduces the overall complexity of the application.
These updates contribute to a more robust and user-friendly PhotoSort application, enhancing both functionality and performance.
v1.0.2a
PhotoSort v1.0.2a Release Notes
This release of PhotoSort introduces several enhancements, bug fixes, and technical improvements aimed at providing a better user experience and optimizing performance.
🚀 New Features
- Splashscreen & Lazy Loading: A new splashscreen has been implemented, alongside lazy loading for heavy dependencies to improve startup time and resource management. [PR #39]
- Windows CUDA Build: Support for CUDA on Windows has been added, enabling enhanced performance for users with compatible hardware. [PR #40]
- Versioning Support: Packaged builds now include versioning support, and the dialog manager has been updated to display the current version. [PR #37]
🐛 Bug Fixes
- Pyexiv2 Crash on Windows: Resolved a critical issue causing hard crashes related to Pyexiv2 on Windows systems. [PR #36]
- Hidden Import for Pyexiv2: Adjusted the PyInstaller build process to ensure the hidden import for Pyexiv2 is processed first, preventing potential runtime errors. [PR #35]
🔧 Improvements
- Shortcut Update: The keyboard shortcut for the blur detection action has been updated from
Ctrl+BtoB, streamlining the user experience. [PR #41] - About Window Performance: Refactored the About window to significantly reduce deployment time, enhancing overall application responsiveness. [PR #38]
- macOS Build Support: Enabled builds for both Intel and Apple Silicon architectures on macOS, broadening compatibility.
📚 Documentation
- Asset Images Update: New asset images for the keyboard layout and main window screenshot have been added to the README, improving visual documentation.
🏗️ Technical Changes
- Shell Type Specification: Specified the shell type for Python dependencies installation to ensure smoother setup processes.
- Runtime Hook Adjustment: Ensured that the 'src' directory is added to
sys.pathin the runtime hook and main script for better module resolution. - Release Build Configuration: Updated the release build configuration to enhance build processes and deployment.
This release focuses on improving the stability and usability of PhotoSort, ensuring that users can manage their photos more efficiently and effectively.
v1.0.1a
PhotoSort Release Notes - v1.0.1a
We're excited to announce the release of PhotoSort v1.0.1a! This update brings several enhancements to improve your experience with our photo management application, including new features and important improvements in functionality.
🚀 New Features
-
AI-powered Automatic Release Notes Generator: We have introduced a new automatic release notes generator that supports PR tracking and allows for manual triggering. This feature streamlines the documentation process and organizes the releases better. Thanks to enhancements made in PR #30, users can expect clearer and more concise release notes moving forward.
-
Application Icon Support: We’ve added support for an application icon in this release, making PhotoSort even more visually appealing on your desktop. This improvement was made possible through the updates in PR #31.
🔧 Improvements
-
Enhanced Release Notes Generation: The format and clarity of the release notes generation prompt have been improved, ensuring better output in Markdown format. These enhancements are part of our ongoing commitment to improve documentation quality (commit 89c1785).
-
Updated OpenAI Model: The default AI model has been upgraded to gpt-5-nano, allowing for better performance in automatic tasks and further improving overall application functionality (commit eb13a5a).
🏗️ Technical Changes
- Refactored Comment Formatting: Adjustments to the comment formatting have been made specifically for the release notes generation process. This change aims to enhance clarity and organization within our codebase (commit 0917f4c).
We appreciate your continued support and feedback as we work to make PhotoSort the leading photo management application. Stay tuned for more updates in future releases!
v1.0.0a
What's Changed
- Sideinfo by @duartebarbosadev in #1
- refactor: create menu manager and app controller out of main_window by @duartebarbosadev in #3
- Support for HEIC/HEIF files by @vitorjna in #4
- feat: Auto rotation detection by @duartebarbosadev in #5
- refactor: Ruff & MyPy code improvements by @duartebarbosadev in #6
- Refactor logging in UI components to use module-specific logger by @duartebarbosadev in #7
- feature: New keyboard shortcuts by @duartebarbosadev in #12
- Refactor: Centralize Hardcoded Variables into Configuration File by @Copilot in #9
- feat: Deletion confirmation dialog with previews by @duartebarbosadev in #13
- fix: Ability to select and view images in different similarity groups by @duartebarbosadev in #14
- fix: Enhance event filtering and rotation shortcuts in MainWindow by @duartebarbosadev in #15
- feature: Skip deleted images support on Mac and support for ctrl to j… by @duartebarbosadev in #16
- feat: Add arrow key navigation support for image browsing, including option… by @duartebarbosadev in #17
- Refactor: Ruff fixes for Python Linting and Formatting by @duartebarbosadev in #18
- Refactor: Mark for deletion rework by @duartebarbosadev in #19
- Refactor: Implement delete functionality with context menu in side by side view by @duartebarbosadev in #20
- Refactor: Add loading overlay and thumbnail preloading for delete confirmation dialogs by @duartebarbosadev in #21
- Refactor: Add close confirmation dialog for uncommitted deletions in … by @duartebarbosadev in #22
- Refactor: Fixed when images are commited, to select the next one. by @duartebarbosadev in #23
- Refactor - ctrl multi selection on arrow vs on click by @duartebarbosadev in #24
- Feature: Add CI workflow for linting, testing, and security scanning by @duartebarbosadev in #25
- refactor: Refactor main window by @duartebarbosadev in #26
- Refactor: Apply auto raw edit only on raw by default by @duartebarbosadev in #27
- Fix JPEG rotation fallback when jpegtran is unavailable and add CI support by @Copilot in #29
- Ci: build pyinstaller icons by @duartebarbosadev in #28
New Contributors
Full Changelog: https://github.com/duartebarbosadev/PhotoSort/commits/v1.0.0a