Releases: Parchive/par2cmdline
v1.1.1
What's Changed
- Cleanup/std namespace search replace oops by @BlackIkeEagle in #261
- Migrate Windows unit tests to Visual C++ projects by @animetosho in #262
- fix garbled errormessage on windows by @BlackIkeEagle in #263
- add .clangd file for additional editor lsp support by @BlackIkeEagle in #265
- Integer definitions consistency by @BlackIkeEagle in #266
- version 1.1.1 by @BlackIkeEagle in #267
Full Changelog: https://github.com/Parchive/par2cmdline/blob/v1.1.1/ChangeLog
v1.1.0
What's Changed
- Strip MacOS binary by @animetosho in #213
- Add armhf Linux build by @animetosho in #214
- fix manpage typ0 by @jcfp in #217
- tests/utf8_test is generated before running tests, not needed in dist by @BlackIkeEagle in #218
- Replace deprecated sprintf with snprintf by @Coeur in #221
- Remove unused code by @Coeur in #223
- Fix README not found by @Coeur in #224
- Reduce the minimum supported macOS version and add a universal macOS binary by @mnightingale in #226
- Update COPYING with the latest GPL v2 license by @tjanez in #229
- Fix memory leak. by @p-p-3 in #236
- Add thread guards in diskfile by @BlackIkeEagle in #237
- show defaults in help output and man by @BlackIkeEagle in #238
- create symlinks for the long form manpages as well by @BlackIkeEagle in #239
- calculate size in diskfile unittest to avoid bufferoverflow by @BlackIkeEagle in #240
- Build warnings by @BlackIkeEagle in #241
- remove the use of
using namespace std;by @BlackIkeEagle in #242 - Issue 184 by @BlackIkeEagle in #243
- POC for a rename only mode by @sjpotter in #185
- Cleanup unused by @BlackIkeEagle in #245
- remove define of stat or _stat by @BlackIkeEagle in #246
- add freebsd ci check by @BlackIkeEagle in #247
- repack test tarballs with tar --owner=0 --group=0 by @BlackIkeEagle in #249
- Windows unicode issues by @BlackIkeEagle in #250
- diskfile CreateParentDirectory, take rootpath behaviour into account by @BlackIkeEagle in #251
- remove obsolete autoconf macro AC_HEADER_STDC by @BlackIkeEagle in #252
- Fix symbolic links as primary file. by @p-p-3 in #254
- use native ubuntu cross building instead of gha-ubuntu-cross by @BlackIkeEagle in #255
- add dependabot check for github actions updates by @BlackIkeEagle in #257
- Windows integration testing by @BlackIkeEagle in #256
- Bump actions/upload-artifact from 4 to 6 by @dependabot[bot] in #258
- Bump actions/checkout from 4 to 6 by @dependabot[bot] in #259
- Version 1.1.0 by @BlackIkeEagle in #260
New Contributors
- @Coeur made their first contribution in #221
- @mnightingale made their first contribution in #226
- @tjanez made their first contribution in #229
- @p-p-3 made their first contribution in #236
- @sjpotter made their first contribution in #185
- @dependabot[bot] made their first contribution in #258
Full Changelog: https://github.com/Parchive/par2cmdline/blob/v1.1.0/ChangeLog
v1.0.0
What's Changed
- quote 'which wine' in tests to avoid syntax errors by @jcfp in #142
- Fix for Github issue #143. Test did not account for endianness correctly. by @mdnahas in #144
- fix: allow single char filename by @jaki in #149
- fix: enforce -qq silent by @jaki in #148
- Install relative symlinks instead of absolute ones by @martymac in #153
- Replacement for Pull request 158 by @mdnahas in #161
- Minor cleanup by @a1346054 in #162
- fix win32 directory recursion by @jamesmoore in #168
- CRC32/MD5 optimisations by @animetosho in #177
- Avoid copying back memory in FileChecksummer when data is valid by @animetosho in #179
- enable Recurse flag on Windows OS by @Yutaka-Sawada in #182
- add exitcodes to manfile by @BlackIkeEagle in #199
- Updates from turbo by @BlackIkeEagle in #197
- Issue 150 recursive no files from rootpath by @BlackIkeEagle in #201
- Issue 128 by @BlackIkeEagle in #200
- editorconfig setup by @BlackIkeEagle in #198
- Quick bail if the base par2 file already exists by @BlackIkeEagle in #203
- Issue 113 by @BlackIkeEagle in #204
- github workflows by @BlackIkeEagle in #206
- When number of recovery files is set, you get "File already exists" by @BlackIkeEagle in #207
- Issue 189 windows utf8 by @BlackIkeEagle in #202
- Workflow release by @BlackIkeEagle in #209
- Add simple "permissions" check while creating by @BlackIkeEagle in #210
- diskfile, replace stat use with lstat by @BlackIkeEagle in #211
- Macos build by @BlackIkeEagle in #212
Release Info
Support:
* #146: build fails in Cygwin
* #140: A potential Data Race
* #151: Understanding par2cmdline performance
* #129: Understanding The Par2 Spec and par2cmdline
* #163: performance with hundreds of small files
* #166: A better error correcting code
* #157: Recover impossible without a .par2 "main" file?
* #172: Thread count option not shown on Arm based Mac version
* #178: Increase block count limit 32768
* #112: Behaviour with insufficient read permissions
* #79: Help to create a compatible implementation!
* #171: Flag for automatic Blocksize in commandline
* #121: Repair-Files created amount to size twice as high as expected from redundancy
* #175: New release?
Issues:
* #141: syntax error in tests (fixed with PR #142)
* #143: test failure in unit_tests on s390x, powerpc (fixed with PR #144)
* #145: Core dump on single letter file name (duplicate: #192, #165) (fixed with PR #149)
* #41: prepare code and header files for libpar2 (e4e449f)
* #169: Windows version always recurse into subdirectories (duplicate: #173, #111) (fixed with PR #182)
* #193: config.guess timestamp = 2015-03-04 ... time for a newer version? (83bb249)
* #190: Cannot recover one-bit flip (duplicate #156?) (fixed with PR #179)
* #120: exit codes from par2 executable not documented? (improved with PR #199)
* #126: Problem with PACKED little-endian structs (4a4179f)
* #150: Recurse option (-R) does not include files in current directory (more documenation)
* #128: Problem with empty (0 Bytes) files. (workaround via PR #200)
* #152: Fail earlier during creation if the .par2 file already exists (basic check in PR #203)
* #113: Hang with -n=256 (limited in PR #204)
* #205: Could not create "./Disk 1 (a-m)/.PAR2 (Recovery Disk 1)/disk1.vol34529+00000.par2": File already exists. (6c2fa05)
* #189: Properly handle UTF8 and long-paths on Windows (implemented by @dnzbk for nzbget, rebased in PR #202)
* #186: It would be nice if permissions were checked eariler when creating parchive. (basic check in PR #210)
* #164: need option to disable following symlinks on "-R" (fixed in PR #211)
* #208: Version 1.0.0
PRs:
* #148: fix: enforce -qq silent
* #153: Install relative symlinks instead of absolute ones
* #161: Allow Creating Files With Over 100% Redundancy (new PR from #158)
* #162: Minor cleanup
* #168: fix win32 directory recursion
* #179: Avoid copying back memory in FileChecksummer when data is valid
* #177: CRC32/MD5 optimisations
* #182: enable Recurse flag on Windows OS
* #198: enable Recurse flag on Windows OS
* #199: add exitcodes to manfile
* #201: Issue 150 recursive no files from rootpath
* #197: Updates from turbo
* #200: Issue 128
* #203: Quick bail if the base par2 file already exists
* #204: Issue 113
* #206: github workflows
* #207: When number of recovery files is set, you get "File already exists"
* #202: Issue 189 windows utf8
* #209: Workflow release
* #210: Add simple "permissions" check while creating
* #211: diskfile, replace stat use with lstat
Skipped:
* #7: command line flags can not be chained
* #91: make use of appveyor for windows
* #191: Update diskfile.cpp
* #155: Travis-ci: added support for ppc64le
* #194: Avoid copying back memory in FileChecksummer when data is valid (superseeded by #202)
* #176: Added support for GPU acceleration (CUDA) on recovery file creation.
New Contributors
- @jaki made their first contribution in #149
- @martymac made their first contribution in #153
- @a1346054 made their first contribution in #162
- @jamesmoore made their first contribution in #168
- @animetosho made their first contribution in #177
- @Yutaka-Sawada made their first contribution in #182
Full Changelog: https://github.com/Parchive/par2cmdline/blob/v1.0.0/ChangeLog
v0.8.1: par2cmdline 0.8.1
=================
BlackEagle (3):
Add .DELETE_ON_ERROR to avoid corrupt files in workdir
split release scripts a bit because win stuff is not build on the same machine as *nix stuff anymore
bump 0.8.1
Ike Devolder (3):
Merge pull request #131 from mdnahas/master
Merge pull request #132 from mdnahas/library_dev
Merge pull request #134 from mdnahas/long_read_write
Michael Nahas (70):
BUG FIX: ^= operator was returning wrong value for powers of 1
.gitignore now ignores emacs backup files
FIX: typos, comments, indentation
Added unit tests for 5 classes
Changed all output to use parameters, rather than global variables.
Set chunksize to zero, in unspecified case
all commandline errors are first in par2creator::Process
moved reference to commandline to top of parXrepairer
removed largest file and total file size from commandline class
Removed ExtraFile::FileSize method --- this slows things slightly.
Convered ExtraFile to just a string.
grouped commandline options by operation
Added my name to list of authors
added the most common usage as an example
move num-of-threads setting code out of commandline
added links to websites explaining CRC operations
Moved NoiseLevel out of CommandLine
remove duplicate code in par2cmdline.cpp
Moved par1repairer into a function call
Moved par2repairer into a function call
Moved par2creator into a function call
Moved filethreads out of commandline.h/cpp
removed ExtraFile from commandline.h/cpp
removed ExtraFileIterator from commandline.h/cpp
Split up CommandLine::Parse soo I can move stuff in
Reordered checks in commandline.cpp to match order of variable declarations
Moved computation of blocksize into commandline.cpp
BUG FIX: when changed nthreads, forgot to add OPENMP #ifdef around it
Moved redundnacy calculation out of par2creator into commandline
FEATURE: On Linux, adjusts buffer sizes to half the memory of the system
commandline now treats argv aas const char * const *, for easier testing.
unit tests for CommandLine.Parse(), plus bug fixes to it.
Changed code to support a par2lib static library
DANGEROUS: Moved ifdefs from par2cmdline.h into par2lib.h
FEATURE: Created libpar2, a static library for par2.
Added unit tests for diskfile
BUG FIX: DiskFile::Delete() now sets 'exists' to false
BUG FIX: getting physical memory now works for OSX
DANGEROUS: Changed WIN32 to _WIN32 or _MSC_VER
merged code for ComputeRecoveryFileCount into libpar2
Added output to tests, to see they had done something.
BUG FIX - SQUASH - did not ifdef OPEN_MP around thread code
TEST FIX: newline were expanding into two chars on Windows
Added test for DiskFile::Create when file already exists
BUG FIX: DiskFile::Create now returns error when file already exists
BUG FIX: Should now implement Par2 standard for filenames
Test scripts now use .exe and wine, if exe exists
TEST FIX: Some tests did not return 1 on error.
DANGEROUS, BUG FIX: Fixed most things found by cppcheck
BUG FIX: fixed memory leak by FindFiles using std::unique_ptr
FEATURE: Modified test scripts to support valgrind
Changes made so that it compiles on OSX High Sierra
Uncommented line for AM_PROG_AR in configure.ac; needed for Windows
g++ is now forced to use C++ version 2011
Added ar-lib to .gitignore
Unit tests are now run in WINE and with Valgrind
BUILD FIX: Added tests/unit_tests to Makefile.am dist
Added sorting to CriticalPackets, for consistent output
Updated copyright information with my name
Added notes on Cppcheck, Valgrind, MinGW, and WINE to ROADMAP
Added information on WINEPATH variable to ROADMAP file
Made all unit tests look similar and say FAILED/SUCCESS
fixed typo in test
BUG FIX: Version was compared against opNone.
New Visual C++ project file, thanks to Anime Tosho
BUG FIX: had introduced bug handling Unicode. Reverted change.
Changed types to size_t to satisfy Microsoft compiler
Support file I/O on blocksize greater than 4GB
Merge pull request #135 from rwtodd/master
Merge pull request #136 from rwtodd/master
Richard Todd (4):
Used _stati64() for WIN32 DiskFile::FileExists()
Added par2cmdline.h to par2cmdline.cpp for DEBUG_NEW
fixed 'need signed i for openmp' errors on Windows
Renamed par2cmdline.h to libpar2internal.h.
v0.8.0: par2cmdline 0.8.0
=================
BlackEagle (2):
disable clang for now, travis has issues finding libomp.so
bump 0.8.0
Ike Devolder (3):
Merge pull request #116 from Parchive/mttesting
Merge pull request #117 from Safihre/mttesting
Merge pull request #119 from Parchive/mttesting
Jussi Kansanen (6):
Parallelize by processing multiple files simultaneously.
Repairer code cleanup: combine two loops.
Removed separate "-T1" printing for OpenMP. Use unified progress line printing for all thread counts.
Changed some of parallel loops to dynamic scheduling, resulting in better performance (with certain type of filesets).
More accurate printing while verifying.
Update man pages.
Safihre (1):
Tweak wording for new -T option
v0.7.4: par2cmdline 0.7.4
=================
BlackEagle (1):
bump 0.7.4
Jussi Kansanen (2):
Fix printing in debug mode
Improve progress line printing when scanning extrafiles.
par2cmdline v0.7.3
==================
BlackEagle (2):
copy pasted to much in aliasing fix
bump 0.7.3
Ike Devolder (1):
Merge pull request #110 from Parchive/windows
v0.7.2: par2cmdline 0.7.2
=================
BlackEagle (10):
build/release, fix typo, I have zcat, not gzcat
windows binaries size improvements, see #94
use all flags for tar in tests
automake.sh must be included in the dist files, fixes #104
build-win* use -s flag for gcc then we don't need strip anymore, #94
remove some mingw gcc warnings in diskfile
make sure u32 definition is consistent
DWORD is long unsigned int so change format to %lu
first get pointer then get low and high offset, 'fixes' gcc -Wstrict-aliasing warning
bump 0.7.2
Ike Devolder (2):
Merge pull request #106 from Parchive/windows
Merge pull request #107 from Parchive/windows
SanityChecker (1):
Fix test scripts to support whitespace in project path. (#105)
v0.7.1: par2cmdline 0.7.1
=================
BlackEagle (17):
add tests to reproduce issue #93
make basepath behaviour consistent during create and repair/verify
add OpenMP OMP_NUM_THREADS for better OpenMP testing
remove files that are generated by autotools, credits to rdiez for pointing that out
automake.sh :: show all warnings and fail on error
travis :: add the distcheck for more extensive checking
make sure tests 22, 23 and 24 can be run concurrently
add test that does exactly what is described in issue #93
ignore runtest folders
test27, cleanup correctly
enhanced tests to allow check, distcheck, ...
more "fixing" of tests
automake.sh :: use set -e instead of the whole series to make script work in all posix shells
allow cross compiling for windows using mingw-w64 by adding config.h if its defined
add build helper scripts
par1repairersourcefile, bitwise mask to make sure chars are in ascii range
bump 0.7.1
Ike Devolder (2):
Merge pull request #99 from Parchive/issue-96
Merge pull request #100 from Parchive/windows
v0.7.0
======
Alexander Hamann (2):
Fix spelling
Improve documentation wording and consistency
BlackEagle (45):
par2repairer.cpp :: indentation fixes for easier reading
add collision testfiles
remove status=none where dd is used in tests
add travis
travis: linux and osx
test21: check if we can create par2 files outside the basedirectory
basepath is now where par2 is run, par2 files can be stored everywhere
updated test16 to check if there are datafiles outside of the basepath
fix tests definition in the tests
added test21 to the TESTS
don't use realpath its not available by default
cleanup writing of tests logfiles
test16: forgot to add extra .. before par2
test16: fixed some stupidities, logfile wrong + grep if there are actually files ignored
add tests where par2 is executed outside the datapath
commandline :: use stricmp instead of string and ==
make sure we get the correct behaviour in the 'bup' tests
allow setting basepath and fix some tests
make sure the *.log files are written correctly for test2{2..4}
invert -N behaviour, -N now enables skipping
Merge branch 'master' of https://github.com/jkansanen/par2cmdline-mt into par2cmdline-mt
updated par2cmdline naming and confirm multithreaded merge
move source in src and man in man
Commandline::SetParFilename :: move al the checking in the method and fail on false result
add [DEBUG] prefix to debug output and move it somewhat
use threading to generate sliding window for crc
fix markdown readme formatting
manually updated paths for visual studio
updated the visualstudio project
windows configuration for OpenMP and x86 and x64
fixes windows OpenMP error related to unsigned variables
testMem, do full leak check and show all leaks
'fix' indentation of Makefile.am
crc, oops, made i of too small type
calculate file length only once for comparison and use
reduce some i64 u32 conversion warnings
get rid of some annoying windows build warnings
par2creator :: fix possible dataloss when building 64bit
diskfile address can't really be null
also show help output in travis log
add automake helper script
add extra information in README for OpenMP on FreeBSD and macOS
when using out of dir par files you must use the -B flag
autodetect basepath based on parfile
bump 0.7.0
Ike Devolder (17):
Merge pull request #57 from jcfp/patch-1
Merge pull request #58 from jcfp/patch-1
Merge pull request #60 from kucharskim/master
Merge pull request #62 from kucharskim/master
Merge pull request #63 from kucharskim/master
Merge pull request #67 from Parchive/issue-66
Merge pull request #68 from Parchive/issue-64
Merge pull request #69 from Parchive/issue-37
Merge pull request #70 from Parchive/issue-65
Merge pull request #75 from Parchive/neutric-improve_documentation
Merge pull request #83 from sdettmer/issue-80
Merge pull request #85 from jcfp/patch-1
Merge pull request #87 from Parchive/par2cmdline-mt
Merge pull request #82 from sdettmer/issue-81
Merge pull request #88 from Parchive/move-src
Merge pull request #90 from Parchive/windows
Merge pull request #92 from Parchive/windows
Jussi Kansanen (20):
Add flags for OpenMP.
Add check for OpenMP.
...
Parallelize creator with OpenMP.
Parallelize repair with OpenMP.
Include omp.h for OpenMP
Add a command line option for settings number of threads.
Update man page.
Enable OpenMP.
Update READMEs.
Update command line options.
Update READMEs.
Update man page.
Update README.md
Merge upstream/master
Dont set number of threads if OpenMP isn't used (reported by Yutaka Sawada).
Remove test dir (run$testname) before running test. If previous dir exists from failed/interrupted run test will fail.
Change version numbers to 0.6.11-mt2
Fix race condition in progress indicator (reported by Phaneron).
Merge remote-tracking branch 'upstream/master' and bump versions.
Mikolaj Kucharski (3):
Fix issue #55, on OpenBSD 5.6+ __BYTE_ORDER is not defined
OpenBSD fixes for regress scripts
Explicitly add -z option to tar(1) during extraction, as not all tar implementations, will handle gzip'ed archives automatically. This for example helps on OpenBSD.
Peter Cordes (2):
gitignore: Add more scratch files
.gitattributes: make everyone's future commits use Unix line endings.
Steffen Dettmer (7):
Fix for #80 ("-n<n>" when "-r<c><n>").
Revert "don't use realpath its not available by default" for #81.
Revert "fix tests definition in the tests" for #81.
Revert "cleanup writing of tests logfiles" for #81.
Fixing distcheck" to work again (#81).
Test for #80 (in test5rk).
Fixed "wc -l" usage in test5rk for MacOS (hopefully).
jcfp (3):
Use /dev/urandom in test 20
Avoid unconditional use of PATH_MAX
add examples section from the old debian manpage