CHANGELOG
========================================
version 0.2
Fixed a bug with the ordering of targets.
Added app-root element.
Hid the passwords and added a new properties file renderer with more verbose output.
Fiddled with windoze script. (help wanted its not good scripting)
========================================
version 0.3
Introduced fixed basedir for build.xml files to remove dependency on current
directory.
Introduced SelfExtractor code to deliver installers as a single Jar file.
Fixed some intermittent bugs in the sysout.jar library.
Improved feedback of running Ant tasks.
Added different default values for windows and Unix for directories and files.
Added an ifTarget attribute to conditionally show installation pages.
Added a Date input type.
========================================
version 0.4
Fixed un-important error in the install-config.xml for the demo application.
Fixed more bugs in sysout.jar related to reusing the graphics buffer.
Added popup to save/clear in the sysout.jar.
Fixed double printing in sysout.jar.
Added corner button to sysout.jar to jump to final message.
UI improvements including focusing correct buttons and better layouts.
Changes to the way Properties are saved internally in preparation for allowing
${prop.name} syntax in future versions.
========================================
version 0.5
Fixed an introduced bug when an input page is skipped in text mode.
Added paging to the license page in text mode.
Fixed bug printing passwords to properties file.
Big internal changes to the way properties are stored and referenced
to allow ${refs}.
Other internal changes to the name of InputFields that do not actually
collect input to OutputField.
Allow the use of .. in file and directory references and display the
correct absolute path reference.
========================================
version 0.6
The XML DTD should be upgraded to 0.6 to use some new features.
Added a modified version of JGoodies' (excelent) Look And Feel to reduce
the size of the installers and include and option for anti-aliased fonts
in the swing GUI.
- Anti-aliasing is resource intensive but good looking.
- The package name has been changed to maintain compatibility on the classpath
with the original JGoodies files, the new package is org.tp23.jgoodies.
Added a splash page feature to show an image.
Added an (optional) image to the extract progress window.
Added a new input type large-select for drop down lists.
Fixed errors from targets on the first page in the Swing UI.
Fixed errors if defaultValue is null. (however it should not be set to null)
Fixed a bug in the selfextractor when the jar is saved in a path with spaces
or other non text characters.
Added documents about the scrolling in license page.
Removed images from the default build of antinstaller.jar
- Any existing builds that are to be upgraded and use the default images,
should add the images to the classpath. The images are included in the
download in the /images directory.
The online manual has been updated, all the changes are included in the download.
Added some of the new features to the examples and the AnInstaller installer.
========================================
version 0.7
File and Directory choosers will now show hidden files .
Thanks to Markus Dueringer for the tip.
Environment variables can now be accesses in default values with the
${env.ProgramFiles} syntax. - thanks again to Markus Dueringer
Also the Java system properties can be accessed with the "java." prefix.
- e.g ${java.user.name}
Show details button was not big enough in some LAFs - thanks to Mike Watts.
There are known issues with the directory selector and the Metouia LAF,
I can't replicate the issues but if you have problems.
a) use the modified JGoodies which apparently does not have this problem.
b) keep the stack traces and report them please!
When using the selfextractor from windows or X users will probably not
see the errors anyway.
Better defaulting is included for the Directory chooser
the home directory will be shown less often, it was particularly annoying
when the chooser is used to create a new directory
========================================
version 0.7.1
Bug fix in Defaulting Directory Chooser that manifested in not being able to see
directories in app-root.
RFE-1154368 Can't install from a read only source fixed.
The log file is written to the temp dir if it cannot write to the current dir.
The ant.install.properties file is only written if it can be since it is
primarily for debug.
- There is no requirement to add
to the build file any more properties will be added directly to the
build as with secret properties.
========================================
version 0.7.2
Changed the implementation of the Progress Details so selecting text is now possible.
This is more stable too. It has the side effect of keeping the whole System.out
and System.err in memory which is only an issue for veeerrry long builds on
machines with too little RAM.
Changed minor bug where directly edited (not via the chooser) file inputs were
replaced with defaults if the user when back.
Added TargetSelectInput by Mark Anderson providing the option of radio buttons
for targets instead of checkboxes.
Fixed an introduced bug launching from the root drive when ANT_HOME was not set.
Introduced a new "NonExtractor" this is a replacement mechanism to the SelfExtractor.
The Jar is still used to run the installer but the files are not extracted
by default.
In the build.xml files should be specifically extracted using unzip with
nested patternsets to specify the files to extract.
This provide opportunities to improve the performance of installers.
Unzipping can now be performed directly into the installation directories rather
than unzipping and then copying or moving.
Also the antinstaller classes and LookAndFeel and Xerces need no longer
be extracted.
Added an new feature to the ifProperty attribute so the property being tested can
come from the environment or the java system properties.
for example ifProperty="${env.SHELL}=/bin/bash thanks to Eddyrun.
The old syntax of property=value is deprecated in favour of ${property}=value
N.B. ${property}=${value} is NOT supported.
Big internal changes to the Execution class to use a filter pattern currently
hardcoded but with intent to allow pluggable pre and post install tasks.
========================================
version 0.7.3
Added overflow="true" to simple input page.
GridBag Layout used instead of absolute positioning modified to support overflow size
difference.
More Images and Icons added to a separate download.
Added GUI tools for Quick start.
A Much more flexible ifProperty syntax supporting some standard operator with non
standard syntax (see the docs).
Fixed a fatal introduced bug in the console version installer
========================================
version 0.7.4
Added an optional feature to hide password on the console. set textMask="true".
N.B. this does not work in eclipse's console and may not be a stable solution
Implemented plugable filter chains to add steps to the install process.
An example releaseNotes plugin is provided.
Added ext-validated type for pluggable field validation as yet unteset
and undocumented.
Added an Ant task to build installers using Ant.
Added a modified version of the MetalLookAndFeel to reduce download size and still
be able to get the required amount of text in labels and buttons.
Added LookAndFeel names : "default"|"jgoodies", "greymetal" or "null" .
Further testing to allow downloads without including xercesImpl.jar or xml-apis.jar
Added progress pane enhancements to show the targets running for visual feedback of
install progress without having to monitor the output logs which can be
ugly/confusing.
XMLValiation of test scripts and minor changes in the DTD.
Extended validation of config and integrated validation into the installer Ant task.
N.B. passing command line parameters to the build is an override of the detection
method, start scripts should be modified if the default behaviour is requried.
e.g. java -cp $CP org.tp23.antinstaller.runtime.ExecInstaller default .
will not override the default behaviour or trying X and falling back
to text/console
Added an untested feature for including arbitrary validation classes ExtValidated
Assorted fixes for i18n.
app-root no longer creates the directory if it is missing.
========================================
version 0.8
Added features to load defaults from previous installs and perform almost silent
installs property names and targets must not end with the string -targets,
this is validated in the config checker.
Comments expand property values.
Multiline comments via use of explanatoryText and a null displayText value.
Fixed a display bug in the progress renderer if there were more than 5
targets and none that were dependencies.
PropertyLoaderFilter added, any users with custom .fconfig files should
ensure thier custom versions are still compatible.
Added a release notes feature that is a tad tricky to install so
contact for details.
Added HTML page feature that allows using the Java HTML rendering to display
a page of HTML property references are expanded so the page can contain
${property.name} syntax to give feed back of selected properties.
Images are loaded from the classpath so the following syntax will locate
and display an image <img src="/resources/temazo.png">.
Java HTML rendering is poor at best and only html3.2 ,
so dont expect firefox quality rendering ;)
The java renderer handles PNG properly though so nice .
trancparency effects can be achieved.
Fixed bug in validation if only target-selects are used.
Extended i18n for antinstall-config.xml files using ResourceBundles
called LanguagePack
GUI tool for creating LanguagePack files.
Changes to the Expression code for ifProperty attributes
The original syntax is not 100% compatible e.g. my.property=value1
will not work it should be converted to ${my.property}=value1.
Initial work on loading existing values if found to automate installs.
Not quite silent installs but save repeating entries.
Added ability to stretch the GUI horizontally, but still using fixed widths.
Set the wide attribute in the installer element to configure width
e.g. 600:275
Added the ability to deliver different install types in the same Jar which
can be selected on the command line with -type [install type].
Added icons to the buttons in the swing GUI, the installer Ant task now takes
a new attribute called icons to specify which icon pack to use.
Added ability to run special Ant tasks mid build, the same build-xml file is used
but the message rendering and logging is different in the antinstaller- tasks
Added icons for kde and windows to the AntInstaller SelfExtractor, lots of Ant
hacking to avoid extra dependencies.
Migrated classes from sysout.jar into the core src packages
Renamed ant-ext.jar to ant-installer-ext.jar
all build files will need to be updated