
WarpIN Release History
======================


    V0.9.11 (April 26, 2001)
    ------------------------

    --  WPIRTL.SYM was missing in the distribution, leading
        to incomplete trap logs. Added.

    --  Config.sys routines never found lines that had leading
        spaces, fixed.

    --  WIZILLA.EXE was broken. Fixed.

    --  If the "kill process" script command failed for some
        reason (due to the new error checking from V0.9.10),
        the user ended up with infinite questioning that the
        process should really be killed now. Fixed, now we're
        only giving a warning once.


    V0.9.10 (April 16, 2001)
    ------------------------

    Added a couple of urgent fixes that were missing in V0.9.9.

    --  Finally figured out what caused the crashes on some
        systems when the KILLPROCESS attribute of the PCK
        tag was processed. If DosQProcStat failed for some
        reason, WarpIN would free an internal buffer twice,
        which would of course crash. Since DosQProcStat
        never failed on my system, I never got those errors.

        Fixed.

    --  readme.txt wasn't up to date. Updated.


    V0.9.9 (April 8, 2001)
    ----------------------

    Yo, major upgrade, with many internal changes, extensions,
    and bugfixes. Hope this didn't break anything else.

    --  APPS.WIS was missing in the TEST directory, so the test
        script never worked. Fixed.

    --  Added envwic.cmd to set an environment for WIC.EXE to
        run from any directory.

    --  wic -x finally works with file masks.

    --  wic -a failed with files in root directories. Fixed.

    --  Added installation/deinstallation logs. The log file
        defaults to "install.log" in the WarpIN directory, but
        can be changed in the "Preferences" dialog.

    --  Added DEEXECUTE attribute to PCK tag for executables
        to be run during de-install.

    --  EXECUTE sometimes didn't work with parameters. Fixed.

    --  EXECUTE got confused with CREATEOBJECT and REGISTERCLASS
        flags. This wasn't serious, WarpIN only gave a wrong
        message after install. Fixed.

    --  The stupid parser failed on numeric NAME="VALUE" pairs
        if the numer was in quotes. Fixed.

    --  Specifying the direct root of the boot drive as the
        target path ("?:\") didn't work. Fixed.

    --  Added simplistic archive viewer in install mode
        (new "Archive" menu -> "View").

    --  Patrick Haller fixed a number of bugs in the WPI backend
        which apparently never did error checking anywhere. This
        might fix hangs people experienced when WarpIN attempted
        to open broken archives.

    --  Reorganized all internal script code to prepare WarpIN
        XML scripts.

    --  Database display got confused if several packages had
        the same application name, but different authors. Fixed.

    --  Deinstall and verify didn't work if the target path was
        the root directory of a drive. Fixed.

    --  Deinstall now checks for whether each file has been
        overwritten with a newer file and prompts the user if
        the file should still be deleted.

    --  WarpIN upgrade install failed for subfiles in "test" if
        that dir didn't exist yet. Fixed.

    --  Various optimizations all over the place.


    V0.9.8
    ------

    V0.9.7 was never officially released. But since some people
    got hold of anyway, that version number was skipped to avoid
    confusion.

    --  Added installation process for upgrades. Just click on
        the new WARPIN.EXE, and it will update your existing
        install.

    --  Fixed several problems with CONFIG.SYS changes that
        showed up with Odin.

    --  Fixed the target paths bug that showed up with XWorkplace
        V0.9.6. This forced many people to completely deinstall
        XWorkplace before a new version could be installed...
        this should work better now, even though it's still not
        perfect... this needs a redesign.

    --  Dependency checks did not check versions numbers if a
        package was already installed. Fixed.

    --  Further optimized internal string routines.

    --  For developers: Big updates to xdoc... can do C++ methods
        properly now. WarpIN documentation is finally readable to
        a certain extent.


    V0.9.6
    ------

    --  Added command-line extraction (both for files and scripts)
        to WIC.EXE.

    --  WIC.EXE crashed packing 0-byte files. Hopefully fixed.

    --  Added UNIX-style path handling (forward slashes) to PCK
        tag macro resolution. See WPI_PROG.INF for details.

    --  Disabled the ugly white OS/2 error message boxes for DOS
        errors in WARPIN.EXE.

    --  Dependency checks lacked version checks if a package was
        already installed. Fixed.

    --  Added exception handling to "kill process" processing
        because apparently this crashed on some systems.

    --  CONFIG.SYS was sometimes written even if no changes were
        made. Also, CONFIG.SYS backup filename was sometimes
        reported wrong. Fixed.

    --  Reworked internal string routines. This should make WarpIN
        faster in general, especially with script parsing.

    --  CID environment should be working now. I have tested
        WARPIN_DISPLAYPAGES=NO with Odin, and it worked.

    --  For developers: xdoc was broken with V0.9.5, should be
        working again. Some minor improvements were made as well.


    V0.9.5
    ------

    --  WIC.EXE broke with V0.9.4. Fixed.

    --  I have spent quite some time on code optimizing. All
        WarpIN executables now use a shared library (WPIRTL.DLL).
        This greatly reduces the size of the executables. However,
        this implies that the executables need to find this DLL.
        This is no problem with WARPIN.EXE (because the program
        object has its startup directory set correctly), but if
        you use WIC.EXE from the command line, you might need
        to use BEGINLIBPATH or add the WarpIN directory to your
        LIBPATH.

    --  WarpIN forgot to report network drives in "Drives Info".
        Should be fixed now.

    --  Removing INI (profile) entries works now.

    --  Fixed UNIQUE(xxx) and REMOVELINE with PCK CONFIGSYS,
        which deleted wrong lines in CONFIG.SYS.

    --  EXECUTE wasn't processed if all flags on "Configure" page
        were disabled. Fixed.

    --  Added more help panels.

    --  Added more context menus to database view.

    --  Fixed code to compile with EMX again.


    V0.9.4
    ------

    --  Raised stack size for WIC.EXE which crashed with deep
        directory recursion.

    --  WIC now skips 0-byte files.

    --  WarpIN now runs even if the WPS is not up.

    --  Added help.

    --  Changed WARPIN VERSION= to three-part versioning.

    --  Added WARPIN_DEFAULTAPPSPATH and WARPIN_DEFAULTTOOLSPATH
        script environment variables. See WPI_PROG.INF.

    --  VARPROMPT didn't display text right. Fixed.

    --  Fixed EXECUTE bugs (thanks Yuri Dario).

    --  EXECUTE can now have several modifiers.

    --  Added dependency checks to deinstall from database.

    --  On deinstall, configuration items which are to be undone
        can be selected individually now.

    --  KILLPROCESS didn't work on de-install. Fixed.

    --  Fixed right split view in database, which was initially
        empty.

    --  Deinstall can unlock files now.

    --  Deinstall can remove empty directories now. If directories
        are not empty, a more meaningful message is displayed.

    --  WarpIN can now prompt for restart WPS after WPS classes
        were changed.

    --  Drive info window stopped after first invalid drive. Fixed.

    --  Fixed exception handlers, which broke with V0.9.3 again.

    --  Great speedup with HTML viewer.


    V0.9.3
    ------

    --  Completely removed Add/Remove mode. We now always
        enter "Full install" mode.

    --  Removed DosQuerySysState calls which apparently
        caused crashes on some systems. Using 16-bit
        DosQProcStat instead.

    --  Added REXX support documentation to WPI_PROG.INF.

    --  Added FORMAT=HTML and FORMAT=PLAIN to <README>.
        Limited HTML support introduced.

    --  XTextView control had serious problems with scroll bars.
        Fixed. Also added lots more features.

    --  Added more package dependency checks.

    --  Macros in target paths never worked, especially "?:\"
        for the boot drive. Fixed. Added package references
        to macro resolution.

    --  <PCK CREATEOBJECT> didn't work with REPLACE. Fixed.

    --  <PCK EXECUTE> didn't work right. Fixed.

    --  Added <PCK EXTERNAL REQUIRED>.

    --  Fixed a few memory leaks in BSString class.

    --  Added more error checking in various places.

    --  VARPROMPT window crashed if nothing was entered. Fixed.

    --  Tabs in scrips caused errors. Fixed.

    --  Added readme shadow to WarpIN install objects.

    --  Checkboxes weren't always set right on Configure page. Fixed.

    --  Exception handlers caused exceptions themselves sometimes
        with certain strange stack frames. Fixed.

    --  SYM file parsing only worked on Warp 4. Fixed, I hope.

    --  Switched helpers to create helpers.lib now for easier linking.


    V0.9.2
    ------

    Mostly bugfixes, plus REXX support, plus new tags.

    --  REXX support (C) Cornelis Bockemhl. No documentation
        yet, as this is fully experimental and subject to
        major change. ;-)

    --  Made NEXTBUTTON optional.

    --  VARPROMPT implemented.

    --  External packages implemented.

    --  Added more error checking to backend to solve hung
        WarpIN with broken packages.

    --  Script codepage support added.

    --  Macro resolution in TARGETPATH finally works with
        environment variables too.

    --  Free space on drive wasn't displayed right if > 4GB.
        Fixed.

    --  Finally displaying package descriptions as tooltips.

    --  Renamed database file to "datbas_X.ini" with X being
        the boot drive so that WarpIN can be used from several
        OS/2 boot partitions independently. The old database
        is automatically converted.

    --  Database allowed several packages to be selected at
        once, which confused the rest of the GUI. Fixed; now
        only one package can be selected.

    --  Added database "configuration" view.

    --  Sped up database display.

    --  Added tab key support to database windows.

    --  Added more configuration descriptions to database;
        now using virtual methods, which works much better.

    --  "Undo config" wasn't checked right when deinstalling
        multiple packages at once. Fixed.

    --  "Exit" menu item didn't work. Fixed.

    --  Fixed memory leaks.

    --  Fixed exception handlers which weren't unwinding
        call stacks right.

    --  Exception handlers now also parse SYM files in
        ?:\OS2\PDPSI\PMDF on Warp 4.

    --  Changed linking to non-optimizing in order to have
        exception handlers parse SYM files right.


    V0.9.1
    ------

    This is both a "lotsa-new-features" and a bugfix release.

    --  WicPM added.

    --  Package dependencies are now implemented. Dependencies
        are stored in the database according to the REQUIRES
        attributes of the PCK tag and the database performs
        checks before deinstalling. Also, before installing,
        we check whether dependencies are met.

        This has been tested to a certain extent, but not
        extremely extensive. I'd be grateful for more feedback.

    --  CONFIGSYS attribute UNIQUE flag support improved.

    --  EXECUTE attribute is now supported.

    --  CLEARPROFILE and WRITEPROFILE attributes now supported
        (although deinstallation doesn't work yet).

    --  Six-part package IDs (with three-part version numbers)
        are working now.

    --  Installation of WarpIN itself now creates objects for
        the documentation too.

    --  Various GUI enhancements and bugfixes. Added new
        XTextView control for viewing text.

    --  WarpIN can now repair the database itself to a certain
        extent, should it become corrupt.

    --  CONFIG.SYS was always rewritten to disk, even if
        nothing was changed. That lead to a lot of backup files
        in the boot drive. Fixed.

    --  Script parsing errors always had wrong line numbers.
        Reworked that, I hope it's better now.

    --  REPLACECLASS wasn't stored in the database. Fixed that.

    --  Fixed some memory leaks and other heap problems.

    --  WIC.EXE has new "-c" and "-r" parameters for changing
        to subdirectories and recursively adding files.

    --  Source code reorganized again. Split up the frontend C++
        classes across many more headers to reduce the need for
        recompiles and speed up compilation also.

    --  Introduced more base classes for the various frontend
        classes so we can make STL list's of the base class,
        which reduces code bloat amazingly. I reduced WARPIN.EXE's
        size by about 100 KB doing this.


    V0.9.0
    ------

    --  Source code reorganized.

    --  Reworked the entire frontend to use C++ classes now;
        implemented a proper "add/remove" mode if packages from
        an archive have already been installed.

    --  Packages support six-part IDs now too (three-part version
        numbers).

    --  Rewrote "add/remove" mode completely.

    --  Lots of other user interface enhancements.

    --  Entry field on cnr page was limited to some 30 characters. Fixed.

    --  Changed back-end to use libbz2 instead of zlib. This leads to
        an incompatible archive format, but compresses faster and better.

    --  DLL/EXE files can now be unlocked if in use.

    --  GROUP tags are working again.

    --  WARPIN and TITLE tags are working.

    --  Added EXPANDED attribute to GROUP tag.

    --  Rewrote the database viewer completely. Now using a split
        view.

    --  Database was missing install date and time. Added that.

    --  PMWIC added to source code.

    --  Added directory recursion to WIC.EXE.


    Alpha #4
    --------

    --  There are now two INFs: one for the user, one for the programmer.

    --  The global database is working!! This was a %&$ of work...
        This means that de-installing packages should be working now.

    --  Creating WPS objects, CONFIG.SYS manipulation, WPS class management,
        and macro resultion implemented!
        Check the PCK tag reference in WPI_PROG.INF for details.

    --  Better "File exists" dialog.

    --  Multiple packages are now supported.

    --  Added environment variable support for CID installation.

    --  WIC.EXE can now update packages and set install scripts independently
        (as far as I've tested this). Phh...

    --  Most strings that WarpIN displays have now been exported to the resources
        and MSG file to support NLS. This will probably still change however, so
        don't attempt any translating at this point. There's still no NLS for
        the install script error messages, and I don't know yet whether there'll
        ever be.

    Alpha #3
    --------

    --  Compression/decompression. We're now using the zlib library
        which works just beautifully.

    --  Lots of error checking. Files are checked for existence
        before they are overwritten, most other error conditions
        should be handled well also. If all goes wrong, there is
        a sophisticated exception handler too.

    --  The front-end sources have been cleaned up big time. There
        is now a clean separation between the string logic (for the
        install script) and the PM display stuff. There is no more
        string parsing in the PM part (gui.* files), so this can
        more easily be replaced.

    --  There is readable documentation in INF format now.
        PLEASE READ IT before asking any questions.


    Previous versions
    -----------------

    Lost track of them, sorry.

