What's New in v1.0.2:
Major Features & UI Polish
- Per-File Target Sizes: The "Target Size" dropdown has been removed from the global options and moved directly into the individual file rows. You can now set specific size constraints (e.g. 10MB for Discord) on a file-by-file basis!
- Rich Drag & Drop Feedback: The dropzone now actively responds when you hover files over it with a glowing border, an animated icon, and a "Release to add" text shift so you know exactly when it's safe to drop.
- Buttery "Clear All" Transitions: Fixed a ghost-click bug and completely rebuilt the queue-clear animation to be 100% seamless when resetting the app to its empty state.
- Clearer Progress States: Added an "Analyzing..." state while files are being probed, and a pulsing indeterminate "Compressing..." progress bar for instantaneous tasks (like Image and PDF compression).
- Live Squeeze Button Counts: The main Squeeze button now updates in real-time to show exactly how many files are currently processing (e.g., Squeezing 2/5...).
- Preview Modal File Sizes: The visual slider modal now explicitly displays the exact file sizes directly beneath the "Before" and "After" labels for instant validation.
Smarter Logic & Compression
- "Already Optimal" Detection: If compressing a file would actually make it larger, Smol intelligently aborts and explicitly labels the file as "Already optimal" in the queue.
- Smarter Presets: The "Lossless" preset has been removed from video encoding, as it resulted in files often larger than the original. It remains perfectly functional for audio and images.
- Pure Compression Focus: Stripped out image format conversion options (To JPEG, To WebP, etc.). Smol now stays true to its identity: doing one thing perfectly by making your original files smaller without altering their formats.
- Instant Inline Retry: Hitting the retry button on a failed job now instantly restarts its entire pipeline in the background with a single click—no need to hit the main Squeeze button again.
Stability & Bug Fixes
- Crash Recovery & Stability: Added a robust top-level Error Boundary. If Smol ever encounters an unexpected error, it will now gracefully present a "Restart Smol" screen rather than failing to a blank white window.
- Maximized Window Fix: Fixed an issue where the app would accidentally show scrollbars when maximized on Windows 11.
- Codebase cleanup & Linting: Strict adherence to Rust best practices; all
unwrap()calls removed for total crash prevention. - CI Pipeline Fixes: Removed conflicting workspace configurations that caused automated builds to fail, ensuring 100% reliable
.exegeneration. - Contribution History Cleanup: Added a Git
.mailmapto merge all AI-generated commits back into the author's profile for a clean repository history.