ChangeLog
=========
0.9.5-0 (917235)
-----------------
- installer-gui: 
                - added "select/unselect all" button in end user package selector page (Ralf Habacker)
                - fixed bug not been able to update some packages because dbus-daemon was running, 
                  thanks to S Page for pointing this out (Ralf Habacker)
                - if there is any kde process running a Messagebox is now be displayed to inform the user 
                  before those process will be killed (Ralf Habacker)
                - fixed bug not displaying all settings pages after first install in end user mode (Ralf Habacker)
                - show latest release link in release selection page. Using this link will 
                  use always the lastest release  (Ralf Habacker)
                - set default release to latest in the first run. (Ralf Habacker)
                - in case of ie or firefox proxy settings display setting in the unused manual settings 
                  fields to have a visible feedback about the currently used values (Ralf Habacker)
                - added install from local directory and download only option (Ralf Habacker)

- common:    
                - started sha1 hash support, in progress, needs more tests (Ralf Habacker)
                - fixed some dependencies in the latest distribution config (Saro Engels)

0.9.4-1 (r904133)
-----------------
- installer-gui:   
                - show long temp path name (Christian Ehrlicher)
                - removed all double slashes in urls (Christian Ehrlicher)

- packager:    
                - fixed 7zip unpack problems (Christian Ehrlicher)
                
0.9.4-0 (r902722)
-----------------

- installer-gui:   
                - in end user mode is it now possible to display packages from more than one package category (Ralf Habacker)
                - migrated developer mode into a more clean package manager mode (Ralf Habacker)
                - some fixes to local install mode (Ralf Habacker)
                - fixed issues for installer self update (Ralf Habacker)
                - added patch level to window title (Ralf Habacker)

- common: 
                - added aspell data packages (Ralf Habacker) 
                - package notes in config files could now be defined for all compiler types together (Ralf Habacker)
                - updated curl to 1.19.2 (Christian Ehrlicher)
                - fixed bug not been able to unpack aspell binary packages packed with tar (Christian Ehrlicher)         
                - added md5sum generating for all executables (Ralf Habacker)

0.9.3-3 (r884546)
-----------------

- installer-gui:   - fix showing of wrong unstable releases (Patrick Spendrin)
                   - added documentation about local file url's in mirror setting page (Ralf Habacker)

0.9.3-2 (r858132)
-------
- installer-gui:   
                   - manual updated (Ralf Habacker)
                   - make the installer work again on w2k (Christian Ehrlicher)

- installer-console: (Ralf Habacker)
                   - refactored console installer
                   - filter packages by used compiler and install mode 
                   - fixed help page
                   - added enhanced listing of package files
                   - print all requirements for a given package
                   - added printing of package descriptions. dependencies and categories
                   - don't add category if already present
                   - display package in query and list mode in rpm like format 

- common: (Ralf Habacker)         
                   - added more debug informations
                   - fixed package file list reading
                   - added package verifing 
                   - fixed more filename case
                   - implemented PackageInfo::fromString() which is now able to handle package type information to 
                     allow package names with package type postfix e.g. tiff-bin 

- packager:        - pack qt sources (Christian Ehrlicher)


0.9.3-1 (r850954)
-------
- installer-gui:   - fixed bug not killing kde applications for kde <= 4.1.0

0.9.3 (r848631)
-------
- installer-gui:   - display different messages in finishpage when only removing packages
                   - added feature to update the installer itself by using the @newversion <version> <installer-url> config file attribute
                   - display skip basic settings checkbox only when all settings are available
                   - display package selector page immediatly after titlepage if skipsettings is set or local install triggerd by command line parameter
                   - only run post process steps when at least one package is removed or installed
                   - fixed windows start menu generating by completly removing the entries first
                   - added local install feature which is triggered by adding a file:///<drive>:<path>/url 
                   - set default install dir to %PROGRAMFILES%\KDE
                   - fixed default values for downloadDir(): if no directory is in the ini file use the TEMP environment dir, then TMP when empty
                   - added debug output to standard windows debug port in debug mode
                   - removed trailing source path to not to pollute logfile
                   - empty logfile on every installer start
                   - refactored build system: build intermediate libraries bzip2, filter, curl, qauzip, qua7zip, shared-console and shared-gui to reduce the compile time for each target
                   - added @control <item-type="Button">,<item-caption> config attribute to control external executable installers
                   - added line number to config file parser to be able to track down failure lines 
                   - added unpacker test app to check external installer control
                   - added support for fetching releases from http and ftp servers 
                   - fixed bug not displaying packages with uppercase package names
                   - bug fix displaying wrong package selector page in package manager mode
                   - undo all packages selections when switching back in package selector page independing from display mode
                   - added new Release Selection Page, which is displayed after the mirror selection page. It fetches available releases from a server and 
                     let the user choose on of the available packages. 
                   - allow also package downgrade in end user mode
                   - md5 support for external packages - by the the config file @md5-<bin|lib|doc|src> <md5sum> attribute
                   - added support for placing local filenames into config file by using the new @filename-<bin|src|doc|lib>  <filename> attribute
                   - added note about that running kde applications should be closed before updating packages. 
                   - some code cleanup

0.9.2-4 (r844558)
-------
- installer-gui:   - added note about required administrative rights 
                   - display all packages located in categories starting with 'KDE' in End User Mode

0.9.2-3 (r842009)
-------
- installer-gui:   - don't display dependency page when no dependencies are affected
                   - moved post processing jobs to a separate page after package installation
                   - fixed crash when a package is installed but not more available 
                     and selected in the developer package selector page
                   - added browser identification which let the installer be listed in web server log files
                   - don't display download rate string when range or value is zero
                   - added new message box when mirror list download failed
                   - bug fix: set curl proxy settings also when host is empty, because when proxy was 
                     enabled first and disabled in the same installer run, curl will still use proxy 

0.9.2-2 (r830781)
-------
- installer-gui:   - bug fix complaining about non available md5 sum files for external packages by 
                     adding the @nomd5 config item

0.9.2-1 (r824894)
-------
- installer-gui:   - several bug fixes

0.9.2
-----
- common:          - use md5 hash to check if download is needed / was correct
                   - added support for post-install scripts
- installer-gui:   - only display new packages in end user package selector page when update installation 

0.9.1 (r806382) 
-----


0.9.0
-----
- common:         - added ftp downloading support by using the curl library 
                  - added support for using sourceforge mirrors as download source 
                     (use http://xxxx.dl.sourceforge.net/sourceforge/kde-windows as mirror url) 
- installer-gui:  - used QWizard for the gui 
 
0.8.5
-----
- packager:       - added switch -hashfirst to place hash values in the first column instead of the second column.
- buildsystem:    - added qt build mode detection - it now supports shared, static with static runtime and static with shared runtime
                  - removed build system warning about default library libcmt when configuring for static debug builds 
- installer-gui:  - fixed bug selecting empty line in mirror list when no mirror was used before 
                  - made mirror list parser more robust against not complete mirror records 
                  - print qt version used for building installer in about box
                  - toggle display of package info tab when selecting the same item, display packageinfo always 
                    when selecting a different item
                  - simplified and merged SourceForgeMirror and ApacheModIndex parser; it should now parse 
                    mostly websites containing supported binary packages 
                  - fixed vertical layout of some wizard pages
                  - extended title on package dependency page
- mirrors:        - added some http mirrors, ftp mirrors are not possible yet

0.8.4-4
-------
- package format: - manifest files now uses UTF-8 encoding
                  - manifest files supports now md5 hashes in front of the filename
- configer:       - writes timestamp to package list, which could be checked by the installer to see 
                    if there are updates there (not implemented yet)
- installer-gui:  - fixed package manifest file format change 
                  - make sure to uninstall the correct package version when a newer version already exists
- menubuilder:    - added tool for startmenu entry generation from desktop files

0.8.4-1
-------
- installer-gui: - added support for parsing config.txt files in subdirectories, which contains collected informations 
                   about packages located in the related directory.
                 - fixed a bug which is indicated by a disabled next button in mirror dialog wizard page. 
                 - sort package categories in the left window case insensitive 
                 - added support for multi line text using \n in @details and @pkgdetails item 
                 - fixed bug not adding categories correct from setup.hint files 

0.8.4
-----
- installer-gui: - added @minversion config item to set minimal required installer version, 
                   if used installer version is lower as required a message box is printed 
                 - added @categorynotes config item to set category specific notes outside a site section
                 - added @pkgcategory config item in site section to add packages to a specific category

0.8.3-6
-------
- installer-gui: - fixed regular expression support for filename relocation on unpack
                 - ignore package manifest files when filepath relocating on unpacking is used, 
                   they are incorrect 
                 - added timestamp to config file and print it to the log file, this can be used 
                   for an live update client

0.8.3-5
------
- installer-gui: - separated mirror list from config file. It is now loaded from the file 
                   mirrors.lst from the top level dir of download.cegit.de
                 - refactored winzard pages - the page content comes from the SettingsPage
                 - cleaned internal structure to avoid displaying duplicated packages
                 - fixed download canceling 
                 - delete zero length files when download was canceled.

0.8.3-4
-------
- installer-gui: - fixed http 302 Permanted moved condition
                 - fixed more duplicated package display
                 - fixed some display issued related to end user and developer install mode 
                 - removed fixed package names length in the @package config definition
                 - disabled next and back button when downloading/removing and installing

0.8.3-3
-------
- installer-gui: - reorderd wizard pages (install path, proxy settings, download location, mirror)
                   because before loading the initial config proxy settings must be present
                 - fixed duplicate package display when running the first time                    
                 - added end user and developer install mode 
                 - disabled compiler type and install mode changes when packages are installed

0.8.3-2
-------
- installer-gui: - fixed case where packages are displayed twice

0.8.3-1
-------
- installer-gui: - fixed bug not been able to change developer mode

0.8.3
-----
- installer-gui: - added update support
                 - package selecting refactored 
                 - fixed dependency selecting, supports now indirect dependencies 
                 - display additional required dependencies into a separate page 
                 - fixed not having bzip2 install support by default 
                 - added proxy username and password in proxy settings dialog
                 - fixed multiple package loading in first run case

0.8.2
------
- installer-gui: - downloader is able to follow redirected urls using the 302 http response code
                 - create package database entry for exe/msi installer to avoid multiple time installation 
                 - initial support for proxy username and password, it is required to set it in the installer.ini using entries proxyUser= and proxyPassword=
                 - print message box in case downloading fails -> user can choose between cancel ignore and retry
                                  
0.8.1
-------
- all:           - added .tar.bz2 support
                 - some internal changes to allow 'file://' in config-local.txt
- installer-gui: - removed downloaded files when download is broken 


0.8.0
-------
- installer-gui: - added category and package info display
                 - added package related detailed notes 
                 - added hint files containing package description, categories and dependencies
                 - added hint file parsing for modindex site parser to get full package information 
                 - dropped support for *.notes files, they are replaced by the *.hint files
- configer:      - new tool added for config file creating based on 'hint'-files

0.7.6-1
-------
- installer-gui: - relinked without msvcrt80.dll reference to avoid dependency to vc++_redist package

0.7.6
------
- installer-gui: - added simple versioned dependency support
                 - added more debug output in GlobalConfig 
                 - download to and read config files from the package download directory 
                 - only support zip archive format for apachemodindex web site scanner
                 - manual mirror adding support
                 - bug fix related to package list parsing (some sites uses uppercase html tags) 
- packager:      - new debuglibs option added, which adds debug libraries to lib binary package 
                
0.7.5
------
- installer-gui: - added mirror selecting support

0.7.4
------
- installer-gui: - fixed package selection for download/remove and install 
                 - added compiler type option in install root and combined settings page 

0.7.3
------
- installer-gui: - fixed in use replacement of kdewin-installer-gui   
                   by installing a versioned installer gui executable 
                   and a wrapper named kdewin-installer-gui   
                 - unified top label design, add option to enable QPlastiqueStyle by Peter Kümmel
                 - added debug printing switchable at runtime

0.7.2
------
- installer-gui: - fixed bug displaying some packages twice
                 - added package notes suppport in site configuration 
                   using the @pkgnotes <package> <notes> statement
                 - added paketgroups description taken from package list config notes
                 - added mingw and msvc group filters
                 - used shared qt message handler setter

0.7.1
------
- added -q option to kdewin-installer-console

0.7.0
------
- added KDEWIN_Packager cmake module, which could be used in other projects to have kdewin packager support
- cleaned up win32 explorer wrappers 
- only build tests when using BUILD_TESTS on configuring
- first working version with splitted package selector view

0.6.11-2
------
- installer-gui: splitted package selector page view

0.6.11-1
------
- packager: fixed problem not adding all source files in case of using -srcroot option
- installer-gui: recompiled with qt 4.3-snapshot to avoid segfaults we had in qt4.3 beta 

0.6.11
------
packager 
- packager: use the correct qt include files (copy them from src to include) 
- packager: add .manifest files for executables/shared objects

0.6.10
------
- added auto download-remove-install option
- debug messages are printed into kdewin-installer.log 
- made debug messages more clear
- fixed package file name parsing to allow '-' in package name
- fixed some minor issues 

0.6.9-2
-----
- fixed bug not be able to uninstall packages

0.6.9-1
-----
- install root related bug fix 

0.6.9
-----
- fixed bug display correct proxy setting in wizard mode 
- changing install root reloads the installer with recent installation settings

0.6.8
-----
- only lower case package names are allowed 
- added uninstall progress
- added support for package descriptions files on the server. The notes file must have a filename 
  in the following form <package>-<version>.notes
- packager does not create manifest files for source packages, installer will create it 


version 0.6.7
-------------
- extended packager to write source packages
- renamed packager to kdewin-packager
- uses qt's style option form (one '-') in packager
- fixed build sytem to install applications
- added cmake script to be able to use packages in cmake projects
- added local file name parameter to @url-<bin|lib|doc|src> config file attribute, which is used as local 
  package file name regardless of what url has. 
- added display install details option, which is not set by default. 

version 0.6.6
-------------
- dropped flat file installed package database, uses package information from <install_root>/manifest
- added category support, sites and packages could be located in different categories
- packages do not need manifest files (.mft,.ver), they will be created by default if not present

version 0.6.5
-------------
- fixed package identifying problem with apache provided sites 
- added proxy support 
- added ftp download support 

version 0.6.4
-------------
- bug fixed not display installed packages located in the "other" category 
- added selecting 'all' feature 

version 0.6.3
-------------

- added new config file keyword @relocate for relocating package file path into real path
- better icon selection in gui mode 
- added 7zip package format to installer
- initial version of settings page, this is a try.

version 0.6.2
-------------
- some bugs fix 

version 0.6.0
-------------
- first public version 
- got it compiled as static 


version 0.5.1
-------------
- added initial gui client

version 0.5
-----------
- added support for downloading packages
- added blocking mode to downloader 
- added prelimary installation support using external unzip tool


version  0.4
------------
- separated code into shared, console and gui
- created Downloader class

version 0.3
-----------
- added support for downloading package list

version 0.2
-----------
- separated code into classes Package, PackageList 

version 0.1
-----------
- initial created from qt http example 
