Bugs fixed:
- Files that contained identical blocks of data would sometimes be missrecognised
during Verification and reported as damaged. This was most likely to
happen with very small block sizes.
- When Verifying and Repairing, filenames that included characters with
bit 7 set (i.e. most accented characters) where treated as invalid and
replaced with "_".
- If a file was missnamed so that its name was that of another target
file, then it would not be recognised as such. (NB Missnamed files that
do not have the name of another target file have always been correctly
recognised).
Changes:
- Verification and Repair using PAR 1.0 files is now possible.
- Whilst Verifying, the count of the number of Complete, Missnamed,
Damaged, and Missing files is displayed.
- Details of the results of file Verification are now stored in cache
file (with either a .qp1 or .qp2 file extension depending on whether
PAR 1.0 or PAR 2.0 files were being used). The cache file is read on
startup.
- The system menu now includes an option to allow you to change the
priority whilst processing is taking place. You may also set the default
priority from the Options dialogue.
- When creating PAR2 files you are now offered the choice of three schemes
for determining how many recovery blocks are placed in each PAR2 file:
1) Variable size (where each file contains approximately twice as many
blocks as the previous one), 2) All same size (where the recovery blocks
are distributed as evenly as possible amoungst the PAR2 files), 3) Variable
with size limit (where a number of variable sized PAR2 files are created
but where the largest PAR2 file contain exactly enough recovery data
to repair the largest data file).
- When Verifying files there is now an option of Monitor the hard disk
for new files.
- When Verifying files, every file in the folder where the PAR2/PAR1
file is located will be checked or scanned. Only files whose names are
sufficiently close to the filenames listed in the PAR2/PAR1 files will
be thoroughly scanned for good data. A file is scanned if its name is
filename.ext.NNN, filename.ext.NNN-MMM, filename.NNN.ext, filename-NNN.ext,
or filename_NNN.ext. It will also be fully scanned if its filename is
identical to the name of a target file except for substitutions made
to punctuation characters or characters with bit 7 set. Other files
are simply checked to see if they are undamaged but missnamed versions
of files. Files that are incomplete or damaged and also have the wrong
filename will not be fully scanned until you use the Add button.
- Options dialogue added to allow the configuration of PAR2 and PAR
file associations, shell integration, default process priority, and
preferred block sizes.
- When creating PAR2 files, the checkbox to set the block size to that
appropriate for UUEncoding for Usenet has been removed and replaced
with an option to restrict the block size to multiples of the preferred
block size specified in the Options dialogue.
- The checkbox that specifies one set of critical data in PAR2 files
has been removed.
- On startup QuickPar attempts to determine how fast the CPU can process
data. This speed is then used to calculate the time estimate displayed
to create PAR2 files.
- When selecting the level of redundancy for new PAR2 files, QuickPar
tells you exactly how many of the original data files the PAR2 files
could be used to repair. A minimum and maximum figure is displayed and
these may be different if the source files are not all the same size.
- Most settings (such as redundancy) are remembered for the next time
you create PAR2 files.
- The Verification and Repair dialogue now displays the sizes of files.
- When suggesting the filename to use for PAR2 files, it now trims the
suggestion back to the last "." in the filename. This avoids
creating files with names such as demo.mpg.part0.vol07+08.par2.
Features requested or planned:
- Permit the selection of Folders when using the shell context menu
in Windows Explorer.
- Store and use path information in the PAR2 files so that files in
subfolders can be correctly found and repaired.
- Add the ability to queue PAR creation requests so that they will be
processed one after another in the background.
- Add the ability to "pause" PAR creation, save the intermediate
results to disk and resume later.
- Allow drag selection and use of the delete key in the listbox when
selecting the files to create recovery data file.
- Support Unicode filenames.
- Support reading from partly unreadable files (e.g. a file on a CD
with a scratch).
- Allow the selection of an alternate location to put repaired files
(e.g if the originals are on CD).
Known problems:
- When repairing files, all recovered files are placed in the same folder.
If the original files were in multiple folders and include some with
duplicate names, then they will be renamed so that they have a distinguishing
number added to the end of their filenames.
Version 0.4 (May 8th, 2003)
Bugs fixed:
- On Windows 95, after creating recovery files, it was not possible
to immediatly verify them.
Changes:
- When verifying files, the order in which files were processed has
been changed so that all recovery files are loaded before any of the
data files are verified.
Version 0.3.3 (March 22nd, 2003)
Bugs fixed:
- When the "Close" button was clicked after finishing the
creation of recovery volumes, you were incorrectly returned the the
Create dialogue.
- If a data file included areas with duplicate blocks, then they would
not all be correctly recognised when attempting a repair. This resulted
in the need for more recovery blocks than should be necessary.
- Drag and Drop was not working in the create dialogue.
Changes:
Features requested or planned:
- Same as for 0.3 plus...
- Allow spin controls on the create dialogue to respond to cursor keys.
- Allow direct entry of numeric values in the create dialogue.
- Display the name of the recovery volume being created during the actual
creation.
Known problems:
Version 0.3 (February 26th, 2003)
Bugs fixed:
- If you try to create recovery volumes for Read-Only files, they would
not be included.
- The "AutoRepair" checkbox now correctly disables when repair
is not needed.
- When using the spinner to increase the block count, QuickPar would
sometimes not let you select the largest possible block count.
Changes:
- When searching for incomplete files from a UseNet download, if the
target filename is "filename.ext" QuickPar will now automatically
match "filename_1234.ext" in addition to the existing "filename.ext.1234"
and "filename.ext.1234-5678" formats.
- When creating recovery data and reconstructing damaged data, if there
is not enough memory to hold all computed data in memory, then processing
will be done in stages with all computed data being written to disk
at the end of each stage. Additionally, when this happens, the computation
of the file hash will take place as a separate step. File hash computation
takes place at the same time as data processing if there is sufficient
memory.
- After creating recovery data, Quick Par would pause with no visible
activity whilst writing data to disk. Quick Par now indicates that this
is taking place and updates the Progress Bar to show how far it has
got.
- About button added to all the main windows.
- The Create dialogue now has a checkbox labelled "Use block size
appropriate for UUEncoding with 7000 lines per article on UseNet".
Using this sets the block size to 315,000 bytes (if possible).
- The Create dialogue now has a spinner that allows you to set exactly
the block size you want (with the exception that it must be multiple
of 4 - as required by the PAR 2.0 spec). NB When you use this spinner,
the efficiency may drop below the optimum for the resulting block count.
(i.e. you may require more recovery blocks to repair a particular file
than you would otherwise have done).
- The Create dialogue now has a checkbox labelled "Make all Recovery
files the same size". When ticked, QuickPar will allocate recovery
blocks to recovery files as evenly as possible.
- The Create dialogue now has a checkbox labelled "Don't repeat
critical data in recovery files". When ticked, QuickPar will only
put one copy of the information that describes the files being protected
in each recovery file. This will result in a smaller recovery file,
but at a greater potential risk that the recovery file will be unuseable
if that data cannot be read from another recovery file.
- The Create dialogue now has a spinner that lets you adjust the number
of recovery files that will be created.
Features requested (or planned):
- Allow the specification of prefered block size (for UUEncoding, yEnc
etc).
- Permit the selection of Folders when using the shell context menu
in Windows Explorer.
- Remember the actual compute speed achieved and use that when displaying
the estimate when choosing the options for a new PAR2 file.
- Store and use path information in the PAR2 files so that files in
subfolders can be correctly found and repaired.
- Add the ability to queue PAR creation requests so that they will be
processed one after another in the background.
- Add the ability to "pause" PAR creation, save the intermediate
results to disk and resume later.
- Allow drag selection and use of the delete key in the listbox when
selecting the files to create recovery data file.
- Support Unicode filenames.
- Support reading from partly unreadable files (e.g. a file on a CD
with a scratch).
- Allow the selection of an alternate location to put repaired files
(e.g if the originals are on CD).
Known problems:
- When repairing files, all recovered files are placed in the same folder.
If the original files were in multiple folders and include some with
duplicate names, then they will be renamed so that they have a distinguishing
number added to the end of their filenames.
Version 0.2 (February 11th, 2003)
Bugs fixed:
- A bug that prevented the creation of PAR2 files on Windows 98 has
been corrected.
- A PAR2 file which included files that have the same name would cause
Quick Par to crash when attempting to verify them.
- When using the Windows Explorer context menu to create a PAR2 file
with a large number of files, the details of only a limited number would
get passed to Quick Par.
Changes:
- Quick Par will now "beep" when it finishes an operation.
- If PAR2 creation is cancelled, then any partly created PAR2 files
will be deleted.
- If a repair is cancelled, then any files that have been created will
be deleted.
- When PAR2 creation is cancelled, you are now returned to the previous
dialogue instead of exiting. This allows you to adjust the settings
and then restart the creation.
- During PAR2 creation, Quick Par now updates the progress bar whilst
it is computing the Reed Solomon matrix. This will only be noticed when
using high block counts.
- Overlapped I/O is used if possible when creating and verifying. It
is not yet used during repair.
- It is now possible to drag and drop files from Windows Explorer into
the PAR2 create window.
- If the base name entered for the PAR2 files ends with a period, then
that period will be removed.
- Quick Par now operates with lowered priority so that other applications
will not be slowed down.
- When repairing, Quick Par now displays the estimated time to finish.
- There is now an "AutoRepair" button.
- After verifying files, if repair is needed and enough recovery blocks
are available, Quick Par will tell you how many recovery blocks it will
actually use for the repair.
- Memory consumption for the Reed Solomon matrices used for PAR creation
and repair has been halved. This is only of real significance for high
block counts.
Features requested (or planned):
- Permit the selection of Folders when using the shell context menu
in Windows Explorer.
- Remember the actual compute speed achieved and use that when displaying
the estimate when choosing the options for a new PAR2 file.
- Store and use path information in the PAR2 files so that files in
subfolders can be correctly found and repaired.
- Add the ability to queue PAR creation requests so that they will be
processed one after another in the background.
- Add the ability to "pause" PAR creation, save the intermediate
results to disk and resume later.
Known problems:
- When repairing files, all recovered files are placed in the same folder.
If the original files were in multiple folders and include some with
duplicate names, then they will be renamed so that they have a distinguishing
number added to the end of their filenames.
Version 0.1 (February 5th, 2003)
This is the initial release of Quick Par.
- Quick Par does not support the PAR 1.0 specification.
- This version has been tested on Windows XP Professional, and Windows
NT 4.0. It has NOT been tested on Windows 95, Windows 98, Windows ME,
Windows 2000, or Windows XP Home.
- When creating PAR files, all computed recovery blocks are buffered
in memory until finished. If you create 10% recovery data for an 800MB
file, Quick Par will use 80MB of memory. This might cause disk-thrashing
on computers with limited amounts of memory.
- You cannot directly control the number of PAR2 files created. Each
PAR2 file will contain 2^n recovery blocks (except the last). The total
number of PAR2 files created is log2(number of recovery blocks).
- Quick Par will place multiple copies of critical information in each
PAR2 file. This allows a PAR2 file to be useable when damaged.
- When verifying files, Quick Par does not currently cache the results
of a scan. When reverifying, all files will be rescanned.
- Quick Par won't let you set an exact block size. Instead you have
to specify the number of blocks and it will calculate the best block
size. The calculated block size will be the smallest size the results
in the specified number of blocks. This achieves the highest level of
efficiency by minimizing any padding that may occur during block allocation.
- Quick Par does not store path information for the files that are being
protected and will ignore any path information in a PAR2 file when verifying.
- When verifying, Quick Par will check any files whose filenames start
the same as a target file. If a target file has been renamed, you have
to manually tell Quick Par to scan it for data.
- This is a beta release which requires more work. It does not contain
full error checking code so bugs may lead to unexpected crashes.
|