Freshen
=======

Updating an application
-----------------------

Drag the application to be updated to the Freshen icon bar icon.
Alternatively, click on the icon bar icon and drag the application to the
'Patch' icon.

A list of the available patches for that application will appear. You can
select the one to apply by clicking on it.

Finally click on the 'Start' button and the application will be updated.


Making a new patch
------------------

Open the 'Make Patch' window from the Freshen icon bar icon menu.

Drag the old application to the 'Old' icon and the new one to the 'New' icon.

Type in a name for the patch into the 'Name' icon. This is the name of a
directory which will be created inside !Freshen to hold the patch.

Finally type into the 'Info' icon the text which you want to appear in the
Patch window e.g. "Updates OvationPro 2.46 to 2.47".

Clicking on 'Start' will create the patch data.

Patches are constructed by comparing the time stamps of files.

A pop up menu allows the filetypes which will be difference patched to be
selected and the 'Save' button saves this list. By default Absolute (AIF) and
Module files are difference patched.

Difference patching works by storing the difference between the old and new
versions. As a result the patch is of no use if you don't have the original
version of the file. In addition the patch is often considerably smaller than
the original or new file.

Other files are simply stored as replacement copies.

Inside the patch directory, there is an !Info file which contains a
description of how to patch the application.


Release 1.00 18 August 1997


Fix bug with handling new code files which start with words
not present in old code file.

Fix bug with handling code files not a multiple of 4 bytes long.

Release 1.01 14 November 1997


Give message on successful patch. Flag as an error an attempt
to patch the wrong thing.
                         
Release 1.02 29 March 1998


Fix various bugs with patching absolute files

Release 1.03 03 February 1999


Fix bug where if a directory contains only patched files i.e.
not copied files it is not created inside the patch.

Add missing support for remove: in patch files.

Release 1.04 21 April 1999


Added the system variables (see !Run)

Freshen$SqueezeCommand
Freshen$UnSqueezeCommand

These allow the specification of the commands to be used for squeezing and
unsqueezing files.

Freshen now comes with a new unsqeeze module 'unsqz' installed, this is 100%
compatible with Acorns unsqueeze module, but it has the advantage of being
able to unsqueeze module files squeezed with Acorns Squeeze 5.XX.

The situation with modules squeezed using Acorn Squeeze 4.XX is that
unsqueeze will unsqueeze them. However the unsqueezed module file will retain
a header. This is OK for patching, but it means you should not use Squeeze 4
as the tool for producing new software (i.e. which will be the 'new' part of
a patch) or as the tool supplied with !Freshen. Since Squeeze 4 dates back to
1992, this should be an academic point.

Release 1.05 01 June 1999


The make patch window has a new pop up menu this allows selection of the
filetypes which will be difference patched. In previous versions Modules and
Absolute (AIF) files were difference patched, other filetypes were copied.

This new feature is useful if you don't want to difference patch absolute
files or if you do want to difference patch data files.

A 'Save' button on the make patch window lets you save the current set of
difference patch filetypes.

Release 1.06 31 December 2000

Recompiled for 32 bits.
Added 32 bit xpand and squeeze tools - Thanks to Castle Technology for permission.
Fixed bug where selecting difference patch all, difference patched none.

Release 1.07 November 2002



(c) Copyright David Pilling August 1997.
