github fcorbelli/zpaqfranz 55.10
Windows 32/64 binary

latest releases: 64.2, 64.1, 63.8...
3 years ago

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/;

A bit of source refactoring (newer Linux compiler), some comments deleted

Improved non arm64 and x86+SSE2 (aka: "Intel) support by -NOJIT

Download zpaqfranz

Don't miss a new zpaqfranz release

NewReleases is sending notifications on new releases.