Peter Blackson
db47e8b711
Use DirTraversal for empty folders ( #544 )
2 years ago
Peter Blackson
51df63b8ea
Implement DirTraversal ( #531 )
...
* Implement DirTraversal
* rustfmt
* Fix for options
* Fix entries
* Fix symlinks
* Fix other entry type
2 years ago
Rafał Mikrut
0f0e7a338f
[WIP] Add raw images support ( #532 )
...
* Add raw images support
* Potato
* Update
2 years ago
Rafał Mikrut
de964ce40d
Handle image crashes ( #530 )
...
* Don't crash when checking images
* Don't crash when checking images
* Don't crash when checking images
* HERE
* REME
* REE
2 years ago
Rafał Mikrut
382f12acb3
Fast compare option ( #529 )
2 years ago
Rafał Mikrut
7da578fa7f
Optimize a little image compare algorithm ( #528 )
...
* Split checking images at 2 functions
* Optimize a little image finding
* 1.54.0 farawell
2 years ago
Rafał Mikrut
d8dc176e63
Small changes and fixes
2 years ago
Rafał Mikrut
1f5fca3f46
Add new step to check progress of comparing images. ( #525 )
...
Fix empty loaded items in e.g. Excluded Directories.
Fix bug with non-loading proper image results
2 years ago
Rafał Mikrut
c4f26883b1
Add reference folders ( #516 )
...
* Add reference folder
* Basic tree view cleaning
* Computations
* Similar Images
* Muzyka i Wideo
* Podwójne dwa razy, cztery razy!
* Rozmiar i Nazwa
* Spanko i działanko(przynajmniej zdaje mi się że działa)
* Translatanko
2 years ago
Rafał Mikrut
5db5d17afb
Use max line length 180 instead 250 ( #515 )
...
This was a little too big value.
I don't like too much too small values, because code looks ugly.
2 years ago
Rafał Mikrut
fbb25c31b8
Ignore ascii non alphabetic characters in approximate search ( #513 )
2 years ago
Rafał Mikrut
0a924d2355
Improve translations ( #507 )
...
* Improve translations
* Imports
2 years ago
Rafał Mikrut
c8ade1fb0f
Use system language when available ( #506 )
...
* Use system language when available
* Use clippy nightly
2 years ago
Rafał Mikrut
619e64466c
More GTK4 compatibility fixes ( #503 )
...
* Don't create new treeview
* Dont
* ABC
* Detlaff
* Update
2 years ago
Rafał Mikrut
cf668d02a7
Implement threaded search in rest of modes(except empty folders) ( #504 )
...
* Implement threaded search in rest of modes(except empty folders)
* Add more tools in gui to use allowed extension
* Change progress window to modal
* Nazair
* Clippy
2 years ago
Peter Blackson
859e01b30e
Parallel BFS with Rayon ( #502 )
...
* Tester
* Parallel BFS with Rayon
* Rustfmt
* Refactor code
* Use `extend` instead of `append`
* Remove no longer needed derives
2 years ago
Rafał Mikrut
c041ab416e
Better ignore same size files ( #501 )
2 years ago
Rafał Mikrut
975b285c1f
Make UI take less space ( #500 )
2 years ago
Rafał Mikrut
89f24f14b5
Use translated strings in more places ( #498 )
2 years ago
Rafał Mikrut
77a48ca6aa
Add support for translations ( #469 )
...
* Reformat code with idea tool
* Pierwsza działająca wersja tłumaczeń
* Działa? I dobrze, bo ma działać
* Ćma szła i się potkła
* Ściął śmiałek źółty rząd pąków.
2 years ago
Rafał Mikrut
5f774e03bd
Add button to ignore images with non unique size. ( #493 )
...
This will help with finding different images(non 1:1 which could be easily found by duplicate finder tool)
2 years ago
Rafał Mikrut
a8aa8a2a23
Multiple small changes ( #490 )
2 years ago
Farmadupe
88b8f11e07
Cache vidoes with serde to avoid forked vid_dup_finder_lib ( #486 )
...
* Cache vidoes with serde to avoid forked vid_dup_finder_lib
* Fix clippy lint.
* Replace json serialization with bincode for videos
2 years ago
Rafał Mikrut
5296e1c708
Better comparison of music tags ( #485 )
2 years ago
Rafał Mikrut
ce3d86fd4e
Approximate comparison of music ( #483 )
2 years ago
Rafał Mikrut
f334bd6975
Add better custom selecting ( #479 )
2 years ago
Rafał Mikrut
bb428171cb
Add better custom selecting ( #478 )
2 years ago
Rafał Mikrut
1fd53b854b
Add prehash cache support ( #477 )
2 years ago
Rafał Mikrut
51271dcdf0
Remove HashMB mode ( #476 )
...
* Remove HashMB mode
* Add some explanation and remove this from GUI
* Not needing to handle everything
2 years ago
Rafał Mikrut
4871016a3c
Add option to not remove outdated cache entries ( #472 )
...
* Add option to not remove outdated cache entries
* Default duplicates cache size lowered to 512 KB
* Add some tooltips,
Add logic to opening cache/config folders
* Add option to clear cache files from outdated results(manually)
3 years ago
Rafał Mikrut
f2333b9df2
Save to cache info about broken, too short etc. images and videos ( #471 )
3 years ago
Rafał Mikrut
cf2e822435
Reformat code with idea tool
3 years ago
Rafał Mikrut
b7e4eaccaf
Modified include organization
3 years ago
Rafał Mikrut
d302c3b2d8
Update cache creating
3 years ago
Rafał Mikrut
78b49dee3d
Remove support for zeroed files ( #461 )
3 years ago
Rafał Mikrut
29129d3ec0
Support for finding similar videos ( #460 )
...
* Add support for similar videos to CLI
* Add GUI support for similar videos
* Video duplicates
* git_dup
* Documentation
3 years ago
Rafał Mikrut
4a202633ee
Release 3.3.1
3 years ago
Rafał Mikrut
9d28fb8a59
Release 3.3.0
3 years ago
Rafał Mikrut
052711bb4b
Add button for moving files/folders to choosen folder ( #449 )
...
* Add button for moving files/folders to choosen folder
* Add support for moving folders to other locations
3 years ago
Rafał Mikrut
49effca169
Disable partially supported webp<
...
Disable unrecognized pnm files
3 years ago
Rafał Mikrut
96e7af0d25
Add support for multiple hashes in similar images to GUI ( #448 )
...
* Add support for multiple hashes in similar images to GUI
* Needs a little more testing
* General fixes
3 years ago
Rafał Mikrut
20c89f44f0
Adds support for multiple hashes type and size in similar images, resize formats and also test to check performacne ( #447 )
3 years ago
Rafał Mikrut
742139379c
Add better errors explanation(native from libraries) ( #446 )
3 years ago
Rafał Mikrut
dc8c14ea3c
Disable crashing image extensions ( #445 )
...
Bump minimal Rust to 1.53.0
Update Packages
3 years ago
Rafał Mikrut
243505b692
Release 3.2.0
3 years ago
Rafał Mikrut
a92a113714
Add maximum file size ( #407 )
...
* Add maximum file size
* Add maximum file size
3 years ago
Rafał Mikrut
909967dcd8
Update BKtree and blake3 and add new grouping algorithm ( #405 )
...
* Update BKtree and blake3
* Add new algorithm for similar images
* Improve algorithm of grouping similar images
3 years ago
Rafał Mikrut
da76f75e11
Update Rust to 1.54 ( #400 )
3 years ago
tecome
a342ddfba7
Add webp support to similar images ( #396 )
3 years ago
Rafał Mikrut
0e9b8a1651
Use GtkScale instead radio buttons for similarity ( #397 )
...
* Use GtkScale instead radio buttons for similarity
* Fixes
3 years ago
Rafał Mikrut
a623f2be00
Update all dependencies except trash which don't crosscompile on Windows ( #395 )
...
* Update all dependencies except trash which don't crosscompile on Windows
3 years ago
Rafał Mikrut
b5f8d6b028
Update to gtk-rs 0.14 ( #383 )
...
* Update to Gtk-rs 0.14
3 years ago
Rafał Mikrut
237d879f03
Release 3.1.0
3 years ago
Rafał Mikrut
cc0dcc2714
Fix excluded items on Windows ( #324 )
3 years ago
Rafał Mikrut
4fc8655272
Sort cache and allow to optimize later other code ( #322 )
3 years ago
Rafał Mikrut
b08cedd5a6
Allow to set minimal file size to caching ( #321 )
3 years ago
Rafał Mikrut
775b6b4f10
Fix crashes with too small message queue ( #316 )
3 years ago
Rafał Mikrut
0fa6692d39
Fix error with saving results of name duplicates ( #307 )
3 years ago
Rafał Mikrut
50ad3f9873
Update to Rust 1.5.1 ( #302 )
3 years ago
Rafał Mikrut
ce8161fd7e
Release 3.0.0
3 years ago
Douman
67a07f1f98
Use xxhash-rust >=0.8.2 to avoid bug in stateful implementation ( #283 )
3 years ago
Rafał Mikrut
0bbe9fe4a3
Revert "Disable for now broken tga and gif files ( #270 )"
...
This reverts commit 87f5ca63
3 years ago
Rafał Mikrut
17f97bd958
Add option to turn off cache ( #263 )
3 years ago
Thomas Andreas Jung
1d904a858e
Dryrun for duplicates ( #277 )
...
```
czkawka_cli dup --dryrun -d $(pwd)/folder -m1 -D aen
Found 2 duplicated files in 1 groups with same content which took 2 B:
Size - 2 B (2) - 2 files
/home/thomas/Development/czkawka/folder/a
/home/thomas/Development/czkawka/folder/b
----
-------------------------------MESSAGES--------------------------------
Delete /home/thomas/Development/czkawka/folder/a
Delete /home/thomas/Development/czkawka/folder/b
---------------------------END OF MESSAGES-----------------------------
```
3 years ago
Thomas Andreas Jung
ed7b197100
Use one implementation for all duplicate file removales ( #278 )
3 years ago
Rafał Mikrut
13add1cbed
Add hardlinking support for GUI ( #276 )
3 years ago
Rafał Mikrut
4c770b582b
Add option to not ignore hard links ( #273 )
3 years ago
Rafał Mikrut
7ea0126525
Release 2.4.0
3 years ago
Rafał Mikrut
87f5ca63b9
Disable for now broken tga and gif files ( #270 )
3 years ago
Thomas Andreas Jung
e3457edab2
Use one implementation for all hash calculations ( #268 )
...
All implementations are the same they only differ by hasher and the file read
limit.
3 years ago
Thomas Andreas Jung
1e94587de8
Ignore duplicates if those are hard links ( #234 )
...
This is a proof of concept.
```
$ echo a > hardlinks/a
$ cp hardlinks/{a,b}
$ ln hardlinks/{a,c}
$ cargo run --bin czkawka_cli dup -m 1 --directories $(pwd)/hardlinks -f /dev/stderr > /dev/null
-------------------------------------------------Files with same hashes-------------------------------------------------
Found 1 duplicated files which in 1 groups which takes 2 B.
---- Size 2 B (2) - 2 files
/home/thomas/Development/czkawka/hardlinks/a
/home/thomas/Development/czkawka/hardlinks/b
```
Open:
- Windows support
- Probably this should be a cli option
3 years ago
Thomas Andreas Jung
03d41e173f
Keep original file if replacing duplicate with hardlink fails ( #253 )
...
If the user could not create a hard link (due to permissions or
different block devices) then czkawka lost the duplicate file.
```
$ mkdir hardlink
$ cd hardlink
$ echo a > a
$ cp a b
$ chown thetestuser:thetestuser a
$ ls -il .
25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb 7 11:18 a
25169641 -rw-rw-r-- 1 thomas thomas 2 Feb 7 11:18 b
$ cargo run --bin czkawka_cli dup --directories $(pwd) -m 1 -f
test101.result --delete-method HARD
[...]
-------------------------------WARNINGS--------------------------------
Failed to link /home/thomas/Development/czkawka/hardlink/b ->
/home/thomas/Development/czkawka/hardlink/a
---------------------------END OF WARNINGS-----------------------------
$ ls -il .
25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb 7 11:18 a
```
Now czkawka keeps all files and the warning provides more information
why czkawka can't replace the duplicate with a hard link.
```
$ cargo run --bin czkawka_cli dup --directories $(pwd) -m 1 -f
test101.result --delete-method HARD
-------------------------------WARNINGS--------------------------------
Failed to link /home/thomas/Development/czkawka/hardlink/b ->
/home/thomas/Development/czkawka/hardlink/a (Operation not permitted (os
error 1))
---------------------------END OF WARNINGS-----------------------------
[...]
25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb 7 11:18 a
25169641 -rw-rw-r-- 1 thomas thomas 2 Feb 7 11:18 b
```
3 years ago
Rafał Mikrut
10156ccfd3
Uncomment code about saving similar images result to file
3 years ago
Rafał Mikrut
df44f9c342
Update list of checked images ( #252 )
3 years ago
Rafał Mikrut
9bb574235a
Add checking for broken music opt-in ( #249 )
3 years ago
Thomas Andreas Jung
3ffa55b008
Add delete method to replace duplicate files with hard links ( #236 )
...
This results in the same space saving but keeps the "deleted" files around.
$ mkdir hardlink
$ cd hardlink
$ echo a > a
$ cp a b
$ ln a c
$ touch -t 01010000 a
$ ls -il --time-style=full-iso .
25169323 -rw-rw-r-- 2 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 a
25169558 -rw-rw-r-- 1 thomas thomas 2 2021-01-31 18:11:08.298161098 +0100 b
25169323 -rw-rw-r-- 2 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 c
$ czkawka_cli dup --directories $(pwd)/hardlink -m 1 -f hardlink.result --delete-method HARD
$ ls --time-style=full-iso -li hardlink
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 a
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 b
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 c
3 years ago
Rafał Mikrut
9f3da0e70f
Add support for CRC32 and XXH3 hash ( #243 )
3 years ago
Rafał Mikrut
7d8334bb0c
Add template for multiple hashes ( #240 )
3 years ago
Rafał Mikrut
b8049efe62
Remove checking for ico in similar images ( #227 )
3 years ago
Rafał Mikrut
49ddc041ee
Add about dialog ( #226 )
3 years ago
Rafał Mikrut
bb7bf12354
Release 2.3.2
3 years ago
Rafał Mikrut
69090755df
Release 2.3.1
3 years ago
Rafał Mikrut
943f8f78f1
Release 2.3.0
3 years ago
Rafał Mikrut
e1beaeed28
Decrease ram usage ( #212 )
3 years ago
Rafał Mikrut
cc8d42e0ff
Add support for finding broken zip and audio files ( #210 )
3 years ago
Rafał Mikrut
7ec665ab7a
Add cache for duplicate ( #205 )
3 years ago
Rafał Mikrut
6e89bcb507
Add cache for broken files ( #204 )
3 years ago
Rafał Mikrut
eeaaea20cc
Add broken files support ( #202 )
3 years ago
Rafał Mikrut
1a011644bf
Remove save workaround and fix crashes ( #200 )
3 years ago
Rafał Mikrut
da4bdd19e2
Release 2.2.0
3 years ago
Rafał Mikrut
80bbc9ba85
Move image cache to cache from config dir ( #197 )
3 years ago
Rafał Mikrut
7992ba30de
Fix included/excluded files which contains commas ( #195 )
3 years ago
Rafał Mikrut
9975605f75
Add buffered write/read ( #186 )
3 years ago
Rafał Mikrut
3adbfdc5b6
Remove some debug variables ( #185 )
3 years ago
Rafał Mikrut
8d4a264c6d
Use master gtk plugin again ( #179 )
...
* Use master gtk plugin again
3 years ago
Rafał Mikrut
72d74dd8e2
Adds Mac GUI ( #160 )
...
* Adds Mac GUI
* Update Rust to 1.4.9
3 years ago
Rafał Mikrut
4eefe114dd
Release 2.1.0
3 years ago
Rafał Mikrut
083db7aa51
Add manual adding of directories ( #165 )
3 years ago
Rafał Mikrut
10c32c90c0
Add support for delete button ( #159 )
3 years ago
Rafał Mikrut
33545dfa22
Fix using empty hash ( #140 )
3 years ago
Rafał Mikrut
3f333e7ceb
Add cache support for similar images ( #139 )
3 years ago
Rafał Mikrut
123bba381f
Release 2.0.0
3 years ago
Rafał Mikrut
05c8153b1a
Add more default excluded items
3 years ago
Rafał Mikrut
880787a67f
Show errors in image previewer when failed to generate it ( #130 )
3 years ago
Rafał Mikrut
5672431257
Add minimal similarity level ( #129 )
3 years ago
Rafał Mikrut
4e3a6f63fe
Add new windows dark theme ( #125 )
3 years ago
Rafał Mikrut
1d59199bb2
Add support for checking for invalid symlinks ( #124 )
3 years ago
Rafał Mikrut
40f981dcd3
Add custom selection/unselection ( #117 )
3 years ago
Rafał Mikrut
f0f3073f94
Release version 1.5.1
3 years ago
Rafał Mikrut
e6a6e5567b
Release 1.5.0
4 years ago
Rafał Mikrut
7ac4a26229
Add progress bar ( #106 )
4 years ago
Rafał Mikrut
4dfb960e85
Small cosmetic changes to readme and similar images
...
Also added support for m4a music tags
4 years ago
Rafał Mikrut
c62617df30
Release 1.4.0
4 years ago
Rafał Mikrut
29a0716be5
Add very small similarity level to finding similar images, add option to choose level from CLI, fix bug with duplicated entries in similar pictures ( #104 )
4 years ago
Rafał Mikrut
88d47e49cf
Add select for all modes ( #102 )
4 years ago
Rafał Mikrut
3e61544ec4
Add support for multithreading to zeroed files ( #101 )
4 years ago
Rafał Mikrut
f359905ebc
Add support for multithreading in duplicate finder ( #100 )
4 years ago
Rafał Mikrut
31e35576ec
Add support for multithreading to finding same music ( #99 )
4 years ago
Rafał Mikrut
2f72dd9d19
Add multithread support to similar image finder ( #98 )
4 years ago
Rafał Mikrut
110d6015bc
Similar images improvements: ( #97 )
...
Headers without data
By default only checking for High Similarity(faster search)
4 years ago
Rafał Mikrut
5d4f4db8c1
Simplify some GUI code ( #96 )
4 years ago
Rafał Mikrut
1fb66b32f0
Release version 1.3.0
4 years ago
Rafał Mikrut
ecebb3a1af
Implement finding duplicated music by tags/artist/year etc. ( #95 )
4 years ago
Rafał Mikrut
8ba780ded6
Add missing options in some modes ( #90 )
4 years ago
Rafał Mikrut
777ac50f07
Add support for checking for zeroed files ( #88 )
4 years ago
Rafał Mikrut
7112ff6b92
Add support for checking same file names ( #84 )
4 years ago
Rafał Mikrut
d996c3c46b
Add pre hash check ( #83 )
4 years ago
Rafał Mikrut
4d90e3170e
Remove warnings about non existent directories in Windows ( #79 )
4 years ago
Rafał Mikrut
2326072222
Release version 1.2.1
4 years ago
Rafał Mikrut
beb14f9f1d
Improve similar images GUI a little and add sorting to Similarity Enum ( #73 )
4 years ago
Syfaro
a55fe3de9a
Make image similarity search significantly faster. ( #72 )
4 years ago
Rafał Mikrut
d2c7398bdd
Release version 1.2.0
4 years ago
Rafał Mikrut
1178e145ae
Add similar images support for GUI ( #69 )
4 years ago
Rafał Mikrut
3dd203f246
Add support for finding similar images to CLI ( #66 )
4 years ago
Dariusz Niedoba
acfecd7ca3
Replace String with PathBuf for paths ( #59 )
4 years ago
Rafał Mikrut
67a775beff
Release version 1.1
4 years ago
Rafał Mikrut
d015b305f2
Add Windows support ( #58 )
4 years ago
Rafał Mikrut
8bbb12c7d4
Add ability to stop task from GUI ( #55 )
4 years ago
Caduser2020
085da0369e
Improve code quality. ( #52 )
...
* Remove verbose constructs in core.
* Use self and const fn where appropriate.
* Remove needless borrows.
* Fix name in function arguments.
* Merge 'master' into quality
* Decrease function complexity.
* Run fmt.
* Fix clippy.
* Fix duplicate extension files.
* Fix excluded items.
* Fix allowed extensions (Part 2).
* Fix temporary files.
4 years ago
Rafał Mikrut
be30afdac6
Add support for searching in other thread ( #51 )
4 years ago
Rafał Mikrut
1a87a69116
Fixes some typos
4 years ago
Rafał Mikrut
71353823e7
Update version to 1.0.1
4 years ago
Rafał Mikrut
3b63798751
Don't crash when found file name which is not valid Unicode
4 years ago
Rafał Mikrut
8d263fdff2
Minimal file size in duplicate finder should be always greater than 0
4 years ago
Rafał Mikrut
a0c99ab14b
Don't crash when modified time of file is before unix epoch
4 years ago
Stefan Seering
1829d19b28
Switch to automatic updates for the program version.
4 years ago
Rafał Mikrut
8d824036b2
Release 1.0.0 version
4 years ago
Rafał Mikrut
d3652c1e86
Updated README.md
4 years ago
Rafał Mikrut
d7529cb64b
Added support for Big, Temporary and empty file finder in GUI
4 years ago
Rafał Mikrut
7a1a9ea9f6
Change SystemTime to u64
4 years ago