New switch -recursion (on a add command)
Do not recurse into subdirs
zpaqfranz a z:\1.zpaq f:\zarc\*.* -norecursion
When add() with comment, check for not-unique comment
C:\zpaqfranz>zpaqfranz a z:\1.zpaq *.txt -comment "onlytext"
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
(...)
0.032 seconds (00:00:00) (all OK)
Now the same comment
C:\zpaqfranz>zpaqfranz a z:\1.zpaq *.txt -comment "onlytext"
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
(...)
38579: version comment must be unique, aborting <<onlytext>>
0.016 seconds (00:00:00) (with errors)
Improved -comment handling on l (list)
C:\zpaqfranz>zpaqfranz l z:\1.zpaq -comment
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
franz:-comment <<>>
z:/1.zpaq:
2 versions, 22 files, 171 fragments, 6 blocks, 951.004 bytes (928.71 KB)
Version(s) enumerator
00000001 <<onlytext>>
00000002 <<thecpp>>
0.000 seconds (00:00:00) (all OK)
C:\zpaqfranz>zpaqfranz l z:\1.zpaq -comment "thecpp"
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
franz:-comment <<thecpp>>
z:/1.zpaq:
2 versions, 22 files, 171 fragments, 6 blocks, 951.004 bytes (928.71 KB)
Version(s) enumerator
00000002 <<thecpp>>
Found version -until 2 scanning again...
z:/1.zpaq -until 2:
2 versions, 22 files, 171 fragments, 6 blocks, 951.004 bytes (928.71 KB)
(...)
Improved comment on i (info command)
C:\zpaqfranz>zpaqfranz i z:\1.zpaq -comment
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
franz:-comment <<>>
z:/1.zpaq:
2 versions, 22 files, 171 fragments, 6 blocks, 951.004 bytes (928.71 KB)
-------------------------------------------------------------------------
< Ver > < date > < time > < added > <removed> < bytes added >
-------------------------------------------------------------------------
00000001 2022-08-14 16:26:16 +00000004 -00000001 -> 12.497 <<onlytext>>
00000002 2022-08-14 16:27:33 +00000018 -00000001 -> 938.507 <<thecpp>>
0.015 seconds (00:00:00) (all OK)
utf command reworked
Check/sanitize utf-8 charsets in folder / filenames
Check (dry run by default)
C:\zpaqfranz>zpaqfranz utf z:\kekke
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
Fix UTF-8 dry run (because no -kill)
UTF-8 dirs: 157
UTF-8 files: 6.564
LONG files: 1
*** WINDOWS WARNING *** found long path. Suggestion: use -longpath switch
4.828 seconds (000:00:04) (all OK)
Fix (look at -longpath on Windows)
zpaqfranz utf z:\kekke -kill -longpath
b (benchmark) -debug
Quick-and-dirty test for checking compatibility with "non Intel" (aka arm, PowerPC etc) CPU. Not reliable at 100% (BIG ENDIANs are hard to find)
C:\zpaqfranz>release\55_10\zpaqfranzhw b -debug
zpaqfranz v55.10-experimental (HW BLAKE3,SHA1), SFX64 v55.1, compiled Aug 14 2022
franz:DEBUG very verbose (-debug)
Autotest for main hash functions
Iteration 0/9 chunksize 1.000.000
CPU feature 001F
Iteration 1/9 chunksize 333.333
Iteration 2/9 chunksize 111.111
(...)
Iteration 9/9 chunksize 50
This seems a LITTLE ENDIAN CPU (aka:'normal')
BLAKE3 : OK
(...)
XXHASH64 : OK
Time 25.89 seconds for bytes 1.748.003.691
25.921 seconds (000:00:25) (all OK)
e (extract) filenames only
Recreating the file tree, without unpacking the archive. It serves - essentially - to check that non-Latin files that are too long /forbidden can be restored on a regular basis
C:\zpaqfranz>zpaqfranz x stazz.zpaq -to z:\testdir\ -debug -kill -zero -longpath
zpaqfranz v55.10i-experimental archiver, SFX64 v55.1, compiled Aug 14 2022
(...)
****** WARNING: -zero switch. Create 0 bytes files on filesystem
****** Full-scale extraction test (UTF-8 strange filenames, path too long...)
****** Highly suggested output on RAMDISK
stazz.zpaq:
1 versions, 515.646 files, 1 fragments, 6.446 blocks, 13.255.059 bytes (12.64 MB)
32152: -longpath and ONE to: deal with rename()
Extracting 0 bytes (0.00 B) in 480.594 files (35.052 folders) with 32 threads
**** CREATING FILES AND FOLDER STRUCTURE *****
**** EXTRACTIBILITY TEST (ON FILESYSTEM) *****
(...)
Start counting... done in 0.23s
Folders 35.052 (long 6)
Files 480.594 (long 4.069)
Done 515K / 515.646
Time 42.69s
Total 515.646
Folders 35.052
Files 480.594
Errors 0
49.953 seconds (000:00:49) (all OK)
33040: call xcommand with a different errorcode (not 1, not 2) 0
switch -out works (almost) everywhere
It is possible to redirect output with -out
zpaqfranz a z:\1.zpaq *.txt -out thelog.txt
switch -silent to "cut off" output
Fix space check on Linux
A long-standing "bug" that reports 0 bytes free
Switch -to into command q (Windows' C: copy)
For example with
-to c:\snap_$PCNAME
it is possible to archive multiple different PCs on a single backup (same VM templates etc)
Switch -frugal cut off more folders
During q/g commands (Windows C) -frugal cuts more folders
- /ProgramData/Microsoft/Windows Defender/;
- /ProgramData/Microsoft/Search/;
- /ProgramData/Package Cache/;