czkawka/Changelog.md

36 KiB

Version 7.0.0 - 19.02.2024r

BREAKING CHANGES

  • Reducing size of cache files, made old cache files incompatible with new version
  • -C in CLI now saves as compact json

GTK GUI

  • Added drag&drop support for included/excluded folders - #1106
  • Added information where are saved scan results - #1102

CLI

  • Providing full static rust binary with Eyra - #1102
  • Fixed duplicated -c argument, now saving as compact json is handled via -C - #1153
  • Added scan progress bar - #1183
  • Clean and safe cancelling of scan - #1183
  • Unification of CLI arguments - #1183
  • Hardlink support for similar images/videos - #1201

Krokiet GUI

  • Initial release of new gui - #1102

Core

  • Using normal crossbeam channels instead of asyncio tokio channel - #1102
  • Fixed tool type when using progress of empty directories - #1102
  • Fixed missing json support when saving size and name duplicate results - #1102
  • Fix cross-compiled debug windows build - #1102
  • Added bigger stack size by default(fixes stack overflow in some musl apps) - #1102
  • Added optional libraw dependency(better single-core performance and support more raw files) - #1102
  • Speedup checking for wildcards and fix invalid recognizing long excluded items - #1152
  • Big speedup when searching for empty folders(especially with multithreading + cached FS schema) - #1152
  • Collecting files for scan can be a lot of faster due lazy file metadata gathering - #1152
  • Fixed recognizing not accessible folders as non-empty - #1152
  • Unifying code for collecting files to scan - #1159
  • Decrease memory usage when collecting files by removing unused fields in custom file entries structs - #1159
  • Decrease a little size of cache by few percents and improve loading/saving speed - #1159
  • Added ability to remove from scan files with excluded extensions - #1184
  • Fixed not showing in similar images results, files with same hashes when using reference folders - #1184
  • Optimize release binaries with LTO(~25/50% smaller, ~5/10% faster) - #1184

Version 6.1.0 - 15.10.2023r

  • BREAKING CHANGE - Changed cache saving method, deduplicated, optimized and simplified procedure(all files needs to be hashed again) - #1072, #1086
  • Remove up to 340ms of delay when waiting for results - #1070
  • Added logger with useful info when debugging app (level can be adjusted via e.g. RUST_LOG=debug env) - #1072, #1070
  • Core code cleanup - #1072, #1070, #1082
  • Updated list of bad extensions and support for finding invalid jar files - #1070
  • More default excluded items on Windows(like pagefile) - #1074
  • Unified printing/saving method to files/terminal and fixed some differences/bugs - #1082
  • Uses fun_time library to print how much functions take time - #1082
  • Added exporting results into json file format - #1083
  • Added new test/regression suite for CI - #1083
  • Added ability to use relative paths - #1083
  • Allowed removing similar images/videos/music from cli - #1087
  • Added info about saving/loading items to cache in duplicate and music mode - #1091
  • Fixed number of files to check in duplicate mode - #1091
  • Added support for qoi image format(without preview yet) - e92a
  • Fixed stability problem, that could remove invalid file in CLI - #1083
  • Fix Windows gui crashes by using gtk 4.6 instead 4.8 or 4.10 - #992
  • Fixed printing info about duplicated music files - #1016
  • Fixed printing info about duplicated video files - #1017

Version 6.0.0 - 11.06.2023r

  • Add finding similar audio files by content - #970
  • Allow to find duplicates by name/size at once - #956
  • Fix, simplify and speed up finding similar images - #983
  • Fixed bug when cache for music tags not worked - #970
  • Allow to set number of threads from CLI - #972
  • Fix problem with invalid item sorting in bad extensions mode - #972
  • Big refactor/cleaning of code - #956/#970/#972
  • Use builtin gtk webp loader for previews - #923
  • Fixed docker build - #947
  • Restore snap builds broken since GTk 4 port - #965
  • Instruction how to build native ARM64 binaries on Mac - #945/#971

Version 5.1.0 - 19.02.2023r

  • Added sort button - #894
  • Allow to set number of thread used to scan - #839
  • Faster similar images comparing with reference folders - #826
  • Update to clap 4 - #878
  • Use FileChooserNative instead FileChooserDialog - #894
  • Fix invalid music tags in music files when using reference folders - #894
  • Updated pdf dependency(a lot of less amount of broken pdf false positives) - #894
  • Changed strange PDF error message - "Try at" - #894
  • Treat extensions Mp4 and m4v as identical - #834
  • Improve thumbnail quality - #895
  • Verify if hardlinking works, and if not, disable button with proper message - #881
  • Apply some pydantic clippy lints on project - #901

Version 5.0.2 - 30.08.2022r

  • Fixed problem with missing some similar images when using similarity > 0 - #799
  • Prebuilt Linux binaries are compiled without heif support - 24b
  • Similar videos stops to proceed video after certain amount of time(fixes freezes) - #815
  • Add --version argument for czkawka_cli - #806
  • Rewrite a little nonsense message about minimal file size - #807

Version 5.0.1 - 03.08.2022r

  • Fixed problem with removing ending slash with empty disk window path - 975
  • Added to CLI bad extensions mode - #795
  • Restore default sorting method in CLI where finding biggest files - 5d7
  • Added tests to CI - #791
  • Show error message when all directories are set as reference folders - #795
  • Added more info about new requirements on Linux - #795

Version 5.0.0 - 28.07.2022r

  • GUI ported to use GTK 4 - #466
  • Use multithreading and improved algorithm to compare image hashes - #762
  • Resize preview with window - #466
  • Fix removing only one item from list view - #466
  • Fix showing help command in duplicate CLI mode - #720
  • Fix freeze when not choosing any tag in similar music mode - #732
  • Fix preview of files with non-lowercase extensions - #694
  • Read more tags from music files - #705
  • Improve checking for invalid extensions - #705, #747, #749
  • Support for finding invalid PDF files - #705
  • Re-enable checking for broken music files(libasound.so.2 no longer needed) - #705
  • Fix disabled ui when using invalid settings in similar music - #740
  • Speedup searching for invalid extensions - #740
  • Support for finding the smallest files - #741
  • Improved Windows CI - #749
  • Ability to check for broken files by types - #749
  • Add heif and Webp files support - #750
  • Use in CLI Clap library instead StructOpt - #759
  • Multiple directories can be added via Manual Add button - #782
  • Option to exclude files from other filesystems in GUI(Linux) - #776

Version 4.1.0 - 24.04.2022r

  • New mode - finding files whose content not match with their extension - #678
  • Builtin icons - no more invalid, theme/OS dependent icons - #659
  • Big(usually 2x) speedup of showing previews of images(both previews in scan and compare window) - #660
  • Fix selecting records by custom selection popup - #632
  • Support more tags when comparing music files - #590
  • Fix not proper selecting path - #656
  • No more popups during scan for similar videos on Windows - #656 - external change 4056
  • Custom selecting is now case-insensitive by default - #657
  • Better approximate comparison of tags - #641
  • Fix search problem due accumulated stop events - #623
  • Option to ignore other filesystems in Unix OS(for now only in CLI) - #673
  • Fix file hardlinking on Windows - #668
  • Support for case-insensitive name grouping of files - #669
  • Directories for search GUI can be passed by CLI - #677
  • Prevent from getting non respond app notification from display servers - #625

Version 4.0.0 - 20.01.2022r

  • Multithreading support for collecting files to check(2/3x speedup on 4 thread processor and SSD) - #502, #504
  • Add multiple translations - Polish, Italian, French, German, Russian ... - #469, #508, 5be
  • Add support for finding similar videos - #460
  • GUI code refactoring and search code unification - #462, #531
  • Fixed crash when trying to hard/symlink 0 files - #462
  • GTK 4 compatibility improvements for future change of toolkit - #467, #468, #473, #474, #503, #505
  • Change minimal supported OS to Ubuntu 20.04(needed by GTK) - #468
  • Increased performance by avoiding creating unnecessary image previews - #468
  • Improved performance due caching hash of broken/not supported images/videos = #471
  • Option to not remove cache from non-existent files(e.g. from unplugged pendrive) - #472
  • Add multiple tooltips with helpful messages - #472
  • Allow caching prehash - #477
  • Improve custom selecting of records(allows to use Rust regex) - #489
  • Remove support for finding zeroed files - #461
  • Remove HashMB mode - #476
  • Approximate comparison of music - #483
  • Enable column sorting for simple treeview - #487
  • Allow hiding upper panel - #491
  • Make UI take less space - #500
  • Add support for raw images(NEF, CR2, KDC...) - #532
  • Image compare performance and usability improvements - #529, #528, #530, #525
  • Reorganize(unify) saving/loading data from file - #524
  • Add "reference folders" - #516
  • Add cache for similar music files - #558

Version 3.3.1 - 22.11.2021r

  • Fix crash when moving buttons #457
  • Hide move button at start c9ca230

Version 3.3.0 - 20.11.2021r

  • Select files by pressing space key #415
  • Add additional info to printed errors #446
  • Add support for multiple image filters, hashes and sizes in similar images tool #447, #448
  • Button to move files/folders to provided location #449
  • Add non-clickable button to fix white theme #450
  • Fixed freeze when opening in same thread file/folder #448
  • Tool to check performance of different image filters and hash types and sizes #447
  • Add scheduled CI and pin it to support Rust 1.53.0 7bb, #431
  • Update snap file to use builtin rust plugin and update gnome extension 8f2
  • Disable from checking in similar images webp, gif, bmp, ico extension which caused crashes #445, 49e

Version 3.2.0 - 07.08.2021r

  • Use checkbox instead selection to select files #392
  • Re-enable hardlink on windows - #410
  • Fix symlink and hardlink creating - #409
  • Add image preview to duplicate finder #408
  • Add setting maximum file size #407
  • Add new grouping algorithm to similar images #405
  • Update to Rust 1.54 #400
  • Add webp support to similar images #396
  • Use GtkScale instead radio buttons for similarity #397
  • Update all dependencies #405, #395
  • Split UI into multiple files #391
  • Update to gtk-rs 0.14 #383
  • Fix bug with moving windows #361
  • Generate Minimal Appimage #339

Version 3.1.0 - 09.05.2021r

  • Clean README, by moving instructions to different files - 9aea6e9b
  • Fix excluded items on Windows - #324
  • Center windows and add missing settings icon - #323
  • Sort cache - #322
  • Add desktop file to Snap - 018d5bebb, ade2a756e2
  • Customize minimum file size of cached records - #321
  • Update benchmarks - 2044b9185
  • Rearrange Instruction - 8e7ac4a2d7f5b0
  • Add info that Czkawka and Bleachbit are not alternatives to each other - 30602a486
  • Fix crashes with too small message queue - #316
  • Fix a little unsorted results - #304
  • Fix Appimage(external bug) - #299
  • Fix error with saving results of name duplicates - #307
  • Update to Rust 1.5.1 - #302

Version 3.0.0 - 11.03.2021r

  • Option to not ignore hardlinks - #273
  • Hardlink support for GUI - #276
  • New settings window - #262
  • Unify file removing - #278
  • Dryrun in duplicates CLI - #277
  • Option to turn off cache - #263
  • Update Image dependency and fix crashes - #270, e3aca69
  • Add confirmation dialog when trying to remove all files in group - #281
  • Add confirmation dialog when removing files with delete key - #282
  • Open file when clicking at the Enter button - #285
  • Allow to put files to trash instead fully remove them - #284

Version 2.4.0 - 22.02.2021r

  • Add about dialog - #226
  • Remove checking for ico in similar images - #227
  • Change progress dialog to progress window - #229
  • Restore snap confinement - #218, 8dcb718
  • Add support for CRC32 and XXH3 hash - #243
  • Add delete method to replace duplicate files with hard links - #236
  • Add checking for broken music opt-in - #249
  • Allow to save to file similar images results - 10156ccfd3
  • Keep original file if replacing duplicate with hardlink fails - #256
  • Fix Windows theme - #265
  • Windows taskbar progress support - #264
  • Ignore duplicates if those are hard links - #234
  • Support the hash type parameter in the CLI - #267
  • Use one implementation for all hash calculations - #268
  • Disable for now broken tga and gif files - #270

Version 2.3.2 - 21.01.2021r

  • Add support for moving selection by keyboard to update similar image preview #223

This version is only needed to test flatpak build

Version 2.3.1 - 20.01.2021r

Version 2.3.0 - 15.01.2021r

  • Add cache for duplicate finder - #205
  • Add cache for broken files - #204
  • Decrease ram usage - #212
  • Add support for finding broken zip and audio files - #210
  • Sort Results by path where it is possible - #211
  • Add missing popover info for invalid symlinks - #209
  • Use the oldest available OS in Linux and Mac CI and the newest on Windows - #206
  • Add broken files support - #202
  • Remove save workaround and fix crashes when loading/saving cache - #200
  • Fix error when closing dialog progress by X - #199

Version 2.2.0 - 11.01.2021r

  • Adds Mac GUI - #160
  • Use master gtk plugin again - #179
  • Only show preview when 1 image is selected - #183
  • Add buffered write/read - #186
  • Fix included/excluded files which contains commas - #195
  • Move image cache to cache from config dir - #197
  • Reorganize GUI Code(no visible changes) - #184, #184, #189, #190, #194

Version 2.1.0 - 31.12.2020r

  • Hide preview when deleting images or symlinking it - #167
  • Add manual adding of directories - #165, #168
  • Add resizable top panel - #164
  • Add support for delete button - #159
  • Allow to select multiple entries in File Chooser - #154
  • Add cache support for similar images - #139
  • Add selecting images with its size - #138
  • Modernize popovers code and simplify later changes - #137

Version 2.0.0 - 23.12.2020r

  • Add Snap support - ee3d4
  • Select longer names by default - #113
  • Add setting for deletion confirmation dialog - #114
  • Add button to hide/show text view errors - #115
  • Remove console window in Windows - #116
  • Add custom selection/unselection - #117
  • Add Image preview to similar images - #118
  • Remove orbtk frontend - #119
  • Update Icon - #120
  • Add setting button to disable/enable previews(enabled by default) - #121
  • Add button to enable/disable in settings text view errors - #122
  • Add support for symbolic links - #123
  • Add support for checking for invalid symlinks - #124
  • Add new windows dark theme - #125
  • Fix appimage crash by adding PNG version of icon - #126
  • Split symlink path to two path and file name - #127
  • Add option to open folders by double right click - #128
  • Add minimal similarity level - #129
  • Show errors in image previewer when failed to generate it - #130
  • Added instruction - 58e6221a, 598aec345e, afaa402b

Version 1.5.1 - 08.12.2020r

  • Fix errors in progress bar caused by dividing by 0 - #109
  • Add option to save file, store settings and load them - #108
  • Center dialog to current window - a04

Version 1.5.0 - 02.12.2020r

  • Added progress bar - #106
  • Removed unused buttons - #107

Version 1.4.0 - 09.11.2020r

  • Multithreading Support to most modules - #98 #99 #100 #101
  • Simplify GUI code #96
  • Group similar images - #97
  • Add select buttons to each type of mode - #102
  • Fix GUI behavior in GUI when deleting similar image - #103
  • Add new similarity level - #104

Version 1.3.0 - 02.11.2020r

  • Appimage support - #77
  • Removed warnings about non-existed excluded directories - #79
  • Updated README - 8ec
  • Added pre hash support(speedup for searching big duplicates) - #83
  • Support for searching duplicates by file name - #84
  • Added support for checking for zeroed file - #88
  • Refactored GUI code to faster and safer changing/adding code - #89
  • Added some missing options to CLI in some modes - #90
  • Implemented finding duplicates by music tags - #95

Version 1.2.1 - 17.10.2020r

  • Make image similarity search significantly faster. #72
  • Improve similar images GUI a little and add sorting to Similarity Enum #73
  • Improve deleting files in Similar files in GUI #75

Version 1.2.0 - 15.10.2020r

  • Replace String with PathBuf for paths #59
  • Add test suite to PR #65
  • Support for finding similar images to CLI #66
  • Fix grammar-related errors and Ponglish expressions #62, #63
  • Don't delete by default files in duplicate finder in CLI - 23f203
  • Support for finding similar images to GUI #69
  • Add support for opening files/folders from GUI with double-click #70

Version 1.1.0 - 10.10.2020r

  • Windows support #58
  • Improve code quality/Simplify codebase #52
  • Fixed skipping some correct results in specific situations #52
  • Added support for searching in other thread #51
  • Divide CI across files #48
  • Added ability to stop task from GUI #55
  • Fixed removing directories which contains only empty directories from GUI #57

Version 1.0.1 - 06.10.2020r

  • Replaced default argument parser with StructOpt #37
  • Added all(except macOS GTK build) builds to CI where can be freely downloaded #41 #39
  • App can be downloaded also from Arch AUR and Cargo #36
  • Fixed crash with invalid file modification date #33
  • Upper tabs can hide and show when this is necessary #38
  • Fixed crash when file/folder name have non Unicode character #44
  • Added support for finding similar pictures in GUI #69

Version 1.0.0 - 02.10.2020r

  • Added confirmation dialog to delete button
  • Updated Readme
  • Tested a lot app, so I think that it version 1.0.0 can be freely released

Version 0.1.4 - 01.10.2020r

  • Fixes -f default argument
  • Added save button to GUI
  • Cleaned a little code
  • Deleting files and folders i GUI
  • Support for all notebooks items in GUI
  • Support for deleting and adding directories to search and to exclude in GUI
  • Support for light themes in GUI
  • Changed SystemTime to u64 from EPOCH_TIME
  • Selective selecting of rows duplicate finder in GUI
  • Changed minimum version of GTK to 3.22
  • Added save system to GUI
  • Added Big, Temporary and Empty folders finder to GUI

Version 0.1.3 - 27.09.2020r

  • Big code refactoring - now is a lot of easier create new modules and maintain old ones
  • Added finding empty files
  • Added new option to find duplicates by checking hash max 1MB of file
  • Added support for finding temporary folder finder
  • Improved README
  • Simplify CLI help and improve it

Version 0.1.2 - 26.09.2020r

  • Add basic search empty folders in GTK GUI
  • Remember place where button are placed
  • Read and parse more values from GUI
  • Print errors/warnings/messages to text field in GUI
  • Add upper notebook with included, excluded directories, items and extensions
  • Improve a little GUI
  • Add version argument which print version e.g. czkawka_gui --version
  • Simple Empty folder support in GUI
  • The biggest files support in CLI

Version 0.1.1 - 20.09.2020r

  • Added images to readme
  • Better GTK buttons and glade file
  • Basic search in GTK
  • Cleaned core from println
  • Core functions doesn't use now process::exit(everything is done with help of messages/errors/warnings)
  • Added support for non-recursive search
  • Improved finding number and size of duplicated files
  • Saving results to file
  • Print how much data was read by duplicate finder(debug only)
  • Added GitHub CI
  • Only debug build prints debug information's
  • Clean code
  • Add basic idea config to misc folder

Version 0.1.0 - 07.09.2020r

  • Initial Version
  • Duplicate file finder
  • Empty folder finder
  • Very WIP Orbtk GUI frontend
  • Basic GTK Frontend(without any logic)
  • CLI

Initial commit - 26.08.2020r