This is the mail archive of the cygwin-apps-cvs mailing list for the cygwin-apps project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[setup - the official Cygwin setup program used to install Cygwin and keep it up to date] branch master, updated. release_2.877-21-g451e211




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=451e2119adb4caf61badf4d43e550ed3a3de3d1b

commit 451e2119adb4caf61badf4d43e550ed3a3de3d1b
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Fri Apr 28 15:26:35 2017 +0100

    Remove obsolete ChangeLog


Diff:
---
 ChangeLog   |11481 -----------------------------------------------------------
 Makefile.am |    2 +-
 2 files changed, 1 insertions(+), 11482 deletions(-)

diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index 363a05d..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,11481 +0,0 @@
-2015-03-04  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* io_stream_cygfile.cc (remove): Convert from fprintf(stderr, ...)
-	to output to Log stream.
-	* io_stream_file.cc (remove): Ditto.
-	* mkdir.cc (mkdir_p): Ditto.
-
-
-This file is deprecated.  See git log instead.
-
---------------------------------------------------------------------------------
-2015-12-01  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (read_mounts): Always convert root dir path from command line
-	to an absolute path.
-
-2015-08-04  Jon Turney  <jon.turney@dronecode.org.uk>
-
-	* dialog.cc (fatal): Use mbox rather than MessageBox.
-	* install.cc (installOne, check_for_old_cygwin): Ditto.
-	* main.cc (main_display, WinMain): Ditto.
-	* mount.cc (create_install_root): Ditto.
-	* nio-ie5.cc (NetIO_IE5): Ditto.
-	* root.cc (directory_contains_wrong_version): Ditto.
-	* site.cc (do_download_site_info_thread): Ditto.
-
-2015-10-18  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* ini.cc (check_ini_sig): Do not complain about a missing
-	signature file when installing from localdir.  If it is present it
-	still must be checked, however.  The "download only" mode should
-	pull down both the (compressed) setup file and the corresponding
-	signature (not yet implemented).
-	(do_local_ini): The builder needs to know the (unescaped) mirror
-	name it's associated with in order for the file validation to
-	work.  The found_ini_list should directly provide the constituent
-	parts so that we don't need to extract them (not yet implemented).
-
-	* fromcwd.cc (FindVisitor): Remove superfluous path separator and
-	simply use SetupArch (which has previously compared equal to
-	aDir->cFileName) when constructing the setup file name.
-
-	* Makefile.am (GITVER): Do not use an explicit HEAD parameter and
-	add the "--dirty" option so that builds with uncommitted changes
-	get marked appropriately.
-
-2015-10-12  Ken Brown  <kbrown@cornell.edu>
-
-	* mkdir.cc (mkdir_p): Remove special treatment of colon in path
-	name.
-
-2015-08-04  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* package_source.h (packagesource): Add boolean member variable
-	sha512_isSet to record whether an SHA512 checksum has been set.
-	(packagesource): Initialize sha512_isSet to false.
-
-	* IniDBBuilderPackage.cc (buildInstallSHA512, buildSourceSHA512):
-	Only set the SHA512 checksum when it was previously unset like it
-	is done for MD5 checksums.  That will generally be the checksum
-	recorded on the package line in setup.ini, any further checksums
-	in separate lines will thus be ignored.
-
-	* install.cc (chksum_one): Conditionalize the comparison of the
-	SHA512 checksum on whether or not it was previously set.  Check
-	SHA512 checksum first since it is the default now.  This is
-	necessary for ad-hoc installs from local disk without a setup.ini
-	file.  Output a warning when the checksum was not be verified
-	because neither a MD5 nor a SHA512 checksum was set.
-
-2015-08-04  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* install.cc (md5_one): Change buffer size from 16kiB to 64kiB for
-	faster reading.
-
-2015-08-03  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* inilex.ll: Introduce HEX and B64 definitions, use them in the
-	rules section.  Parse both SHA512 and SHA512-Base64URL checksums
-	to the SHA512 token.
-	* iniparse.yy (packagedata): Remove all occurences of the
-	SHA512B64URL token.
-
-2015-08-03  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* install.cc (chksum_one): If MD5 checksum is not available, then
-	SHA512 must always be checked even if just against the zeroed
-	digest as initialized.  Otherwise a package with no checksum would
-	be treated as valid.
-
-2015-08-03  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* ini.h (nibbled1): Fix a thinko in this macro that made the
-	result always zero.
-	(hexnibble, nibbled1, b64url, b64d1, b64d2, b64d3): Use character
-	literals for all numeric constants dealing with characters.
-	Remove trailing semicolons.
-
-2015-08-03  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* csu_util/MD5Sum.cc (str): The stream modifiers are not sticky
-	and must be applied for each conversion.
-
-2015-08-01 David Hoke  <d_hoke@hotmail.com>
-
-	* download.cc (IncludeSource): New command line switch
-	-I/--include-source.  Automatically download sources
-	associated with any binary package being downloaded when
-	IncludeSource is true.
-	* install.cc (do_install_thread): Automatically install
-	sources associated with any binary package being installed
-	when IncludeSource is true.
-
-2015-08-01  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* choose.cc (PruneInstallOption): New option -Y/--prune-install.
-	(OnInit): Implement PruneInstallOption to downgrade packages
-	installed with a higher version and delete all packages not
-	explicitly requested to be installed.  This brings an existing
-	installation to the same state a fresh installation would create.
-	Put the handling for upgrade==true into a separate else branch.
-
-2015-07-26  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* iniparse.yy (singleitem): Fix a copy-and-paste bug, use
-	SHA512Line for SHA512 standalone checksums (unused in setup.ini).
-
-2015-07-01  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* ini.cc: Construct setup_ext_list from array until we can use
-	C++11 aggregate initializers.
-	(decompress_ini): Refactored for use from do_local_ini and
-	do_remote_ini.  Change outdated comment about setup.ini
-	uncompressed size.
-	(check_ini_sig): Factor out signature check.
-	(fetch_remote_ini): Refactored for use from do_remote_ini.
-	(do_local_ini): Iterate over search results in found_ini_list.
-	Use decompress_ini and check_ini_sig.
-	(do_remote_ini): Iterate over known setup file extensions from
-	setup_ext_list with early-out semantics, preferring ".xz" over
-	".bz2" over ".ini" extension.  Use fetch_remote_ini and
-	check_ini_sig.
-	* ini.h: Remove unused macros.
-	* IniParseFindVisitor.cc: Remove, the search is already done by
-	SetupFindVisitor in do_from_local_dir.
-	* IniParseFindVisitor.cc: Ditto.
-	* Makefile.am (@SETUP@_SOURCES): Ditto.
-
-2015-07-01  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* fromcwd.cc: Remove unused includes.  Add global found_ini_list
-	to record the search result.
-	(SetupFindVisitor): Make setup.{ini,bz2,xz} known and provide bool
-	private variables to record whether we found them.  Another bool
-	inidir to indicate whether we are currently inside a directory
-	where setup.ini files should exist.
-	(SetupFindVisitor::visitFile): When inidir is true, check if a
-	setup file with one of the known extensions was found and set the
-	corresponding bool variables.
-        (SetupFindVisitor::visitDirectory): Set inidir when appropriate.
-	Recurse into directories only if they are potential mirror dirs,
-	based on level. Truncate search and recurse into inidir.  Record
-	any setup files in found_ini_list while preferring ".xz" over
-	".bz2" over ".ini" extension.
-	(SetupFindVisitor::operator bool): Return true when found_ini_list
-	is non-empty.
-	(do_from_local_dir): Restrict search to either a single mirror
-	hierarchy or multiple mirrors hierarchy; setup files directly in
-	local directory or mixed hierarchies are no longer recognized.
-	The setup files must be present in an architecture dependent
-	directory of "x86/" or "x86_64/", either in the local directory
-	for single mirror or one level down for multiple mirrors.
-
-2015-07-01  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* ini.h: Declare extern SetupBaseName, SetupArch and SetupIniDir.
-	Redefine macros to use them.
-
-	* main.cc: Provide option "-i/--ini-basename" to set the basename
-	for setup, keep the default as "setup" and store in SetupBaseName.
-	Initialize SetupArch and SetupIniDir based on effective
-	architecture.
-
-2015-06-11  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* inilex.ll: Increase read buffer size for the lexer input buffer
-	to 64kiB.
-
-2015-06-11  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* io_stream.cc (copy): Increase read buffer size for io_stream to
-	64kiB.  Use sizeof operator instead of repeating magic constant.
-
-2015-06-07  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* ini.h: Add macros for use within the implementation of the
-	checksum parsers.  Hexdigest requires a 2-to-1 and Base64 a 4-to-3
-	conversion.  Base64 uses the filename and URL safe alphabet from
-	RFC4648.  It would be trivial to additionally process the normal
-	Base64 alphabet but we don't want to allow that in order to be
-	able to use the checksums as filenames without further conversion.
-	(hexnibble, b64url): Process single input character to input value.
-	(nibbled1): Convert 2 processed input values into 1 output value.
-	(b64d1, b64d2, b64d3): Convert 4 input values into 3 output
-	values.
-	* iniparse.yy: Add SHA512B64URL checksum in addition to MD5 and
-	SHA512.  Keep symmetry with MD5LINE and also define SHA512LINE
-	syntax.
-	* inilex.ll: Implement existing MD5 and SHA512 checksum parsers
-	using new macros.  Implement new SHA512B64URL parser using new
-	macros.  Enforce Base64 alphabet as defined in RFC4648 with no
-	padding to enable direct use of checksum values as filenames.
-	Implement SHA512LINE parser.
-
-2015-03-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (sha512_one): Raise buffer size to 64K for performance
-	reasons.
-
-2015-03-04  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* archive_tar.cc (next_file_name): Silence error for 'g' and 'x'
-	type headers.
-
-2015-03-04  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* archive_tar.cc (archive_tar): Convert from fprintf(stderr, ...)
-	to LogBabblePrintf() or LogPlainPrintf() as appropriate.
-
-2015-03-04  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* msg.cc (msg): Remove.
-	* msg.h (msg): Ditto.
-	* compress_xz.cc (read, bid_xz, bid_lzma): Convert from msg() to
-	LogBabblePrintf() or LogPlainPrintf() as appropriate.
-	* crypto.cc (MESSAGE): Ditto.
-	* desktop.cc (make_link, start_menu, desktop_icon)
-	(check_desktop, check_startmenu): Ditto.
-	* gpg-packet.cc (MESSAGE): Ditto.
-	* ini.cc (do_ini_thread): Ditto.
-	* simpsock.cc (SimpleSocket): Ditto.
-
-2015-03-04  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* LogSingleton.cc (LogBabblePrintf, LogPlainPrintf): Add.
-	* LogSingleton.h: Ditto.
-
-2015-03-05  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* package_meta.cc (isManuallyWanted, isManuallyDeleted): Demote
-	overly talkative messages to LOG_BABBLE, so that they won't
-	clutter stdout by default.
-
-2015-03-02  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* LogFile.cc (endEntry): Remove msg().
-
-2015-03-02  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* LogFile.cc (VerboseOutput): Add option.
-	(endEntry): Only write LOG_PLAIN to stdout, unless VerboseOutput.
-
-2015-03-02  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* res.rc (IDD_FILE_INUSE): Add 'Retry' button. Make larger.
-	* install.cc (FileInuseDlgProc): Polish text.  Handle IDIGNORE.
-	(installOne): Ditto.
-
-2015-03-02  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* PickView.cc (init_headers): More correctly size "Bin?" and
-	"Src?" columns.
-
-2015-02-18  Corinna Vinschen  <corinna@vinschen.de>
-
-	* PickPackageLine.cc (PickPackageLine::click): Call
-	packagemeta::set_action with current trust level as argument.
-	* package_meta.cc  (packagemeta::set_action): Take trust level as
-	argument.  When the user picks a package for the first time (from
-	"Skip"), pick the version matching the current trust level.  Improve
-	comments.
-	* package_meta.h (class packagemeta): Add member user_picked.
-	(packagemeta::packagemeta): Initialize user_picked to false.
-	(packagemeta::set_action): Align prototype to above change.
-
-2015-02-16  Achim Gratz  <ASSI <Stromeko@NexGo.DE>>
-
-	* README: Adapt the documentation to the recent changes and some
-	not-so-recent ones.
-
-2015-02-16  Achim Gratz  <ASSI <Stromeko@NexGo.DE>>
-
-	* Makefile.am (setup-src): Create file list for archive from
-	git-ls-files instead of cvs and create an XZ compressed archive.
-
-2015-02-16  Achim Gratz  <ASSI <Stromeko@NexGo.DE>>
-
-	* Makefile.am (VER): Use git-describe to construct version string
-	based on annotated release tags.
-	(setup_version.c): Echo setup version, use round parens instead of
-	curlies.
-
-2015-02-10  Corinna Vinschen  <corinna@vinschen.de>
-
-	* Makefile.am (VER): Don't use ChangeLog revision number since git
-	doesn't maintain it.  Use ChangeLog's commit count instead.
-
-2015-02-07  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* install.cc (preremoveOne): Allow dash scripts and ".cmd" as an
-	additional extension for WIndows batch files.
-
-2015-02-06  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_meta.h (packagemeta::trustp): Make sure that curr and
-	installed exist before using them in version comparisons.  Install exp
-	over installed only if exp has a higher version number than installed.
-
-2015-02-05  Corinna Vinschen  <corinna@vinschen.de>
-
-	Throughout, change preceeding patch from SHA256 to SHA512.
-	* Makefile.am (BASECXXFLAGS): Add -Wno-attributes for the sake of
-	sha2.c.
-
-2015-02-05  Corinna Vinschen  <corinna@vinschen.de>
-
-	Prepare for changing from MD5 to SHA256 checksums.
-	* IniDBBuilder.h (IniDBBuilder::buildInstallSHA256): Declare as pure
-	virtual method.
-	(IniDBBuilder::buildSourceSHA256): Ditto.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::buildInstallSHA256):
-	Declare.
-	(IniDBBuilderPackage::buildSourceSHA256): Ditto.
-	* IniDBBuilderPackage.cc: Formatting changes.
-	(IniDBBuilderPackage::buildInstallSHA256): New method to store SHA256
-	sum for binary package.
-	(IniDBBuilderPackage::buildSourceSHA256): Ditto for source package.
-	* Makefile.am (@SETUP@_SOURCES): Add sha256sum.c and sha256sum.h.
-	* inilex.ll: Formatting changes.  Implement string recognition for
-	SHA256 sums.
-	* iniparse.yy: Define new token.  Allow SHA256 as well as MD5 checksums.
-	* install.cc (do_install_thread): Call chksum_one instead of md5sum.
-	(sha256_str): New static function to create SHA256 checksum string for
-	log output.
-	(sha256_one): New function to compute SHA256 checksum for file.
-	(md5_one): Move validity tests into chksum_one.
-	(chksum_one): New static function.  Call either sha256_one
-	or md5_one depending on checksum read from ini file.
-	* package_source.h (packagesource::packagesource): Initialize sha256sum.
-	(packagesource::sha256sum): New member.
-	* sha2.c: New file, taken from OpenBSD.
-	* sha2.h: New file, taken from OpenBSD.
-
-2015-02-04  Corinna Vinschen  <corinna@vinschen.de>
-
-	* Throughout, include LogFile.h instead of LogSingleton.h where
-	required.
-	* LogFile.cc (LogFile::exit_msg): Convert globally available variable
-	to protected, static LogFile member.
-	(LogFile::exit): Accept second parameter to decide if the end of install
-	message is  to be printed.  Revert to using the exit_code as is.
-	* LogFile.h (LogFile::setExitMsg): New static method.  Use throughout
-	rather than setting exit_msg directly.
-	(LogFile::getExitMsg): Ditto.
-	(LogFile::exit): Add second parameter to prototype.
-	(LogFile::exit_msg): New static member.
-	(Logger): New macro defining simplified access th logger instance.
-	Use throughout in place of LogSingleton::GetInstance and direct access
-	to theLog.
-	* LogSingleton.h (LogSingleton::exit): Add second parameter to
-	prototype.
-	* desktop.cc (theLog): Remove extern declaration.
-	(set_status): Call Logger ().getExitMsg () instead of
-	accessing exit_msg directly.
-	* localdir.cc (theLog): Remove extern declaration.
-	* main.cc (theLog): Remove.
-	(WinMain): Introduce local variables to store requirement to print
-	help output and if command line options were used incorrectly.  Use
-	throughout function.
-
-2015-02-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* LogFile.cc (LogFile::exit): Deconstify exit_code.  Handle
-	exit_code -1 special (instead of IDS_ELEVATED).  Add comments to
-	explain.
-	* LogFile.h (LogFile::exit): Deconstify exit_code in prototype.
-	* main.cc (WinMain): Restructure code.  Revert to always initializing
-	log output.  Don't generate log files if setup is going to elevate
-	itself, or if only help output is requested.  Set exit_code to -1 in
-	call to LogFile::exit in the cases we don't want a log (elevate/help).
-
-2015-01-28  Corinna Vinschen  <corinna@vinschen.de>
-
-	* choose.cc (MirrorOption): Add experimental local mirror option.
-	(ChooserPage::OnInit): Call packagemeta::ScanDownloadedFiles with
-	value of MirrorOption as argument.
-	* download.cc (check_for_cached): Add bool parameter.  If true, assume
-	correctness of download (==mirror) directory without checking files.
-	* download.h (check_for_cached): Add bool parameter to prototype,
-	default to false.
-	* package_meta.cc (packagemeta::ScanDownloadedFiles): Add bool
-	parameter.  Use to compute flag to call packageversion::scan with.
-	* package_meta.h (packagemeta::ScanDownloadedFiles): Align prototype.
-	* package_version.cc (packageversion::scan): Add bool parameter.  Call
-	check_for_cached with value of this parameter.
-	* package_version.h (packageversion::scan): Align prototype.
-
-2015-01-28  Corinna Vinschen  <corinna@vinschen.de>
-
-	* PickPackageLine.cc (PickPackageLine::click): Rearrange code.  Switch
-	package to "Uninstall" if neither binary, nor source package are picked.
-	Explain why.
-	* choose.cc (ChooserPage::OnInit): Fix CleanOrphansOption broken with
-	latest patch.  Reformat slightly.
-	* package_meta.cc (packagemeta::set_action): Rearrange and further
-	simplify code.  Make sure to have binary and source version never
-	unpicked at the same time to avoid spurious uninstallation of package.
-	Try to comment thoroughly.
-
-2015-01-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* PickPackageLine.cc (PickPackageLine::paint): Call trustp with default
-	flag set to false.
-	(PickPackageLine::click): Drop parameter from packagemeta::set_action
-	call.
-	(PickPackageLine::set_action): Call trustp with default flag set to
-	true.
-	* choose.cc (ChooserPage::OnInit): Call trustp with default flag set to
-	true to fetch default package version, rather than defaulting to curr.
-	* package_db.cc (packagedb::defaultTrust): Call trustp with default
-	flag set to true.
-	* package_meta.cc (packagemeta::set_action): Drop default_version
-	parameter.  Rewrite to simplify mechanism, and to account for correct
-	stepping through versions if installed version is not available anymore.
-	* package_meta.h (packagemeta::set_action): Align prototype.
-	(packagemeta::trustp): Add bool to request default package handling.
-	Add code to make sure not to downgrade packages by default.
-	* package_version.cc (processOneDependency): Call trustp with default
-	flag set to false.
-	* prereq.cc (PrereqChecker::getUnmetString): Ditto.
-	(PrereqChecker::selectMissing): Ditto.
-
-2015-01-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_version.cc (packageversion::compareVersions): Get arguments
-	by const references instead of by value.
-	* package_version.h (packageversion::compareVersions): Match prototype.
-	* res.rc: Bump version date.
-
-2014-12-09  Yaakov Selkowitz  <yselkowitz@cygwin.com>
-
-	* package_source.cc (packagesource::set_canonical): Fix handling
-	of package release number containing a period.
-
-2014-11-28  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* script.cc: New static string dash.
-	(init_run_script): Initialize dash.
-	(run): Implement dash as an extra shell type that is invoked for
-	suffix ".dash".  Implement suffix ".cmd" as an alias for ".bat".
-
-2014-11-28  Achim Gratz  <Stromeko@NexGo.DE>
-
-	* install.cc (do_install_thread): Remove initialization for
-	run_script.
-	* postinstall.cc (do_postinstall_thread): Remove initialization
-	for run_script.  Implement stratified postinstall (hardcode three
-	strata for now).  For each stratum, run perpetual scripts first
-	after sorting them as ASCII, then the postinstall scripts just
-	installed, then check for dormant scripts in postinstall and try
-	to run those.
-	(PerpetualFindVisitor): New helper class to pick up perpetual
-	scripts.
-	(RunFindVisitor): Use new Script member function and pick up only
-	runnable non-perpetual scripts.
-	* script.h (Script::baseName): Add private variable.
-	(Script::scriptExtension): Ditto.
-	(Script::scriptStratum): Ditto
-	(Script::scriptType): Ditto
-	(Script::allowedStrata): Ditto
-	(Script::allowedTypes): Ditto
-	(Script::match): New private member function.
-	(Script::not_p): New public member function to check for
-	non-perpetual runnable script.
-	(Script::is_p): Ditto, but for perpetual scripts.
-	(Script::operator ==): Qualify as const.
-	(Script::operator <): New const qualified, used for sorting as ASCII.
-	* script.cc (class Script): Implement those additional members.
-	(run): Implement using the new member variables and std::string
-	functions instead of C string manipulations.
-	(isAScript): Ditto.
-	(fullName): Ditto.
-	(baseName): Ditto.
-	(Script): Extend initialization section and calculate values for
-	member variables.  Move initialization for run_script into the constructor.
-
-2014-11-22  Achim Gratz  <Stromeko@nexgo.de>
-
-	* LogSingleton.h: Rename log macro to Log to avoid collision with
-	standard math function in some versions of g++.
-	* AntiVirus.cc: Replace invocations of log with Log.
-	* IniDBBuilderPackage.cc: Ditto.
-	* LogFile.cc: Ditto.
-	* PickView.cc: Ditto.
-	* archive.cc: Ditto.
-	* archive_tar.cc: Ditto.
-	* choose.cc: Ditto.
-	* cygpackage.cc: Ditto.
-	* download.cc: Ditto.
-	* geturl.cc: Ditto.
-	* ini.cc: Ditto.
-	* install.cc: Ditto.
-	* io_stream.cc: Ditto.
-	* io_stream_cygfile.cc: Ditto.
-	* localdir.cc: Ditto.
-	* main.cc: Ditto.
-	* mount.cc: Ditto.
-	* msg.cc: Ditto.
-	* net.cc: Ditto.
-	* nio-ftp.cc: Ditto.
-	* package_db.cc: Ditto.
-	* package_meta.cc: Ditto.
-	* package_version.cc: Ditto.
-	* prereq.cc: Ditto.
-	* processlist.cc: Ditto.
-	* proppage.cc: Ditto.
-	* root.cc: Ditto.
-	* script.cc: Ditto.
-	* site.cc: Ditto.
-	* source.cc: Ditto.
-	* threebar.cc: Ditto.
-	* win32.cc: Ditto.
-	* window.cc: Ditto.
-
-2014-11-22  Achim Gratz  <Stromeko@nexgo.de>
-
-	* main.cc (WinMain): Show parameter usage before exiting when
-	options processing was unsuccessful (this usually means that an
-	unknown option was given on the command line).
-
-2014-11-20  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (Installer::StandardDirs): Add /etc/fstab.d, /dev,
-	/dev/mqueue, /dev/shm.  Sort array alphabetically.
-
-2014-11-04  Achim Gratz  <Stromeko@nexgo.de>
-
-	* Makefile.am: Provide new targets "strip" and "upx" to remove
-	debugging symbols and compress the executable using UPX.
-	* README: Change description of how to produce stripped and compressed
-	binaries to use the new make targets.
-
-2014-10-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* setup.exe.manifest: Add Windows 10 OS GUID.
-	* setup64.exe.manifest: Ditto.
-
-2014-09-27  Eric Blake  <eblake@redhat.com>
-
-	* res.rc: Fix missing space.
-
-2014-04-19  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* site.cc (init): Handle sitenames which aren't FQDNs correctly.
-
-2014-04-19 Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* site.cc (PopulateListBox): Select listbox items by finding the
-	index of the item with a matching full URL, not by LB_FINDSTRING
-	which does an inexact match on the displayed URL.
-
-2013-11-18  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* msg.cc (mbox): Generalize to a MessageBox wrapper which knows
-	what to do in unattended mode.
-	* msg.h: Add prototype.
-	* ini.cc (IniParseFeedback): Use here rather than MessageBox.
-
-2014-04-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (read_mounts): Don't create rootdir key when just fetching
-	info from registry.
-
-2014-04-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (is_admin): Drop function.  It's incorrectly implemented
-	and redundant.
-	(create_install_root): If installing the setup rootdir entry to HKLM
-	results in ERROR_ACCESS_DENIED, fall back to installing into HKCU.
-	Don't exit with a fatal error if writing the registry key fails.  Just
-	pop up an informative message box instead.  Also log access denied.
-	(read_mounts): call nt_sec.isRunAsAdmin instead of removed is_admin.
-	(NTSecurity::isRunAsAdmin): Fix formatting.
-
-2014-03-10  Corinna Vinschen  <corinna@vinschen.de>
-	    Jon Beniston <jon@beniston.com>
-
-	* main.cc (WaitOption): New -W/--wait option.
-	(WinMain): Rearrange code to make sure only the actual worker
-	instance of setup logs into the setup.log and setup.log.full files.
-	Call NTSecurity::initialiseWellKnownSIDs explicitely.  Explain why.
-	If WaitOption is given, let the parent process wait for the elevated
-	child process.
-	* win32.cc (NTSecurity::initialiseWellKnownSIDs): Drop generating
-	log messages.
-	(NTSecurity::setDefaultSecurity): Drop call to initialiseWellKnownSIDs.
-	* win32.h (NTSecurity::initialiseWellKnownSIDs): Make public.
-
-2014-03-10  Jon Beniston <jon@beniston.com>
-
-	* main.cc (WinMain): If setup elevates, let the parent wait for the
-	child process to accommodate enclosing installers.
-
-2013-11-19  Corinna Vinschen  <corinna@vinschen.de>
-
-	* setup.exe.manifest: Add Windows 8.1 GUID.
-	* setup64.exe.manifest: Ditto.
-
-2013-11-18  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (nt_fopen): Rename from fopen.  Add permission parameter.
-	Drop C binding.  Move comment.
-	* filemanip.h (nt_fopen): Declare.
-	* geturl.cc (get_url_to_file): Call nt_fopen instead of fopen.
-	* nio-file.cc (NetIO_File::NetIO_File): Ditto.
-	* main.cc (dyn_AttachConsole): Remove.
-	(dyn_GetLongPathName): Remove.
-	(set_dynaddr): Remove.
-	(set_cout): Just call AttachConsole directly.
-	(WinMain): Drop call to set_dynaddr.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* resource.h (IDC_SOURCE_SUBTEXT): Define.
-	* res.rc: Define text below header as IDC_SOURCE_SUBTEXT to allow
-	reconfiguration.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* root.cc: Move inline definitions of GetDlgItemRect and
-	SetDlgItemRect from here...
-	* win32.h: ...to here, for potential usage in other dialogs.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* res.rc: Fix size and position of rootdir textbox and button.
-	Align size and position of localdir fields to rootdir fields for
-	optical reasons.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* resource.h (IDC_ROOTDIR_SUBTEXT): Fix typo.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* resource.h (IDC_ROOTDIR_SUBTEXT): Define.
-	* res.rc: Define text below header as IDC_ROOTDIR_SUBTEXT to allow
-	reconfiguration.
-
-2013-11-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (read_mounts): Drop setting root_text.
-	* res.rc: Set content of root dir dialog correctly right from the start.
-	Remove unused items.
-	* resource.h (IDC_ROOT_TEXT): Remove.
-	(IDC_ROOT_BINARY): Ditto.
-	(IDC_FILEMODES_LINK): Ditto.
-	(IDC_MODE_GRP): Ditto.
-	(IDC_MODE_TEXT): Ditto.
-	(IDC_MODE_BIN): Ditto.
-	* root.cc (Root): Set "Install For" group items to CP_STRETCH.
-	Remove all "text/binary" items.
-	(rb): Remove.
-	(check_if_enable_next): Drop test for root_text.
-	(load_dialog): Remove all code setting items differently to what's
-	specified as default in the resources, in favor of setting this
-	correctly in the resources.
-	(save_dialog): Drop setting root_text.
-	(RootPage::OnMessageCmd): Drop IDC_ROOT_TEXT/IDC_ROOT_BINARY handling.
-	(RootPage::OnInit): Drop IDC_FILEMODES_LINK handling.
-	(RootPage::OnNext): Drop "text"/"binary" state from debug output.
-	* state.cc (root_text): Remove.
-
-2013-11-14  Corinna Vinschen  <corinna@vinschen.de>
-
-	* archive_tar.cc: Drop commented out static variable definitions.
-	(archive_tar::next_file_name): Replace MAX_PATH with CYG_PATH_MAX.
-	* archive_tar.h (tar_state::filename): Ditto.
-	* cygpackage.cc (cygpackage::cygpackage): Ditto.
-	* cygpackage.h (cygpackage::getfilenamebuffer): Ditto.
-	* desktop.cc (start_menu): Add comment.  Drop Windows 9x considerations.
-	(desktop_icon): Ditto.
-	(check_desktop): Ditto.
-	(check_startmenu): Ditto.
-	* diskfull.cc (diskfull): Drop Windows 9x considerations.  Convert
-	incoming path to wide char and call GetDiskFreeSpaceExW.
-	* filemanip.cc (fopen): New function, overriding MSVCRT function.
-	Explain why.
-	(remove): Ditto.
-	(rename): Ditto.
-	(_access): Ditto.
-	* install.cc (check_for_old_cygwin): Add comment.
-	* localdir.cc (browse): Add comment.
-	(LocalDirPage::OnNext): Don't rely on being able to change CWD.
-	Call GetFileAttributesW instead and change conditional expressions
-	accordingly.  Explain why.  Rename trySetCurDir to tryLocalDir to
-	avoid confusion.  Call do_from_local_dir rather than do_fromcwd.
-	* mount.cc (read_mounts): Add comments.  Call GetSystemWindowsDirectory
-	rather than GetWindowsDirectory since that's what we're really want.
-	* postinstall.cc (do_postinstall_thread): Drop setting CWD.  Scripts
-	are called with CWD set to Cygwin root dir anyway.
-	* processlist.cc (Process::getName): Allow CYG_PATH_MAX sized module
-	names. 
-	(Process::isModuleLoadedInProcess): Allow CYG_PATH_MAX sized module
-	names.
-	* root.cc (browse): Add comment.
-	* script.cc (sanitize_PATH): Call GetSystemWindowsDirectory rather than
-	GetWindowsDirectory since that's what we're really want.
-	(Script::run): Allow cmdline up to CYG_PATH_MAX chars to allow longer
-	script paths.
-	* win32.h (CYG_PATH_MAX): Define as 4096 as Cygwin's PATH_MAX.
-
-2013-11-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc (STARTMENUDIR): Define.
-	(check_startmenu): Use STARTMENUDIR instead of constant string.
-	(DesktopSetupPage::OnActivate): Use TARGET and TERMINALTITLE defines
-	to simplify calls to check_startmenu and check_desktop.
-
-2013-11-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc: Drop dependency on static variable and order of
-	initialization.  Allow easier reconfiguration.
-	(iconname): Drop static variable.
-	(make_link): Add parameter to specify icon path.
-	(start_menu): Ditto.  Call make_link accordingly.
-	(desktop_icon): Ditto.
-	(save_icon): Take windows path as first parameter.  Drop setting
-	global iconname variable.
-	(TARGET): Define.
-	(DEFAULTICON): Define.
-	(TERMINALICON): Define.
-	(TERMINALTITLE): Define.
-	(do_desktop_setup): Rearrange code to use aforementioned defines and
-	align function calls to aforementioned changes.
-
-2013-11-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (CYGWIN_INFO_CYGNUS_REGISTRY_NAME): Remove now unused
-	pre-1.7 registry key name.
-	(CYGWIN_INFO_CYGWIN_MOUNT_REGISTRY_NAME): Ditto.
-	(CYGWIN_INFO_CYGDRIVE_FLAGS): Ditto.
-	(CYGWIN_INFO_CYGDRIVE_PREFIX): Ditto.
-	(CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX): Ditto.
-
-2013-11-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* Makefile.am (EXTRA_DIST): Add cygwin-setup.ico and
-	cygwin-terminal.ico.
-
-2013-11-07  Corinna Vinschen  <corinna@vinschen.de>
-
-	* LogFile.cc (LogFile::exit): Don't print ending message after
-	successful elevation.
-	* res.rc (IDS_ELEVATED): New string.
-	* resource.h (IDS_ELEVATED): New string resource number.
-
-2013-11-07  Shaddy Baddah  <lithium-cygwin@shaddybaddah.name>
-
-	* LogFile.cc (LogFile::flushAll): New function to flush log all logging
-	to files without exiting (as LogFile::exit does).
-	* LogFile.h: Declare new method closeAll.
-	* main.cc (NoAdminOption): Add new CLI options -B/--no-admin. This
-	option allows the user to suppress privilege elevation (in tandem with
-	"asInvoker" requestedExecutionLevel changes to exe manifests).
-	(WinMain): check if setup run with Administrator privilege and if the
-	NoAdminOption has not been specified, attempt to elevate privilege to an
-	Administrator via WINAPI ShellExecuteEx().
-	* setup.exe.manifest: Add requestedExecutionLevel of asInvoker to allow
-	suppression of privilege elevation.
-	* setup64.exe.manifest: Modify requestedExecutionLevel from
-	requireAdministrator to asInvoker to allow suppression of privilege
-	elevation. Continuity of privilege elevation attempt on startup is
-	implemented by main.cc changes to WinMain().
-	* win32.cc (NTSecurity::isRunAsAdmin): New function to allow main.cc to
-	check if setup.exe has been run with privilege elevated to Administrator
-	level.
-	* win32.h: Declare new method isRunAsAdmin.
-
-2013-10-07  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* prereq.cc (OnUnattended): Also select missing requirements in unattended
-	mode, since it's no longer a side effect of the chooser.
-
-2013-09-17  Christopher Faylor <me.cygwin2013@cgf.cx>
-
-	* filemanip.cc (find_tar_ext): Generalize search for .tar extension,
-	avoiding looking for specific compression types.
-
-2013-08-12  Achim Gratz  <Stromeko@Stromeko.DE>
-
-	* csu_util/MD5Sum.h (MD5Sum): Remove declaration for conversion
-	operator std::string().  Remove implementation of member
-	function str() using the conversion operator.
-	* csu_util/MD5Sum.cc (MD5Sum::str): Reuse implementation of conversion
-	operator std::String to implement member function str() with.
-
-2013-08-09  Achim Gratz  <Stromeko@Stromeko.DE>
-
-	* csu_util/MD5Sum.cc (MD5Sum::operator std::string() const):
-	Reimplement using stringstream to avoid a SEGV.
-
-2013-07-29  Corinna Vinschen  <corinna@vinschen.de>
-
-	* localdir.cc (LocalDirPage::OnNext): Accommodate architecture parameter
-	in IDS_NO_CWD string.
-	(IDS_NO_CWD): Add string argument for architecture in setup name.
-
-2013-07-29  Corinna Vinschen  <corinna@vinschen.de>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildVersion): Align
-	warning string to target architecture.
-
-2013-07-26  Achim Gratz <Stromeko@Stromeko.DE>
-
-	* choose.cc (UpgradeAlsoOption): Add new CLI option -g/--upgrade-also.
-	(CleanOrphansOption): Add new CLI option -o/--delete-orphans.
-	(OnInit): Implement -g/--upgrade-also, considers all installed packages
-	as candidates for upgrades (the default when no CLI package or category
-	options have been given) also when manual additions or removals are
-	requested at the same time.  Implement -o/--delete-orphans, considers
-	installed packages that do not exist anymore in the package repositories
-	as candidates for deletion.
-
-2013-07-24  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* bootstrap.sh : Add support for x86_64-w64-mingw32 toolchain.
-
-2013-07-25  Achim Gratz <Stromeko@Stromeko.DE>
-
-	* package_db.h (packagedb::addCommandLinePackages): Remove declaration.
-	* package_db.cc (packagedb::addCommandLinePackages): Remove.
-
-2013-07-25  Achim Gratz <Stromeko@Stromeko.DE>
-
-	* choose.h (hasManualSelections): Declare new variable.
-	* choose.cc (ChooserPage::OnInit): Re-implement package handling
-	depending on options given on CLI using package actions instead of
-	package_meta low-level functions.  When no CLI package or category
-	options have been given, upgrade installed packages.  Do not check for
-	updates when packages are to be added or removed from the CLI, but this
-	behaviour can be requested with --upgrade-also.  A package that is
-	requested to be removed and also added at the same time gets reinstalled
-	or upgraded (when version curr != installed).  Uninstalled packages in
-	categories "Base" or "Misc" are always selected for installation;
-	installed packages in these categories are not eligible for deletion
-	and will be reinstalled or upgraded instead.
-	* package_meta.h (packagemeta::ismanuallyDeleted): Declare new method.
-	* package_meta.cc (DeletePackageOption): Add new CLI option
-	-x/--remove-packages, packages listed here are considered candidates
-	for deletion.
-	(DeleteCategoryOption): Add new CLI option -c/--remove-categories,
-	packages belonging to categories listed here are considered candidates
-	for deletion.
-	(hasManualSelections): Additional boolean to record if any manual
-	installations or deletions have been requested.
-	(packagemeta::isManuallyDeleted): Implement along the same lines as
-	isManuallyWanted, but for deletion candidates.
-
-2013-07-25  Achim Gratz <Stromeko@Stromeko.DE>
-
-	* choose.cc (ChooserPage::createListview): Remove superflous and
-	detrimental default trust setting.  This has already been set correctly
-	in OnInit.
-
-2013-07-24  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* configure.ac: Change setup64.exe -> setup.exe.
-
-2013-07-23  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* install.cc (_custom_MessageBox): Restore custom message box.
-	(installOne): If processList is empty, use the custom message box
-	to ask if we should retry or continue.
-	* res.rc (IDD_FILE_INUSE): Use IDCONTINUE for continue buttom, to be
-	the same custom message box.
-
-2013-07-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* root.cc (directory_contains_wrong_version): Check cygwin1.dll's
-	machine type.  If that fails, fall back to testing of cygcheck.exe's
-	binary type.  Tweak message text slightly for clearness.  Add comment
-	to explain what this function does.
-
-2013-07-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* root.cc (directory_contains_wrong_version): New function to check
-	setup machine type against installation machine type.
-	(RootPage::OnNext): Call directory_contains_wrong_version and refuse to
-	continue if it returns != 0.
-
-2013-07-22  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* IniParseFindVisitor.cc (iniParseFindVisitor::visitFile): Relax check
-	for SETUP_INI_DIR slightly.  Remove trailing SETUP_INI_DIR from mirror
-	directory or local downloaded packages will never be found.
-
-	* choose.cc (ChooserPage::OnInit): Fix some formatting.
-	* fromcwd.cc (SetupFindVisitor::visitFile): Relax check for
-	SETUP_INI_DIR slightly.
-	(ChooserPage::OnInit): Fix some formatting.
-	* ini.cc (do_local_ini): Remove name from unused parameter.  Fix some
-	formatting.
-	(do_ini_thread): Fix some formatting.
-
-	* package_version.cc (dumpAndList): Temporarily (?) just return from this
-	debugging function since it SEGVs otherwise.
-
-2013-07-12  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* iniparse.yy: Move ARCH and RELEASE to the header processing, where
-	they belong.
-
-2013-07-12  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* IniDBBuilder.h (IniDBBuilder::set_arch): New function.
-	(IniDBBuilder::set_release): New function.
-	(IniDBBuilder::arch): New storage for arch:.
-	(IniDBBuilder::arch): New storage for release:.
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::autodep): Fix cut/paste
-	error which ended up calling the wrong thing.
-	* ScanFindVisitor.cc (ScanFindVisitor::visitFile): Remove old code.
-	* cygpackage.cc (cygpackage::set_autodep): Implement to satisfy setup's
-	insane class hierarchy.
-	* cygpackage.h (cygpackage::set_autodep): See above.
-	(std::string autodep_regex): Ditto.
-	* package_version.cc (packageversion::set_autodep): Ditto.
-	* package_version.h (packageversion::set_autodep): Ditto.
-	* inilex.ll: Tokenize "arch:" and "release:".
-	* iniparse.yy: Parse ARCH and RELEASE.
-
-2013-07-03  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* win32.h (struct acl_t): Just enforce alignment using attribute.
-
-2013-07-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* FindVisitor.cc (FindVisitor::visitDirectory): Check tracking level
-	argument to limit the search depth.
-	* FindVisitor.h (FindVisitor::visitDirectory): Add tracking level
-	argument to declaration.
-	* IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Check
-	found file's basePath to end in SETUP_INI_DIR.
-	* find.cc (Find::accept): Accept additional tracking level argument
-	and submit to FindVisitor::visitDirectory.
-	* find.h (Find::accept): Add tracking level argument to declaration.
-	* fromcwd.cc (SetupFindVisitor::visitFile): Check found file's basePath
-	to end in SETUP_INI_DIR.
-	(do_fromcwd): Only search ini file two directory levels deep.
-	* ini.cc (do_local_ini): Ditto.
-	(do_remote_ini): Add SETUP_INI_DIR to current_ini_name.
-	* ini.h (SETUP_INI_DIR): New macro.
-	(SETUP_INI_FILENAME): Just define filename.
-	(SETUP_BZ2_FILENAME): Ditto.
-
-2013-07-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.h (struct acl_t): Use a union.
-
-2013-07-02  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.h (struct acl_t): Make sure struct is 4 byte aligned.
-
-2013-07-02  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* archive.cc (archive::extract_file): Reformat.  Always return at the
-	bottom.
-
-2013-07-02  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* archive.cc (archive::extract_file): Fix recently introduced bug:
-	don't fall through to next case.  break is your friend.
-
-2013-06-30  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* mount.cc (LFSTAB): Define.
-	(from_fstab): Use LFSTAB constant where appropriate.  Properly size
-	path array to include \etc\fstab.  Change len argument of mklongpath to
-	reflect the actual size of the destination argument.
-
-2013-06-29  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* archive.cc (archive::extract_file): Use named constants for return
-	values.
-	* archive.h (archive::extract_results): New enum.
-	(archive::extract_file): Use extract_results for return value.
-	* install.cc (Installer::installOne): Use archive::extract_results to
-	make decisions about archive::extract_file return.
-	* io_stream_cygfile.cc: Add a comment making return value clear.
-	* mkdir.cc: Ditto.
-
-2013-06-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* io_stream_cygfile.cc: Rearrange inclusion of headers to workaround
-	bug in older mingw-w64 system headers.  Drop unneeded include files.
-	* io_stream_file.cc: Drop unneeded include files.
-
-2013-06-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	Drop pre-1.7 mount point considerations.
-	* mount.cc (find2): Remove.
-	(remove1): Remove.
-	(remove_mount): Remove.
-	(create_mount): Remove.
-	(set_cygdrive_flags): Remove.
-	(get_cygdrive_flags): Remove.
-	(default_cygdrive): Remove.
-	(in_table): Remove.
-	(is_admin): Fix comment.
-	(read_mounts_9x): Remove.
-	(read_mounts): Drop call to read_mounts_9x.
-	* mount.h (create_mount): Remove declaration.
-	(set_cygdrive_flags): Ditto.
-	* script.cc (run): Fix comment.
-
-2013-06-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* Makefile.am (AM_CXXFLAGS): Add source file specific CXXFLAGS.
-	(inilex_CXXFLAGS): Add -Wno-sign-compare to workaround failing build
-	on Fedora 18 due to bison creating sign comparison mismatches in
-	generic yylex wrapper code.
-
-2013-06-22  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* ini.h (SETUP_BZ2_FILENAME): Reflect new architecture layout in ftp.
-	(SETUP_INI_FILENAME): Ditto.
-	* main.cc (Arch): New option.  Include StringOption.h for this.
-	(WinMain): Change is_64bit calculation to allow overriding from
-	command-line.  Issue error if bad value provided.
-	* res.rc: Move some text closer together.
-	* splash.cc: Include ini.h.  Add architecture to opening screen.
-
-	* UserSettings.cc (UserSettings::get): Don't try to open a filename
-	with the name of the key.  That's old behavior.
-
-2013-06-20  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* res.rc: Update copyright.
-
-2013-04-05  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am (EXTRA_DIST): Add setup64.exe.manifest.
-	(res.o): Depend on arch-specific manifest file.
-	* res.rc (CREATEPROCESS_MANIFEST_RESOURCE_ID): Add separate
-	definition for x86-64.
-	* setup.exe.manifest: Throughout, set processorArchitecture to x86.
-	Remove trustInfo section.
-	* setup64.exe.manifest: New file.
-
-2013-03-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc (do_desktop_setup): Install "Cygwin64 Terminal" link on
-	64 bit.
-	(DesktopSetupPage::OnActivate): Check for "Cygwin64 Terminal" link on
-	64 bit.
-	* main.cc (main_display): Avoid compiler warning on 64 bit.
-	* mount.cc (from_fstab): Take 2nd parameter as const by reference to
-	avoid potential crash due to scope issue.
-
-2013-03-14  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* configure.ac: Remove check for libmingw32.
-	(SETUP): Define EXE name based on host_cpu.
-	(MINGWTARGET): Remove.
-	* Makefile.am: Use SETUP throughout.  Remove MINGWTARGET conditional.
-	Add -lmingw32 to LDFLAGS.
-	* ini.h (is_64bit): Declare.
-	(SETUP_INI_FILENAME): Make dependent on value of is_64bit.
-	(SETUP_BZ2_FILENAME): Ditto.
-	* main.cc (is_64bit): Define based on compiler target.
-	* mount.h (SETUP_KEY_WOW64): Define based on value of is_64bit.
-	* install.cc (create_allow_protected_renames): Add SETUP_KEY_WOW64
-	flag to RegOpenKeyEx call.
-	* mount.cc: Throughout, add SETUP_KEY_WOW64 flag to all RegOpenKeyEx
-	and RegCreateKeyEx calls.
-	(read_mounts): Change default Cygwin root depending on is_64bit.
-
-2013-03-05  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	Throughout, drop support for Cygwin 1.5 and Windows pre-2000.
-
-2013-03-04  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* install.cc (FileInuseDlgProc): Fix return type.
-	* regex/regcomp.c (parse_dup_op): Fix invalid cast warning.
-	(create_token_tree): Ditto.
-	* setup.exe.manifest: Set processorArchitecture to "*".
-	Add explicit requestedExecutionLevel for 64-bit compatibility.
-
-2013-03-04  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am (inilint_extras): Remove autoload.c.
-	(setup_SOURCES): Ditto.
-	(setup_LDADD): Add ntdll and wininet.
-	(autoload.o): Remove rule.
-	* autoload.c: Remove file.
-
-2013-03-03  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am (res.o): Add rule to force rebuild upon change
-	to setup.exe.manifest, which is included by res.rc.
-
-2013-02-17  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* configure.ac: Rename from configure.in.
-	* configure.in: Delete.
-	* libgetopt++/configure.ac: Rename from configure.in.
-	* libgetopt++/configure.in: Delete.
-	* Makefile.am: Remove ill-advised iniparse.hh change.
-	* libgetopt++/Makefile.am: Use "modern" AM_CPPFLAGS rather than INCLUDES.
-	* inilex.ll: Add autodep token recognition.
-	* iniparse.yy: Handle autodep.
-	* IniDBBuilder.h (autodep): Define for base class.
-        * IniDBBuilderPackage.cc (IniDBBuilderPackage::autodep): Define.
-        * IniDBBuilderPackage.h (IniDBBuilderPackage::autodep): Declare.
-
-2013-02-17  Christopher Faylor  <me.cygwin2013@cgf.cx>
-
-	* Makefile.am: Add regex.c to list of sources.
-	(iniparse.hh): Rename if a iniparse.h has been created.
-	* regex/config.h: New file.
-	* regex/re_comp.h: New file.
-	* regex/regcomp.c: New file.
-	* regex/regex.c: New file.
-	* regex/regex.h: New file.
-	* regex/regex_internal.c: New file.
-	* regex/regex_internal.h: New file.
-	* regex/regexec.c: New file.
-	* processlist.cc (Process::isModuleLoadedInProcess): Avoid compiler
-	warning by changing 'i' to unsigned.
-
-2013-01-25  Achim Gratz <Stromeko@nexgo.de>
-        * README (HOW TO BUILD): Cross compiler package is now named
-        mingw-gcc-g++, also mention package upx as an optional dependency.
-
-2013-02-01  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-        * install.cc ( _custom_MessageBox): Remove custom message box.
-        (FileInuseDlgProc): Add file-in-use dialog box.
-        (installOne): Use processlist to list processes using a file, and
-        offer to kill them with the file-in-use dialog.
-        * res.rc (IDD_FILE_INUSE) : New dialog.
-        * resource.h (IDD_FILE_INUSE, IDC_FILE_INUSE_EDIT)
-        (IDC_FILE_INUSE_MSG, IDC_FILE_INUSE_HELP): Define corresponding
-        resource ID numbers.
-        * processlist.h: New file.
-        * processlist.cc: New file.
-        * Makefile.am (setup_LDADD): Add -lpsapi.
-        (setup_SOURCES): Add new files.
-
-2013-02-01  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-        * script.cc (::run, Script::run): Move the formatting of the command
-        line used for postinstall script running out to Script::run. Move the
-        logging of the command and it's output into ::run.
-        * script.h: Add ::run() prototype.
-
-2013-01-17  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* configure.in: Require automake 1.12.
-	* Makefile.am (BUILT_SOURCES): Update iniparse.h to iniparse.hh.
-	* iniparse.yy: Ditto.
-	* inilex.ll: Ditto.
-
-2013-01-16  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* threebar.cc (ThreeBarProgressPage::SetBar2): Change from long int to
-	long long int to handle more than 2GB of data.
-	* threebar.h (ThreeBarProgressPage::SetBar2): Update prototype.
-	* install.cc: Change md5sum and install counters to long long int.
-	* geturl.cc: Change download counter to long long int.
-	* geturl.h: Ditto.
-
-2012-11-08  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am (EXTRA_DIST): Remove libmd5-rfc files.
-	(setup_SOURCES): Ditto.
-	* download.cc: Remove unused include.
-	* csu_util/MD5Sum.cc: Port from libmd5-rfc to libgcrypt.
-	* csu_util/MD5Sum.h: Ditto.
-	* libmd5-rfc/*: Remove.
-
-2012-10-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* bootstrap.sh: Add support for i686-w64-mingw32 toolchain.
-	Remove support for gcc-3 -mno-cygwin.
-
-2012-09-12  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* README: Modernize.
-	* bootstrap.sh: Remove outdated options from configure.  Use mingw
-	compiler.
-	* configure.in: Remove AM_MAINTAINER_MODE.
-
-2012-09-04  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	Fix build with mingw-w64 headers.
-	* autoload.c: Define DECLSPEC_IMPORT for mingw-w64 headers.
-	* filemanip.h: Include <sys/types.h> to fix missing mode_t typedef
-	error with mingw-w64 headers.
-	* gpg-packet.cc: Include "win32.h" to avoid macro redefinition
-	errors with mingw-w64 headers.
-	(ARRAYSIZE): Do not redefine.
-	* main.cc (_argv): Declare if using mingw-w64 headers.
-	(WinMain): Move up _argv definition to before it is first used.
-	* ntdll.h: Include PSDK headers with mingw-w64 instead of DDK.
-	* package_message.h: Include "win32.h" instead of <windows.h>.
-	* propsheet.cc (PROPSHEETHEADER_V1_SIZE): Do not redefine.
-	* win32.h: Include <sys/types.h> to fix missing mode_t typedef
-	error with mingw-w64 headers.
-	Define DECLSPEC_IMPORT for mingw-w64 headers.
-
-2012-08-30  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	First step towards X86-64 compatibility.
-	* archive_tar.cc (archive_tar::next_file_name): Fix sscanf formats
-	for 64-bit size_t.
-	* choose.cc (ChooserPage::OnMouseWheel): Fix return type.
-	* choose.h (ChooserPage::OnMouseWheel): Ditto.
-	* filemanip.cc (nt_wfopen): Fix argument cast for _open_osfhandle.
-	* netio.cc (auth_proc): Fix return type.
-	* proppage.cc (PropertyPage::FirstDialogProcReflector): Fix return type.
-	Use SetWindowLongPtr and DWLP_* instead of SetWindowLong and DWL_*.
-	(PropertyPage::DialogProcReflector): Ditto.
-	(PropertyPage::DialogProc): Ditto.
-	(PropertyPage::OnMouseWheel): Ditto.
-	* proppage.h (PropertyPage::FirstDialogProcReflector): Fix return type.
-	(PropertyPage::DialogProcReflector): Ditto.
-	(PropertyPage::DialogProc): Ditto.
-	(PropertyPage::OnMouseWheel): Ditto.
-	* site.cc (drop_proc): Fix return type.
-	* window.cc (Window::FirstWindowProcReflector): Use GWLP_* with
-	SetWindowLongPtr calls.
-	(Window::WindowProcReflector): Ditto.
-
-2012-08-30  Jacek Caban <jacek@codeweavers.com>
-	    Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* main.cc: Remove CINTERFACE define.
-	(main_display): Use C++ syntax for COM.
-	* mklink2.cc: Remove CINTERFACE define.
-	(make_link_2): Use C++ syntax for COM.
-
-2012-08-21  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* setup.exe.manifest: Reorder "supportedOS" entries and add entry for
-	Windows 8.
-
-2012-06-03  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* main.cc: Remove __CYGWIN__ ifdefs.
-	(main): Ditto.
-
-2012-06-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am (setup_version.c): Respect silent rules.
-	(.rc.o): Ditto.
-	* configure.in: Enable silent rules with automake-1.11.
-
-2012-04-29  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* window.cc: Remove trailing whitespace.
-
-2012-04-28  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* io_stream_file.cc (io_stream_file::exists): Properly treat return
-	from GetFileAttributesW as a bit field so that a directory will not be
-	seen as "existing".
-
-2012-04-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* script.cc (run): Add quotes around file to allow spaces in path.
-	(Script::run): Add aforementioned quotes to log output as well.
-
-2012-03-08  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.h (FACTOR): Define, use correct value.
-	(NSPERSEC): Ditto.
-	* archive_tar.cc: Drop FACTOR and NSPERSEC definitions here.
-	* io_stream_cygfile.cc: Ditto.
-	* io_stream_file.cc: Ditto.
-
-2012-02-29  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.cc (NTSecurity::GetPosixPerms): Don't allow write permissions
-	in inheritable default permission ACEs for group and other if the
-	directory is an S_ISVTX dir.
-
-2012-02-24  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* bootstrap.sh: Don't assume that libgetopt++ exists in source directory.
-	* configure.in: Remove some old options.
-	* Makefile.am: Ditto.
-	* libgetopt++/Makefile.am: Ditto.
-	* libgetopt++/configure.in: Ditto.
-
-2012-02-24  Corinna Vinschen  <corinna@vinschen.de>
-
-	* main.cc (WinMain): Move call to nt_sec.setDefaultSecurity here so
-	it's called earlier in the process.  This avoids spurious error
-	messages in --help output.
-
-2012-02-23  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* main.cc (main_display): Move --help output from here ...
-	(WinMain): ... to here, so we don't logging of the current directory
-	and any errors from constructing a UserSettings object preceding the
-	--help output.
-
-2011-05-30 SZAVAI Gyula <szgyg@ludens.elte.hu>
-
-	* site.cc (SiteSetting::SiteSetting): Handle multiple
-	--site options.
-	* crypto.cc (verify_ini_file_sig): Handle multiple
-	--pubkey and --sexpr-pubkey options.
-	* package_meta.cc (packagemeta::isManuallyWanted): Handle
-	multiple --packages and --categories options.
-
-2012-02-22  Christopher Faylor  <me.cygwin2012@cgf.cx>
-
-	* res.rc: Change copyright notice to -2012.
-
-2012-02-19  Corinna Vinschen  <corinna@vinschen.de>
-
-	* PickView.cc (PickView::list_click): Mark variable refresh as unused
-	to avoid compiler warning.
-	* nio-ftp.cc (NetIO_FTP::ok): Remove variable code to avoid compiler
-	warning.
-	* proppage.cc (PropertyPage::DialogProc): Ditto for retval.
-
-	* setup.exe.manifest: Add supportedOS entries to avoid annoying
-	"This program might not have installed correctly" PCA message on
-	Windows 7.
-
-2011-12-22  Christopher Faylor  <me.cygwin2011@cgf.cx>
-
-	* compress.cc: Explicitly include needed header.
-	* compress_bz.cc: Ditto.
-	* mkdir.h: Ditto.
-	* io_stream_cygfile.cc: Eliminate obsolete attempt to build as
-	non-mingw.
-	* io_stream_file.cc: Ditto throughout.
-	* mkdir.cc: Ditto.
-
-2011-12-21  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* choose.cc (OnInit): Properly mark packages which were selected on
-	command line in unattended mode for download and installation.
-
-2011-09-08  Christopher Faylor  <me.cygwin2011@cgf.cx>
-
-	* io_stream.h: Just call sys/types.h here rather than using our own
-	version of ssize_t.
-
-2011-09-01  Corinna Vinschen  <corinna@vinschen.de>
-
-	* CONTRIBUTORS: Add Warren Young.
-
-2011-08-16  Corinna Vinschen  <corinna@vinschen.de>
-	    Warren Young  <warren@etr-usa.com>
-
-	* cygwin-setup.ico: Slightly modified.
-	* cygwin-terminal.ico: Ditto.
-
-2011-08-15  Corinna Vinschen  <corinna@vinschen.de>
-	    Warren Young  <warren@etr-usa.com>
-
-	* cygwin.ico: New, smoother 152x152 icon.
-
-2011-08-13  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* choose.cc (OnInit, createListview): Build the initial list of packages
-	to install in OnInit() not in CreateListView().  If packages were
-	selected on command line in unattended mode, just install those
-	packages.
-	* package_db.h (packagedb): Add addCommandLinePackages() method.
-	* package_db.cc (addCommandLinePackages): Add separate method to add
-	these so we can indicate if packages were added on the command line.
-
-2011-08-13  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* PickView.cc (defaultTrust): Move implementation which deals with
-	package db from here...
-	* package_db.cc (defaultTrust): ... to here.
-	* package_db.h (packagedb): ... a new member function.
-
-2011-08-12  Corinna Vinschen  <corinna@vinschen.de>
-
-	* res.rc: Move spash icon slightly.  Fix copyright.
-
-2011-08-12  Corinna Vinschen  <corinna@vinschen.de>
-	    Warren Young  <warren@etr-usa.com>
-
-	* cygwin-setup.ico: New file.
-	* cygwin-terminal.ico: New file.
-	* cygwin.ico: New icons.
-	* desktop.cc (make_link): Take additional argument to take arguments
-	for shortcut.  Append arg to argbuf.
-	(start_menu): Take additional argument to take argments for shortcut.
-	Add to call to make_link.
-	(desktop_icon): Ditto.
-	(save_icon): Take path and name of resource as arguments.  Replace
-	Cygwin icon if it's the old one.
-	(do_desktop_setup): Save Cygwin standalone and Cygwin terminal icons.
-	Rename desktop and start menu shortcut name to "Cygwin Terminal", use
-	the cygwin terminal icon for them, and point them to mintty.
-	* res.rc: Change splash icon to keep size of original icon.
-	(IDI_CYGWIN_SETUP): New entry.
-	(IDI_CYGWIN_TERMINAL): New entry.
-	(CYGWIN-SETUP.ICON): New entry.
-	(CYGWIN-TERMINAL.ICON): New entry.
-	* resource.h (IDI_CYGWIN_SETUP): Define.
-	(IDI_CYGWIN_TERMINAL): Define.
-
-2011-07-25  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* install.cc (do_install_thread): Only set progress bar output if at least
-	one package gets installed, to avoid a cosmetic issue.
-
-2011-07-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc (make_link): Create shortcuts to command.com only on 9x.
-
-2011-07-20  Andy Koppe  <andy.koppe@gmail.com>
-
-	* res.rc: Remove Prev button from chooser page.
-	* resource.h: Reflect removal of Prev button.
-	* package_meta.h (trustp): Ditto.
-	* choose.cc: Ditto.
-
-2011-04-24  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* download.cc (do_download_thread): Update progress display
-	when download phase starts
-
-2011-04-24  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* install.cc (do_install_thread): Report overall progress while
-	md5summing packages.
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* archive_tar_file.cc (read): Handle short reads
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* compress_bz.h (compress): Remove unused bufN member.
-	* compress_bz.cc (read): Handle bzip2 files containing multiple
-	streams
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* install.cc (extract_replace_on_reboot): New function containg code
-	extracted from...
-	(installOne): Report read errors differently to write errors
-	* archive.cc (extract_file): Distinguish read errors from write errors
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* io_stream.cc (copy): Propagate errors.
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* compress_bz.cc (read, peek): Consistently return -1 and set lasterr
-	on an error.
-	* compress_gz.cc (read, write, peek): Ditto.
-
-2011-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* archive_tar_file.cc (read, write, peek, seek): Consistently return -1
-	and set lasterr on an error.
-
-2011-01-02  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* crypto.c (ExtraKeyOption): Correct option description.
-
-2010-12-16  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* prereq.cc (OnNext, whatNext, OnUnattended): Fix PrereqPage::OnUnattended()
-	so PrereqPage behaves correctly in unattended modes.
-	* prereq.h (PrereqPage): Ditto
-	* proppage.cc (DialogProc): Update comment to clarify meaning of
-	OnUnattended() returning 0.
-
-2010-11-26  Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* site.cc (init): Canonicalize mirror URLs to ensure the end
-	with a '/'.
-
-2010-11-19  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage): Remove db.packages vector
-	sorting.
-	(buildPackage, buildPackageSource): Change package collection from vector
-	to map.
-	* PickView.cc (setViewMode, init_headers, defaultTrust): Ditto.
-	* choose.cc (createListview, logResults, keepClicked)
-	(changeTrust): Ditto
-	* install.cc (do_install_thread): Ditto
-	* download.cc (do_download_thread): Ditto
-	* prereq.cc (isMet): Ditto
-	* package_meta.cc (ScanDownloadedFiles): Ditto
-	* package_db.h (packagedb): Ditto
-	* package_db.cc (packagedb, flush, markUnVisited, setExistence)
-	(fillMissingCategory): Ditto
-	(findBinary, findSource): Rewrite to locate packages in map rather than
-	searching the whole vector, for performance.
-	(ConnectedLoopFinder, doIt, visit): Rewrite to refer to package using a
-	packagemeta *, as an index into the vector of packages can no longer be
-	used.
-
-2010-11-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-cygwin
-	dependency setting.  Fix comment.
-
-2010-11-23  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-passwd
-	dependency setting.  Fix condition for base-cygwin string check.
-
-2010-11-06  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* package_meta.h (packagemeta): Remove unused member variables for
-	storing timestamp of the setup.ini that package version came from.
-	* package_meta.cc (packagemeta): Ditto.
-
-2010-11-06  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* package_version.h (packageversion): Add compareVersion() utility
-	function.
-	* package_version.cc (Vendor_version, Package_version)
-	(compareVersions): Implement the Vendor_version() and Package_version()
-	accessor functions.  Add compareVersions() utility function.
-	* cygpackage.cc (setCanonicalVersion): Fix to extract vendor version
-	correctly.
-	* IniDBBuilderPackage.cc (add_correct_version): When multiple setup.ini's
-	offer different packages for the same stability level, use the package with
-	the highest version number rather than the package coming from the setup.ini
-	with the latest timestamp.
-
-2010-11-19  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* choose.cc (OnNext): Remove PrereqChecker call, instead use new
-	WM_APP_PREREQ_CHECK state of Progress dialog.
-	* threebar.h (WM_APP_PREREQ_CHECK)
-	(WM_APP_PREREQ_CHECK_THREAD_COMPLETE): Add new messages.
-	* threebar.cc (OnActivate, OnMessageApp): Use single bar mode for
-	WM_APP_PREREQ_CHECK state.  Handle new messages.
-	* dialog.h (do_prereq_check_thread): Add prototype.
-	* prereq.cc (isMet, do_prereq_check_thread)
-	(do_prereq_check_reflector, do_prereq_check): Add progress reporting
-	during isMet, and thread containing moved PrereqChecker code.
-
-2010-11-17  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* package_meta.cc (set_action): Always set the binary tick box
-	when selecting a specific version (if binary is available)
-
-2010-11-17  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* postinstall.cc (do_postinstall_thread): Refer to "Unknown package"
-	rather than "No package"
-
-2010-11-19  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	Throughout, change all occurrences of "PostMessage" to PostMessageNow.
-	This works around problem where w32api uses a #define which calls the
-	Windows API version of PostMessage directly, confusing g++ 3.4.4.
-
-2010-11-07  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* propsheet.cc (PropSheetProc): Set the big icon for the propsheet
-	window
-
-2010-11-07  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* ini.cc (GuiParseFeedback::progress, GuiParseFeedback::iniName):
-	Update all the text in the progress dialog whilst parsing .ini file,
-	not just the top line.
-
-2010-11-07  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* choose.cc (OnBack): Move PlaceDialog(false) so window is resized in
-	'Install from Local Directory' mode as well.
-
-2010-11-06  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-	* res.rc (IDD_NET): Make text referring to IE5 more general
-
-2010-11-04 Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* compress_bz.h (compress): Add endReached flag.
-	* compress_bz.cc (read, compress_bz): Use endReached flag to return 0
-	for a read when EOF has been reached, after BZ2_bzDecompress returns
-	BZ_STREAM_END, rather than continue to try to call BZ2_bzDecompress
-	beyond the end of the compressed data, generating a BZ_SEQUENCE_ERROR.
-	* ini.cc (do_remote_ini): Now that bz2_stream doesn't always have a
-	spurious error, detect and report if an error occurred decompressing.
-
-2010-09-13  Václav Haisman  <v.haisman@sh.cvut.cz>
-
-	* propsheet.cc (PropSheet::SetActivePage): Remove :: from call to
-	PropSheet_SetCurSel.
-	(PropSheet::SetActivePageByID): Remove :: from call to
-	PropSheet_SetCurSelByID.
-	(PropSheet::SetButtons): Remove :: from call to PropSheet_SetWizButtons.
-	(PropSheet::PressButton): Remove :: from call to PropSheet_PressButton.
-
-2010-09-07  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* postinstall.cc: Add #include <algorithm> to fix build with gcc-4.x.
-
-2010-08-29  Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* postinstall.cc (do_postinstall_thread): Don't run postinstall
-	scripts belonging to a just installed package twice.
-	* script.h (Script): Add operator ==
-
-2010-08-25  Andy Koppe  <andy.koppe@gmail.com>
-
-	* script.cc (init_run_script): Set CYGWINFORALL="-A" for
-	postinstall/preremove scripts when installing for all users.
-
-2010-08-19  Andy Koppe  <andy.koppe@gmail.com>
-
-	* package_meta.h (packagemeta::trustp): Update non-experimental 
-	packages too when Exp is selected.
-
-2010-08-18  Andy Koppe  <andy.koppe@gmail.com>
-
-	* res.rc (IDD_PREREQ): Say "Resolving Dependencies" instead of 
-	"Unmet Dependencies found"
-	* prereq.cc (PrereqPage::OnNext): Tone down message box about
-	missing dependencies.
-
-2010-08-15  Andy Koppe  <andy.koppe@gmail.com>
-
-	* postinstall.cc (PostInstallResultsPage::OnNext):
-	Remove postinstall script error message box.
-	* res.rc (IDS_POSTINSTALL): Try to make postinstall errors
-	less scary.
-
-2010-08-11  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* bootstrap.sh: Allow running from a builddir. Run configure
-	unless NOCONFIGURE is defined.
-	* doconfigure: Remove.
-	* Makefile.am (EXTRA_DIST): Remove doconfigure.
-	* README: Document that bootstrap.sh runs configure.
-	Remove reference to doconfigure.
-
-2010-08-10  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* configure.in: Check for prerequisites' headers.
-	* Makefile.am: Remove libinilex.a library, instead...
-	(inilint_SOURCES): Add inilex.ll. (setup_SOURCES): Ditto.
-	* inilex.ll: Use option nounput to avoid "defined but not used"
-	warning from yyunput().
-
-2010-08-10  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	Fix compatibility with GCC 4.x.
-	* Makefile.am (setup_LDFLAGS): Pass -static to compiler instead of
-	linker so that libgcc is statically linked as well.
-	(autoload.o): Disable optimization.
-	* localdir.cc (browse_cb): Fix "jump to case label crosses
-	initialization" error.
-	* mklink2.cc (sfli): Fix "non-local variable uses anonymous type"
-	warning.
-	* ntdll.h: Fix "redeclared without dllimport attribute: previous
-	dllimport ignored" warnings.
-	* package_message.h (display): Fix "'exit' was not declared in this
-	scope" error.
-
-2010-08-10  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-	* Makefile.am: Treat libgetopt++ as full-fledged SUBDIRS.
-	(setup_LDADD): Always link against included libgetopt++.
-
-2010-08-08  Corinna Vinschen  <corinna@vinschen.de>
-
-	* prereq.cc (PrereqChecker::getUnmetString): Improve dependency list
-	output.
-
-2010-08-07  Andy Koppe  <andy.koppe@gmail.com>
-
-	* prereq.cc (PrereqChecker::isMet): Find unmet indirect
-	dependencies too.
-
-2010-08-06  Andy Koppe  <andy.koppe@gmail.com>
-
-	* res.rc (IDS_VIEWBUTTON_TOOLTIP): Rename "Partial" view
-	to "Pending" (again).
-
-2010-08-05  Andy Koppe  <andy.koppe@gmail.com>
-
-	* res.rc (IDD_PREREQ DIALOG): Tweak wording on dependency page.
-
-2010-07-31  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* install.cc (Installer::installOne): Also record zero-sized
-	tarballs as successfully installed.
-
-2010-07-30  Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* postinstall.cc (do_postinstall_reflector): Fix typo.
-
-2010-07-30  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* inilex.ll: Allow "~" in a string.
-
-2010-07-29  Jon TURNEY <jon.turney@dronecode.org.uk>
-
-	* resource.h (IDD_POSTINSTALL, IDC_POSTINSTALL_EDIT): Add resource
-	identifiers for postinstall results page.
-	* res.rc (IDD_POSTINSTALL): Add dialog resource for postinstall results
-	page.
-	* postinstallresults.h: New file.
-	* postinstallresults.cc: New file.
-	* main.cc (main_display): Add a PostInstallResultsPage to the wizard.
-	* Makefile.am (setup_SOURCES): Add new files.
-	* threebar.cc (OnMessageApp): Allow WM_APP_POSTINSTALL_THREAD_COMPLETE
-	to select the next page shown.
-	* postinstall.cc (do_postinstall_thread)
-	(do_postinstall_reflector): Collect results of running scripts and
-	compose a reporting message which we pass to the postinstall results
-	page.  Select postinstall results page next if there are results to
-	show, otherwise desktop setup page as before.
-	* script.cc (run): Don't rename as .done scripts which didn't run
-	successfully.
-
-2010-07-26  Andy Koppe  <andy.koppe@gmail.com>
-
-	* PickView.cc (PickView::views::caption): Rename "Partial" view
-	to "Pending".
-	* res.rc (IDS_VIEWBUTTON_TOOLTIP): Ditto.
-
-2010-07-22  Andy Koppe  <andy.koppe@gmail.com>
-
-	* PickPackageLine.cc (PickPackageLine::{click,set_action}):
-	Don't trigger automatic package selection when clicking on
-	packages or categories on chooser screen.
-	* PickCategoryLine.cc (PickCategoryLine::click): No more need to
-	prepare for automatic package selection with markUnVisited().
-	* res.rc: Drop "Warning!" from caption of Resolve Dependencies
-	screen.
-
-2010-04-17  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* root.cc (RootPage::OnNext): Don't construct a packagedb here nor
-	do deferred initialisation of static packagedb::task.
-	* source.cc (save_dialog): Don't construct a packagedb here, and
-	set static packagedb::task directly instead of chosen_db_task.
-	* package_meta.cc (packagemeta::action_caption): Don't bother to
-	construct a packagedb here, just access packagedb::task directly.
-	* package_db.cc: Move 'static members' comment near static members.
-	(chosen_db_task): Delete.
-	* package_db.h (chosen_db_task): Don't declare extern.
-	(packagedb): Extend comments on class.
-
-2010-04-14  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* PickView.cc (PickView::WindowProc): Delete inadvertently-committed
-	debug logging.
-
-2010-04-13  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* PickView.h (PickView::set_vscroll_info): Add prototype.
-	(PickView::hasClientRect): Rename from this ...
-	(PickView::hasWindowRect): ... to this ...
-	(PickView::lastClientRect): ... and from this ...
-	(PickView::lastWindowRect): ... to this.
-	* PickView.cc (PickView::PickView): Adjust member init to match.
-	(PickView::set_vscroll_info): Abstract code to set vertical scroll
-	bar proportions from ...
-	(PickView::list_click): ... here.  Call it.  Fix comment typo.
-	(PickView::WindowProc): Update all renamed variables in WM_SIZE
-	case, and check also for a y delta, calling set_vscroll_info if so.
-
-2010-04-13  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* window.cc (Window::Window): Initialise BusyCount and BusyCursor.
-	(Window::SetBusy): Set hourglass cursor, counting nested activations.
-	(Window::ClearBusy): Cancel one call to SetBusy and restore original
-	cursor if no longer busy.
-	* window.h (Window::BusyCount): New data member.
-	(Window::OldCursor): Likewise.
-	(Window::BusyCursor): Likewise.
-	(Window::SetBusy): Prototype.
-	(Window::ClearBusy): Likewise.
-	* choose.cc (ChooserPage::createListview): Invoke busy cursor
-	around long-running operation.
-	(ChooserPage::OnInit): Likewise.
-	(ChooserPage::changeTrust): Likewise.
-	* PickCategoryLine.cc (PickCategoryLine::set_action): Likewise.
-
-2010-04-08  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* bootstrap.sh: Always reconfigure in libgetopt++.
-
-	* Makefile.am: Remove old code for direct copying to sourceware.  Add
-	-src to source tarball.
-
-2010-04-07  Matthias Andree  <matthias.andree@gmx.de>
-
-	* README (HOW TO BUILD): Mention mingw-lib{gcrypt,lzma}-devel.
-
-	* res.rc (IDD_DESKTOP): Move Installation Status line,
-	IDC_STATUS_HEADER and IDC_STATUS up 20 units, make IDC_STATUS text
-	20 units taller and 40 units wider so that IDS_REBOOT_REQUIRED
-	message fits the screen.
-	* res.rc (IDD_SPLASH): Bump copyright years in IDC_SLASH_COPYR to
-	"2000-2010".
-
-2010-04-07  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (create_allow_protected_renames): New function to
-	create AllowProtectedRenames registry entry.
-	(Installer::installOne): Call create_allow_protected_renames if former
-	call to MoveFileEx was successful.
-
-2010-03-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
-
-	Use external crypto libraries
-	* Makefile.am: Remove local libgcrypt and libgpg-error
-	source directories from AM_CPPFLAGS.
-	* configure.ac: Remove libgcrypt and libgpg-error subdirs
-	from AC_CONFIG_SUBDIRS. Remove now-unnecessary cruft.
-	* doconfigure: Specify gcc-3 and g++-3. Set PATH when $build
-	is cygwin, so that correct (mingw) libgcrypt and libgpg-error
-	config scripts can be used.
-
-	Remove libgpg-error.
-	* libgpg-error/tests/Makefile.am, libgpg-error/tests/Makefile.in,
-	libgpg-error/tests/t-strerror.c, libgpg-error/tests/t-syserror.c,
-	libgpg-error/po/ChangeLog, libgpg-error/po/LINGUAS,
-	libgpg-error/po/Makefile.in.in, libgpg-error/po/Makevars,
-	libgpg-error/po/POTFILES.in, libgpg-error/po/Rules-quot,
-	libgpg-error/po/boldquot.sed, libgpg-error/po/de.gmo,
-	libgpg-error/po/de.po, libgpg-error/po/en@boldquot.header,
-	libgpg-error/po/en@quot.header, libgpg-error/po/fr.gmo,
-	libgpg-error/po/fr.po libgpg-error/po/insert-header.sin,
-	libgpg-error/po/libgpg-error.pot, libgpg-error/po/pl.gmo,
-	libgpg-error/po/pl.po, libgpg-error/po/quot.sed,
-	libgpg-error/po/remove-potcdate.sin, libgpg-error/po/ro.gmo,
-	libgpg-error/po/ro.po libgpg-error/po/stamp-po,
-	libgpg-error/po/sv.po, libgpg-error/po/vi.gmo,
-	libgpg-error/po/vi.po, libgpg-error/po/sv.gmo,
-	libgpg-error/m4/ChangeLog, libgpg-error/m4/Makefile.am,
-	libgpg-error/m4/ac_prog_cc_for_build.m4, libgpg-error/m4/autobuild.m4,
-	libgpg-error/m4/codeset.m4, libgpg-error/m4/gettext.m4,
-	libgpg-error/m4/glibc2.m4, libgpg-error/m4/glibc21.m4,
-	libgpg-error/m4/iconv.m4, libgpg-error/m4/intdiv0.m4,
-	libgpg-error/m4/intmax.m4, libgpg-error/m4/inttypes-h.m4,
-	libgpg-error/m4/inttypes-pri.m4, libgpg-error/m4/inttypes.m4,
-	libgpg-error/m4/inttypes_h.m4, libgpg-error/m4/isc-posix.m4,
-	libgpg-error/m4/lcmessage.m4, libgpg-error/m4/lib-ld.m4,
-	libgpg-error/m4/lib-link.m4, libgpg-error/m4/lib-prefix.m4,
-	libgpg-error/m4/libtool.m4, libgpg-error/m4/lock.m4,
-	libgpg-error/m4/longdouble.m4, libgpg-error/m4/longlong.m4,
-	libgpg-error/m4/nls.m4, libgpg-error/m4/po.m4,
-	libgpg-error/m4/printf-posix.m4, libgpg-error/m4/progtest.m4,
-	libgpg-error/m4/signed.m4, libgpg-error/m4/size_max.m4,
-	libgpg-error/m4/stdint_h.m4, libgpg-error/m4/uintmax_t.m4,
-	libgpg-error/m4/ulonglong.m4, libgpg-error/m4/visibility.m4,
-	libgpg-error/m4/wchar_t.m4, libgpg-error/m4/wint_t.m4,
-	libgpg-error/m4/xsize.m4, libgpg-error/m4/Makefile.in,
-	libgpg-error/lang/Makefile.am, libgpg-error/lang/README,
-	libgpg-error/lang/Makefile.in, libgpg-error/lang/cl/Makefile.am,
-	libgpg-error/lang/cl/README, libgpg-error/lang/cl/gpg-error-package.lisp,
-	libgpg-error/lang/cl/gpg-error.asd, libgpg-error/lang/cl/gpg-error.asd.in,
-	libgpg-error/lang/cl/gpg-error.lisp, libgpg-error/lang/cl/mkerrcodes.awk,
-	libgpg-error/lang/cl/Makefile.in, libgpg-error/src/Makefile.am,
-	libgpg-error/src/README, libgpg-error/src/code-from-errno.c,
-	libgpg-error/src/code-to-errno.c, libgpg-error/src/err-codes.h,
-	libgpg-error/src/err-codes.h.in, libgpg-error/src/err-sources.h,
-	libgpg-error/src/err-sources.h.in, libgpg-error/src/errnos.in,
-	libgpg-error/src/gettext.h, libgpg-error/src/gpg-error-config.in,
-	libgpg-error/src/gpg-error.c, libgpg-error/src/gpg-error.def,
-	libgpg-error/src/gpg-error.h, libgpg-error/src/gpg-error.h.in,
-	libgpg-error/src/gpg-error.m4, libgpg-error/src/init.c,
-	libgpg-error/src/mkerrcodes.awk, libgpg-error/src/mkerrcodes.c,
-	libgpg-error/src/mkerrcodes1.awk, libgpg-error/src/mkerrcodes2.awk,
-	libgpg-error/src/mkerrnos.awk, libgpg-error/src/mkheader.awk,
-	libgpg-error/src/mkstrtable.awk, libgpg-error/src/strerror-sym.c,
-	libgpg-error/src/strerror.c, libgpg-error/src/strsource-sym.c,
-	libgpg-error/src/strsource.c, libgpg-error/src/versioninfo.rc.in,
-	libgpg-error/src/w32-gettext.c, libgpg-error/src/w32-gettext.h,
-	libgpg-error/src/Makefile.in, libgpg-error/ABOUT-NLS,
-	libgpg-error/AUTHORS, libgpg-error/COPYING, libgpg-error/COPYING.LIB,
-	libgpg-error/ChangeLog, libgpg-error/INSTALL, libgpg-error/Makefile.am,
-	libgpg-error/NEWS, libgpg-error/README, libgpg-error/THANKS,
-	libgpg-error/VERSION, libgpg-error/autogen.sh, libgpg-error/compile,
-	libgpg-error/config.guess, libgpg-error/config.rpath,
-	libgpg-error/config.sub, libgpg-error/configure.ac, libgpg-error/depcomp,
-	libgpg-error/install-sh, libgpg-error/libgpg-error.spec,
-	libgpg-error/libgpg-error.spec.in, libgpg-error/ltmain.sh,
-	libgpg-error/missing, libgpg-error/mkinstalldirs,
-	libgpg-error/aclocal.m4, libgpg-error/configure,
-	libgpg-error/config.h.in, libgpg-error/Makefile.in: Remove.
-
-	Remove libgcrypt.
-	* libgcrypt/tests/ChangeLog, libgcrypt/tests/Makefile.am,
-	libgcrypt/tests/ac-data.c, libgcrypt/tests/ac-schemes.c,
-	libgcrypt/tests/ac.c, libgcrypt/tests/basic.c,
-	libgcrypt/tests/benchmark.c, libgcrypt/tests/hmac.c,
-	libgcrypt/tests/keygen.c, libgcrypt/tests/keygrip.c,
-	libgcrypt/tests/mpitests.c, libgcrypt/tests/pkbench.c,
-	libgcrypt/tests/prime.c, libgcrypt/tests/pubkey.c,
-	libgcrypt/tests/random.c, libgcrypt/tests/register.c,
-	libgcrypt/tests/t-mpi-bit.c, libgcrypt/tests/testapi.c,
-	libgcrypt/tests/tsexp.c, libgcrypt/tests/version.c,
-	libgcrypt/tests/Makefile.in, libgcrypt/src/ChangeLog
-	libgcrypt/src/Makefile.am, libgcrypt/src/Manifest, libgcrypt/src/ath.c,
-	libgcrypt/src/ath.h, libgcrypt/src/cipher.h, libgcrypt/src/dumpsexp.c,
-	libgcrypt/src/g10lib.h, libgcrypt/src/gcrypt-module.h,
-	libgcrypt/src/gcrypt.h, libgcrypt/src/gcrypt.h.in,
-	libgcrypt/src/gcryptrnd.c, libgcrypt/src/getrandom.c,
-	libgcrypt/src/global.c, libgcrypt/src/hwfeatures.c,
-	libgcrypt/src/libgcrypt-config.in, libgcrypt/src/libgcrypt.def,
-	libgcrypt/src/libgcrypt.m4, libgcrypt/src/libgcrypt.vers,
-	libgcrypt/src/misc.c, libgcrypt/src/missing-string.c,
-	libgcrypt/src/module.c, libgcrypt/src/mpi.h, libgcrypt/src/secmem.h,
-	libgcrypt/src/sexp.c, libgcrypt/src/stdmem.c, libgcrypt/src/stdmem.h,
-	libgcrypt/src/types.h, libgcrypt/src/versioninfo.rc.in,
-	libgcrypt/src/visibility.c, libgcrypt/src/visibility.h,
-	libgcrypt/src/Makefile.in, libgcrypt/src/secmem.c,
-	libgcrypt/m4/ChangeLog, libgcrypt/m4/Makefile.am,
-	libgcrypt/m4/libtool.m4, libgcrypt/m4/noexecstack.m4,
-	libgcrypt/m4/onceonly.m4, libgcrypt/m4/socklen.m4,
-	libgcrypt/m4/sys_socket_h.m4, libgcrypt/m4/Makefile.in,
-	libgcrypt/doc/ChangeLog, libgcrypt/doc/HACKING,
-	libgcrypt/doc/Makefile.am, libgcrypt/doc/README.apichanges,
-	libgcrypt/doc/gcrypt.texi, libgcrypt/doc/gpl.texi,
-	libgcrypt/doc/lgpl.texi, libgcrypt/doc/mdate-sh,
-	libgcrypt/doc/texinfo.tex, libgcrypt/doc/stamp-vti,
-	libgcrypt/doc/version.texi, libgcrypt/doc/gcrypt.info,
-	libgcrypt/doc/Makefile.in, libgcrypt/cipher/ChangeLog,
-	libgcrypt/cipher/Makefile.am, libgcrypt/cipher/Manifest,
-	libgcrypt/cipher/ac.c, libgcrypt/cipher/arcfour.c,
-	libgcrypt/cipher/bithelp.h, libgcrypt/cipher/blowfish.c,
-	libgcrypt/cipher/camellia-glue.c, libgcrypt/cipher/camellia.c,
-	libgcrypt/cipher/camellia.h, libgcrypt/cipher/cast5.c,
-	libgcrypt/cipher/cipher.c, libgcrypt/cipher/crc.c,
-	libgcrypt/cipher/des.c, libgcrypt/cipher/dsa.c, libgcrypt/cipher/ecc.c,
-	libgcrypt/cipher/elgamal.c, libgcrypt/cipher/md.c,
-	libgcrypt/cipher/md4.c, libgcrypt/cipher/md5.c,
-	libgcrypt/cipher/primegen.c, libgcrypt/cipher/pubkey.c,
-	libgcrypt/cipher/rand-internal.h, libgcrypt/cipher/random-daemon.c,
-	libgcrypt/cipher/random.c, libgcrypt/cipher/random.h,
-	libgcrypt/cipher/rfc2268.c, libgcrypt/cipher/rijndael-tables.h,
-	libgcrypt/cipher/rijndael.c, libgcrypt/cipher/rmd.h,
-	libgcrypt/cipher/rmd160.c, libgcrypt/cipher/rndegd.c,
-	libgcrypt/cipher/rndhw.c, libgcrypt/cipher/rndlinux.c,
-	libgcrypt/cipher/rndunix.c, libgcrypt/cipher/rndw32.c,
-	libgcrypt/cipher/rsa.c, libgcrypt/cipher/seed.c,
-	libgcrypt/cipher/serpent.c, libgcrypt/cipher/sha1.c,
-	libgcrypt/cipher/sha256.c, libgcrypt/cipher/sha512.c,
-	libgcrypt/cipher/tiger.c, libgcrypt/cipher/twofish.c,
-	libgcrypt/cipher/whirlpool.c, libgcrypt/cipher/Makefile.in,
-	libgcrypt/AUTHORS, libgcrypt/BUGS, libgcrypt/COPYING,
-	libgcrypt/COPYING.LIB, libgcrypt/ChangeLog, libgcrypt/INSTALL,
-	libgcrypt/Makefile.am, libgcrypt/NEWS, libgcrypt/README,
-	libgcrypt/README.SVN, libgcrypt/THANKS, libgcrypt/TODO, libgcrypt/VERSION,
-	libgcrypt/acinclude.m4, libgcrypt/autogen.sh, libgcrypt/compile,
-	libgcrypt/config.guess, libgcrypt/config.sub, libgcrypt/configure.ac,
-	libgcrypt/depcomp, libgcrypt/install-sh, libgcrypt/ltmain.sh,
-	libgcrypt/missing, libgcrypt/mkinstalldirs, , libgcrypt/aclocal.m4,
-	libgcrypt/configure, libgcrypt/config.h.in, libgcrypt/Makefile.in,
-	libgcrypt/mpi/ChangeLog, libgcrypt/mpi/Makefile.am,
-	libgcrypt/mpi/Manifest, libgcrypt/mpi/config.links, libgcrypt/mpi/ec.c,
-	libgcrypt/mpi/longlong.h, libgcrypt/mpi/mpi-add.c,
-	libgcrypt/mpi/mpi-bit.c, libgcrypt/mpi/mpi-cmp.c,
-	libgcrypt/mpi/mpi-div.c, libgcrypt/mpi/mpi-gcd.c,
-	libgcrypt/mpi/mpi-inline.c, libgcrypt/mpi/mpi-inline.h,
-	libgcrypt/mpi/mpi-internal.h, libgcrypt/mpi/mpi-inv.c,
-	libgcrypt/mpi/mpi-mod.c, libgcrypt/mpi/mpi-mpow.c,
-	libgcrypt/mpi/mpi-mul.c, libgcrypt/mpi/mpi-pow.c,
-	libgcrypt/mpi/mpi-scan.c, libgcrypt/mpi/mpicoder.c,
-	libgcrypt/mpi/mpih-div.c, libgcrypt/mpi/mpih-mul.c,
-	libgcrypt/mpi/mpiutil.c, libgcrypt/mpi/Makefile.in,
-	libgcrypt/mpi/alpha/README, libgcrypt/mpi/alpha/distfiles,
-	libgcrypt/mpi/alpha/mpih-add1.S, libgcrypt/mpi/alpha/mpih-lshift.S,
-	libgcrypt/mpi/alpha/mpih-mul1.S, libgcrypt/mpi/alpha/mpih-mul2.S,
-	libgcrypt/mpi/alpha/mpih-mul3.S, libgcrypt/mpi/alpha/mpih-rshift.S,
-	libgcrypt/mpi/alpha/mpih-sub1.S, libgcrypt/mpi/alpha/udiv-qrnnd.S,
-	libgcrypt/mpi/amd64/distfiles, libgcrypt/mpi/amd64/mpih-add1.S,
-	libgcrypt/mpi/amd64/mpih-lshift.S, libgcrypt/mpi/amd64/mpih-mul1.S,
-	libgcrypt/mpi/amd64/mpih-mul2.S, libgcrypt/mpi/amd64/mpih-mul3.S,
-	libgcrypt/mpi/amd64/mpih-rshift.S, libgcrypt/mpi/amd64/mpih-sub1.S,
-	libgcrypt/mpi/generic/Manifest, libgcrypt/mpi/generic/distfiles,
-	libgcrypt/mpi/generic/mpi-asm-defs.h, libgcrypt/mpi/generic/mpih-add1.c,
-	libgcrypt/mpi/generic/mpih-lshift.c, libgcrypt/mpi/generic/mpih-mul1.c,
-	libgcrypt/mpi/generic/mpih-mul2.c, libgcrypt/mpi/generic/mpih-mul3.c,
-	libgcrypt/mpi/generic/mpih-rshift.c, libgcrypt/mpi/generic/mpih-sub1.c,
-	libgcrypt/mpi/generic/udiv-w-sdiv.c, libgcrypt/mpi/hppa/README,
-	libgcrypt/mpi/hppa/distfiles, libgcrypt/mpi/hppa/mpih-add1.S,
-	libgcrypt/mpi/hppa/mpih-lshift.S, libgcrypt/mpi/hppa/mpih-rshift.S,
-	libgcrypt/mpi/hppa/mpih-sub1.S, libgcrypt/mpi/hppa/udiv-qrnnd.S,
-	libgcrypt/mpi/hppa1.1/distfiles, libgcrypt/mpi/hppa1.1/mpih-mul1.S,
-	libgcrypt/mpi/hppa1.1/mpih-mul2.S, libgcrypt/mpi/hppa1.1/mpih-mul3.S,
-	libgcrypt/mpi/hppa1.1/udiv-qrnnd.S, libgcrypt/mpi/i386/Manifest,
-	libgcrypt/mpi/i386/distfiles, libgcrypt/mpi/i386/mpih-add1.S,
-	libgcrypt/mpi/i386/mpih-lshift.S, libgcrypt/mpi/i386/mpih-mul1.S,
-	libgcrypt/mpi/i386/mpih-mul2.S, libgcrypt/mpi/i386/mpih-mul3.S,
-	libgcrypt/mpi/i386/mpih-rshift.S, libgcrypt/mpi/i386/mpih-sub1.S,
-	libgcrypt/mpi/i386/syntax.h, libgcrypt/mpi/i586/Manifest,
-	libgcrypt/mpi/i586/README, libgcrypt/mpi/i586/distfiles,
-	libgcrypt/mpi/i586/mpih-add1.S, libgcrypt/mpi/i586/mpih-lshift.S,
-	libgcrypt/mpi/i586/mpih-mul1.S, libgcrypt/mpi/i586/mpih-mul2.S,
-	libgcrypt/mpi/i586/mpih-mul3.S, libgcrypt/mpi/i586/mpih-rshift.S,
-	libgcrypt/mpi/i586/mpih-sub1.S, libgcrypt/mpi/m68k/Manifest,
-	libgcrypt/mpi/m68k/distfiles, libgcrypt/mpi/m68k/mpih-add1.S,
-	libgcrypt/mpi/m68k/mpih-lshift.S, libgcrypt/mpi/m68k/mpih-rshift.S,
-	libgcrypt/mpi/m68k/mpih-sub1.S, libgcrypt/mpi/m68k/syntax.h,
-	libgcrypt/mpi/mips3/Manifest, libgcrypt/mpi/mips3/README,
-	libgcrypt/mpi/mips3/distfiles, libgcrypt/mpi/mips3/mpi-asm-defs.h,
-	libgcrypt/mpi/mips3/mpih-add1.S, libgcrypt/mpi/mips3/mpih-lshift.S,
-	libgcrypt/mpi/mips3/mpih-mul1.S, libgcrypt/mpi/mips3/mpih-mul2.S,
-	libgcrypt/mpi/mips3/mpih-mul3.S, libgcrypt/mpi/mips3/mpih-rshift.S,
-	libgcrypt/mpi/mips3/mpih-sub1.S, libgcrypt/mpi/pa7100/Manifest,
-	libgcrypt/mpi/pa7100/distfiles, libgcrypt/mpi/pa7100/mpih-lshift.S,
-	libgcrypt/mpi/pa7100/mpih-rshift.S, libgcrypt/mpi/pentium4/README,
-	libgcrypt/mpi/pentium4/distfiles, libgcrypt/mpi/power/Manifest,
-	libgcrypt/mpi/power/distfiles, libgcrypt/mpi/power/mpih-add1.S,
-	libgcrypt/mpi/power/mpih-lshift.S, libgcrypt/mpi/power/mpih-mul1.S,
-	libgcrypt/mpi/power/mpih-mul2.S, libgcrypt/mpi/power/mpih-mul3.S,
-	libgcrypt/mpi/power/mpih-rshift.S, libgcrypt/mpi/power/mpih-sub1.S,
-	libgcrypt/mpi/powerpc32/Manifest, libgcrypt/mpi/powerpc32/distfiles,
-	libgcrypt/mpi/powerpc32/mpih-add1.S,
-	libgcrypt/mpi/powerpc32/mpih-lshift.S,
-	libgcrypt/mpi/powerpc32/mpih-mul1.S,
-	libgcrypt/mpi/powerpc32/mpih-mul2.S,
-	libgcrypt/mpi/powerpc32/mpih-mul3.S,
-	libgcrypt/mpi/powerpc32/mpih-rshift.S,
-	libgcrypt/mpi/powerpc32/mpih-sub1.S, libgcrypt/mpi/powerpc32/syntax.h,
-	libgcrypt/mpi/powerpc64/distfiles, libgcrypt/mpi/sparc32/Manifest,
-	libgcrypt/mpi/sparc32/distfiles, libgcrypt/mpi/sparc32/mpih-add1.S,
-	libgcrypt/mpi/sparc32/mpih-lshift.S,
-	libgcrypt/mpi/sparc32/mpih-rshift.S, libgcrypt/mpi/sparc32/udiv.S,
-	libgcrypt/mpi/sparc32v8/Manifest, libgcrypt/mpi/sparc32v8/distfiles,
-	libgcrypt/mpi/sparc32v8/mpih-mul1.S,
-	libgcrypt/mpi/sparc32v8/mpih-mul2.S,
-	libgcrypt/mpi/sparc32v8/mpih-mul3.S, libgcrypt/mpi/supersparc/Manifest,
-	libgcrypt/mpi/supersparc/distfiles,
-	libgcrypt/mpi/supersparc/udiv.S, libgcrypt/mpi/m68k/mc68020/distfiles
-	libgcrypt/mpi/m68k/mc68020/Manifest,
-	libgcrypt/mpi/m68k/mc68020/mpih-mul1.S,
-	libgcrypt/mpi/m68k/mc68020/mpih-mul2.S,
-	libgcrypt/mpi/m68k/mc68020/mpih-mul3.S,
-	libgcrypt/mpi/pentium4/mmx/distfiles,
-	libgcrypt/mpi/pentium4/mmx/mpih-lshift.S,
-	libgcrypt/mpi/pentium4/mmx/mpih-rshift.S,
-	libgcrypt/mpi/pentium4/sse2/distfiles,
-	libgcrypt/mpi/pentium4/sse2/mpih-add1.S,
-	libgcrypt/mpi/pentium4/sse2/mpih-mul1.S,
-	libgcrypt/mpi/pentium4/sse2/mpih-mul2.S,
-	libgcrypt/mpi/pentium4/sse2/mpih-mul3.S,
-	libgcrypt/mpi/pentium4/sse2/mpih-sub1.S: Remove.
-
-2010-03-17  Corinna Vinschen  <corinna@vinschen.de>
-
-	* autoload.cc (Auto): Create autoload code in an executable section
-	called .autoload_text to avoid problems with DEP.
-
-2010-03-14  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* Makefile.am: Add a setup-src target.
-
-2010-03-14  Charles Wilson  <cygwin@cwilson.fastmail.fm>
-
-	Support xz and lzma decompression via liblzma
-	* Makefile.am: Add -DLZMA_API_STATIC to AM_CPPFLAGS,
-	-lzma to setup_LDADD, and -static-libtool-libs to
-	setup_LDFLAGS. Update setup_SOURCES.
-	* compress.cc: Update includes.
-	(compress::decompress): Use compress_xz rather than
-	compress_lzma; compress_xz supports both xz and lzma
-	decompression.
-	* compress_xz.h: New.
-	* compress_xz.cc: New.
-	* compress_lzma.h: Removed.
-	* compress_lzma.cc: Removed.
-	* lzma-sdk/LzmaDec.c: Removed.
-	* lzma-sdk/LzmaDec.h: Removed.
-	* lzma-sdk/Types.h: Removed.
-
-2010-03-13  DJ Delorie  <dj@redhat.com>
-
-	* nio-ftp.c (read): Read RETR status code on EOF to avoid
-	deadlock with PASV.
-
-2010-03-01  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (mklongpath): Skip "." and ".." path components to
-	avoid error messages.
-
-2010-02-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (mklongpath): Simplify backslash folding.
-
-2010-02-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (transform_chars): Drop function.
-	(mklongpath): Call mbrtowc in a loop rather than just mbstowcs.
-	Transform characters on the fly.  Fold multiple backslashes into one.
-	Drop trailing backslash.
-
-2010-02-15  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* choose.cc (ChooserPage::PlaceDialog): Only skip resizing window
-	in fully-unattended mode, not chooser-only mode.
-	(ChooserPage::OnUnattended): Return appropriate status to run page
-	or not according to kind of unattended mode.
-	* choose.h (ChooserPage::OnUnattended): Remove inline implementation
-	and retain prototype only.
-	* main.cc (PackageManagerOption): New boolean option.
-	(main): Take it into account when setting unattended_mode.
-	* proppage.cc (PropertyPage::DialogProc): Use new enum type when
-	setting unattended_mode.
-	* state.cc (unattended_mode): Change from bool to enum attend_mode.
-	* state.h (enum attend_mode): Declare new enum type.
-	(unattended_mode): Update extern declaration to use it.
-
-2010-02-04  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.cc (NTSecurity::GetPosixPerms): Return NULL security descriptor
-	if is_legacy is set.
-	(NTSecurity::SetPosixPerms): Remove.
-	* win32.h (NTSecurity::GetPosixPerms): Remove declaration.
-
-2010-02-02  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc (make_link): Use 0 default permissions when creating files
-	and directories.
-	* download.cc (download_one): Ditto.
-	* ini.cc (do_remote_ini): Ditto.
-	* localdir.cc (offer_to_create): Ditto.
-	* filemanip.cc (nt_wfopen): Use Windows default permissions if perms
-	is set to 0.
-	* mkdir.cc (mkdir_p): Ditto if mode is set to 0.
-
-2010-01-29  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* mount.cc (read_mounts_9x): Preserve old way of doing things when
-	is_legacy.
-
-2010-01-28  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* desktop.cc (make_link): Preserve old way of doing things when
-	is_legacy.
-	(make_cygwin_bat): Ditto.
-	(save_icon): Ditto.
-	* mount.cc (read_mounts): Ditto.
-	(set_root_dir): Ditto.
-	* root.cc (load_dialog): Ditto.
-	(save_dialog): Ditto.
-	* install.cc (Installer::installOne): Don't install anything if there
-	is no canonical file associated with source.
-	(do_install_thread): Set up old-style registry entries if is_legacy
-	rather than just keying on whether this is Windows NT.
-	* io_stream_file.cc (io_stream_file::exists): Redefine "exists" to mean
-	"it's a file".
-
-2010-01-16  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* archive_tar.c (archive_tar_file::read): Always set read_something
-	even for zero-length files.
-
-2010-01-16  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* archive_tar.h (archive_tar_file::read_something): New member.
-	* archive_tar_file.cc (archive_tar_file::archive_tar_file): Don't reset
-	state unless we've actually read something.
-	(archive_tar_file::read): Set read_something variable here to indicate
-	that we've read something from the tar file.
-
-2010-01-13  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* localdir.cc (LocalDirPage::OnNext): Strip trailing slashes.
-
-2009-12-27  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* main.cc (dyn_AttachConsole): Make static.
-	(dyn_GetLongPathName): New variable.
-	(set_dynaddr): New function.
-	(set_cout): Don't set dyn_AttachConsole here.
-	(set_legacy): Don't attempt to call function which does not exist in
-	older versions of NT.
-	(main): Call set_dynaddr to set dynamic load addresses.
-
-2009-12-22  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* ini.h: Use is_legacy to control setup.ini names.
-	* main.cc (set_legacy): New function.
-	(main): Call set_legacy with program name to determine if this is
-	supposed to be an installation of the legacy version of cygwin.  Issue
-	a warning on attempt to install legacy on Windows NT class system.
-
-2009-12-22  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* package_message (packagemessage::display): Avoid displaying a message
-	when in unattended mode.
-
-2009-12-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.h (isdirsep): Define to replace local isslash definitions.
-	* UserSettings.cc (UserSettings::open_settings): Remove isslash.
-	Use isdirsep instead of isslash.
-	* filemanip.cc (mklongpath): Ditto.
-	* root.cc (directory_is_rootdir): Ditto.
-	* localdir.cc (LocalDirSetting::save): Avoid consecutive backslashes
-	in setup log file paths.
-	* main.cc (main): Ditto.
-
-2009-12-21  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* choose.cc (ChooserPage::PlaceDialog): Put *correct* size in
-	WINDOWPLACEMENT length field.
-
-2009-12-18  Corinna Vinschen  <corinna@vinschen.de>
-
-	Throughout, revert prototypes and methods set_mtime_and_mode to
-	set_mtime and only care for the file timestamp.
-
-	Throughout, accommodate additional mode_t parameter in call to
-	io_stream::open.
-
-	* IOStreamProvider.h (IOStreamProvider::open): Add mode_t parameter.
-	* archive.cc (archive::extract_file): Reorder creation of in and tmp
-	to get the file mode from the tar archive earlier.  Call io_stream::open
-	with additional mode from tar archive.  Accommodate reversion to
-	set_mtime.
-	* filemanip.cc (nt_wfopen): Remove retry loop.  Instead initialize
-	OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
-	perms to create correct ACL on file creation.  Remove subsequent call
-	to nt_sec.SetPosixPerms.
-	* io_stream.cc (io_stream::open): Take additional mode_t parameter
-	and connect through to IOStreamProvider's open.
-	* io_stream.h (io_stream::open): Add mode_t parameter.
-	* io_stream_cygfile.cc (CygFileProvider::open): Ditto.
-	(io_stream_cygfile::io_stream_cygfile): Ditto.  Call nt_wfopen with
-	incoming mode_t parameter.  Make sure .exe and .dll files always
-	have execute permissions set.
-	(io_stream_cygfile::set_mtime): Remove retry loop and open file with
-	just GENERIC_WRITE access.
-	* io_stream_cygfile.h (io_stream_cygfile::io_stream_cygfile): Add mode_t
-	parameter.
-	* io_stream_file.cc (FileProvider::open): Ditto.
-	(io_stream_file::io_stream_file): Ditto.  Call nt_wfopen with incoming
-	mode_t parameter.
-	* io_stream_file.h (io_stream_file::io_stream_file): Add mode_t
-	parameter.
-	* io_stream_memory.h (class io_stream_memory): Remove mode member.
-	Just return 0 from get_mode.
-	* mkdir.cc (mkdir_p): Remove retry loop.  Instead initialize
-	OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
-	perms to create correct ACL on file creation.  Remove subsequent call
-	to nt_sec.SetPosixPerms.
-	* mklink2.cc (mkcygsymlink_nt): Remove retry loop.  Instead initialize
-	SECURITY_ATTRIBUTES with matching POSIX perms to create correct ACL on
-	file creation.
-	* win32.cc (NTSecurity::GetPosixPerms): New function to generate
-	POSIX ACL.  Default to current owner and current primary group for
-	owner/group permissions.
-	(NTSecurity::SetPosixPerms): Let GetPosixPerms create the DACL.
-	(NTSecurity::setAdminGroup): Set groupSID to admins SID if successful.
-	(NTSecurity::setDefaultSecurity): Store user SID in ownerSID member.
-	Default groupSID to original primary group.
-	* win32.h (struct acl_t): Define here.
-	(class NTSecurity): Rename ownerSID and groupSID to cr_ownerSID and
-	cr_groupSID.  Change throughout.  Add members ownerSID and groupSID.
-	Declare new method GetPosixPerms.
-
-2009-12-17  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (nt_wfopen): Only call nt_sec.SetPosixPerms if we have
-	WRITE_DAC access.
-	* mkdir.cc (mkdir_p): Ditto.
-
-2009-12-17  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (nt_wfopen): Fix requested access rights.  Retry
-	without WRITE_DAC access on access denied.  Add comment.
-	* io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode): Ditto.
-	* mkdir.cc (mkdir_p): Ditto.
-	* mklink2.cc (mkcygsymlink_nt): Ditto.
-
-2009-12-17  Corinna Vinschen  <corinna@vinschen.de>
-
-	* localdir.cc (LocalDirSetting::save): Call mkdir_p with isadir set
-	since /var/log is a dir.
-
-2009-12-16  Corinna Vinschen  <corinna@vinschen.de>
-
-	* UserSettings.cc (UserSettings::open_settings): Never add more than
-	one slash.
-	* filemanip.cc (tfx_chars): Align to Cygwin's transformation table.
-	* localdir.cc (LocalDirSetting::save): Call mkdir_p with DOS path.
-
-2009-12-16  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* package_message.h: New file.
-
-2009-12-13  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* IniDBBuilder.h (buildMessage): Define for base class.
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildMessage): Define.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::buildMessage): Declare.
-	* PickPackageLine.cc: Pass pointer to package to "pick" throughout,
-	where appropriate.
-	* PickView.cc: Ditto.
-	* install.cc: Ditto.
-	* package_meta.cc: Ditto.
-	* prereq.cc: Ditto.
-	* package_version.cc: Ditto.
-	(packageversion::pick): Add pkg pointer as second argument.  Display
-	message where appropriate.
-	* package_version.h (packageversion::pick): Add pkg pointer as second
-	argument.
-	* package_meta.h (packagemeta::mesage): Define.
-	(packagemeta::set_message): Define.
-	* inilex.ll: Properly return MESSAGE token.
-	* iniparse.yy: Handle message: keyword.
-
-2009-12-08  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* localdir.cc (offer_to_create): New function.
-	(browse_cb): Handle selection changed and validate failed
-	callbacks, and call offer_to_create where appropriate.
-	(browse): Set new dialog style flags in browser info.
-	(LocalDirPage::OnNext): Replace call to mkdir_p with offer to
-	create or error message dialog display, allow proceeding to
-	chooser even if local dir does not exist in unattend mode or
-	if user insists, and fix small memory leak.
-
-	* res.rc (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define new
-	string resources.
-	* resource.h (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define
-	corresponding resource ID numbers.
-
-2009-12-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* main.cc (WinMain): Disable running on Windows 9x.  Show message box
-	instead and exit.
-
-2009-12-03  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	(ChooserPage::createListview): When nothing is found in the "All"
-	category, pass an empty static dummy category object to the PickView
-	constructor, instead of trying to dereference not-found iterator.
-
-2009-11-23  Corinna Vinschen  <corinna@vinschen.de>
-
-	* io_stream_cygfile.cc (io_stream_cygfile::get_size): Don't try to
-	close invalid handle.
-	* io_stream_file.cc (io_stream_file::get_size): Ditto
-
-2009-11-22  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* threebar.cc (ThreeBarProgressPage::OnMessageApp): Don't loop forever
-	retrying ini file download/parse if it errors in unattended mode.
-
-2009-11-22  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* package_meta.cc (CategoryOption): New StringOption for '-C'.
-	(parseNames): New helper subroutine abstracts string parsing from ...
-	(packagemeta::isManuallyWanted): Use it, and check for category names
-	from CategoryOption as well as individual package names.
-	* package_db.cc (packagedb::fillMissingCategory): Don't check for
-	manually-wanted packages until after initialising all the categories.
-
-2009-11-04  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* localdir.cc (LocalDirSetting::LocalDirSetting): Restore -l option.
-
-2009-11-04  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* site.cc: Add #include of BoolOption header from libgetopt.
-	(OnlySiteOption): New BoolOption for command-line -O option.
-	(get_site_list): Respect BoolOption by not downloading mirror
-	list, nor using nor updating cached mirrors.
-
-2009-11-04  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* download.cc (do_download_thread): Only retry an incomplete download
-	a limited number of times in unattended mode.
-
-2009-11-04  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* main.cc (main_display): Use apartment-, not multi- threading model
-	when initialiseing COM.
-
-2009-11-04  Corinna Vinschen  <corinna@vinschen.de>
-
-	* localdir.cc (browse): Make title text depend on what we do.
-	(LocalDirPage::OnNext): If we plan to download, try to create directory
-	before cd'ing into it.
-
-2009-11-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mkdir.cc: Include sys/stat.h unconditionally.
-	(mkdir_p): Add S_IFDIR flag in call to nt_sec.SetPosixPerms.
-	* win32.cc: Include sys/stat.h.
-	(NTSecurity::SetPosixPerms): Add CREATOR OWNER, CREATOR GROUP, and
-	Everyone inheritance-only entries when setting a directory DACL.
-	(NTSecurity::initialiseWellKnownSIDs): Create SIDs for CREATOR OWNER and
-	CREATOR GROUP.
-	* win32.h (class NTSecurity): Add members ownerSID and groupSID.
-
-2009-10-03  Andy Koppe  <andy.koppe@gmail.com>
-
-	* main.cc (main): Make sure C runtime uses same codepage as GUI.
-
-2009-09-20  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* main (set_cout): Really do attach to a console if stdout is "bad".
-
-2009-09-18  Andy Koppe  <andy.koppe@gmail.com>
-
-	* root.cc (string orig_root_dir): New variable.
-	(check_if_enable_next): Show warning against installing Cygwin into
-	disk root only if the root directory has actually been changed.
-	* res.rc: Make the root dir warning a bit more meaningful, and refrain
-	from using uppercase.
-
-2009-09-18  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* choose.cc (ChooserPage::OnBack): Revert to non-maximized when
-	returning to mirror from package selection.
-
-2009-09-18  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* site.cc (get_site_list): Use empty string if user settings
-	return NULL pointer for cached mirrors list.
-	(SiteSetting::getSavedSites): Do nothing if user settings return
-	NULL pointer for last mirror URL.
-
-2009-08-21  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* site.cc (SiteSetting::registerSavedSite): Fix comment.
-
-2009-07-03  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* main.cc (set_cout): Don't reset stdout if we already have a stdout.
-
-2009-07-03  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* choose.cc (ChooserPage::ChooserPage): Use more specific name for
-	saving window settings.
-	(ChooserPage::~ChooserPage): Ditto.
-
-2009-07-01  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* PickView.h (PickView::total_delta_x):  New int member.
-	(PickView::set_header_column_order):  Add prototype.
-	* PickView.cc (PickView::set_header_column_order):  New function,
-	broken out from ...
-	(PickView::set_headers):  ... here.  Call it.
-	(PickView::init_headers):  Apply total_delta_x to last_col width.
-	(PickView::PickView):  Initialise new total_delta_x member to zero.
-	(PickView::WindowProc):  Use set_header_column_order to find and
-	adjust final column for both sets of headers.
-
-2009-06-29  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* SourceSetting.cc (SourceSetting::SourceSetting): Restore proper
-	remembrane of last source setting.
-	* choose.cc (ChooserPage::ChooserPage): Potentially retrieve dialog
-	placement info.
-	(ChooserPage::~ChooserPage): Save geometry settings if the user moved
-	or resized the page.
-	(ChooserPage::PlaceDialog): Rename from MaximizeDialog.  Accommodate
-	changed user placement settings.
-	(ChooserPage::OnActivate): MaximizeDialog -> PlaceDialog.
-	(ChooserPage::OnNext): Ditto.
-	* choose.h (ChooserPage::~ChooserPage): Define.
-	(ChooserPage::cmd_show): Delete.
-	(ChooserPage::saved_geom): New field.
-	(ChooserPage::window_placement): Ditto.
-	(ChooserPage::pre_chooser_placement): Ditto.
-	(ChooserPage::PlaceDialog): Rename from MaximizeDialog.
-
-2009-06-28  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* ConnectionSetting.cc (ConnectionSetting::ConnectionSetting): Remove
-	old code which no longer makes sense when run from a constructor.
-	* SourceSetting.cc (SourceSetting::SourceSetting): Ditto.
-	* localdir.cc (LocalDirSetting::LocalDirSetting): Ditto.  Fix typo
-	which caused saved settings to be ignored.
-
-2009-06-28  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* UserSettings.cc (UserSettings::UserSettings): settings.rc -> setup.rc.
-
-2009-06-28  Corinna Vinschen  <corinna@vinschen.de>
-
-	* desktop.cc (DesktopSetupPage::OnInit): Drop CoInitialize call here.
-	* main.cc (main_display): Use InitCommonControlsEx rather than
-	InitCommonControls per MSDN.  Call CoInitializeEx and create IShellLink
-	instance here to workaround a problem on Windows 7.  Release IShellLink
-	instance and call CoUninitialize on exit.
-	* mklink.cc (sl): Change to global variable.  Drop call to
-	CoCreateInstance here.  Check if sl is valid before using it.
-
-2009-06-27  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	Preliminary option handling revamp.
-	Throughout, change load/save methods to constructors/destructors which
-	use new UserSettings methods.  Do not inherit from UserSetting class.
-	* KeysSetting.cc (ExtraKeysSetting *ExtraKeysSetting::global): Define.
-	(ExtraKeysSetting::ExtraKeysSetting): Initialize some class members use
-	new UserSettings methods.
-	(ExtraKeysSetting::~ExtraKeysSetting): Use new UserSettings method.
-	* Makefile.am (setup_SOURCES): Eliminate UserSetting.h and
-	UserSetting.cc.
-	* UserSettings.cc: Complete rewrite.  Implements new UserSettings
-	class methods.
-	* UserSettings.h: Complete rewrite.  Defines new UserSettings class
-	methods.
-	* crypto.cc (ExtraKeys): Delete.
-	(add_key_from_sexpr): Use ExtraKeysSetting::instance rather than
-	ExtraKeys.
-	(verify_ini_file_sig): Ditto.
-	* io_stream.h (io_stream): Define virtual << operators.
-	* localdir.cc (localDir): Delete.
-	* main.cc: Include headers which declar new dynamically invoked
-	classes.
-	(main_display): New function.  Controls order of option setting and
-	property page setup.  Add new class invocations to force option setting
-	initializtion.
-	(main): Invoke new UserSettings class constructor to populate new
-	settings class.  Call main_display() to do most of the setup work.
-	Call Settings.save () to save all settings.
-	* net.cc (theSetting): Delete.
-	* site.cc (SiteSetting::save): Record whether we've saved the
-	information already.
-	(get_site_list): Just use value returned from new UserSettings method
-	rather than parsing a file.
-	(SiteSetting::getSavedSites): Ditto.
-	(write_cache_list): Use UserSettings operator to store mirror cache.
-	(save_cache_file): Ditto.
-	* source.cc (theSetting): Delete.
-
-	* win32.h: gcc-4 accommodation.
-
-2009-06-26  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* res.rc (SETUP_STANDARD_DIALOG_W, SETUP_STANDARD_DIALOG_H,
-	SETUP_SMALL_DIALOG_W, SETUP_SMALL_DIALOG_H):  Add constant defines
-	for dialog sizes.
-	(SETUP_STANDARD_DIALOG_DIMS, SETUP_SMALL_DIALOG_DIMS):  Add helper
-	macros for (W,H) pairs of dimensions.
-	(SETUP_HEADICON_X):  New global constant define.
-	(IDD_SOURCE, IDD_VIRUS, IDD_LOCAL, IDD_ROOT, IDD_SITE, IDD_NET,
-	IDD_INSTATUS, IDD_PROXY_AUTH, IDD_NET_AUTH, IDD_DESKTOP,
-	IDD_FTP_AUTH DIALOG, IDD_DROPPED):  Use the above for dialog sizes,
-	horizontal rules and icon positioning.
-	(SETUP_KPCE_W):  New define for radio-button size.
-	(SETUP_VIEWCAP_W, SETUP_VIEWCAP_X, SETUP_VIEW_W, SETUP_VIEW_X,
-	SETUP_EXP_X, SETUP_CURR_X, SETUP_PREV_X, SETUP_KEEP_X):  Add defines
-	for right-aligned controls.
-	(SETUP_SEARCH_X, SETUP_SEARCH_W, SETUP_SEARCHTEXT_X,
-	SETUP_SEARCHTEXT_W, SETUP_CLEAR_X, SETUP_CLEAR_W):  Likewise defines
-	for left-aligned controls.
-	(IDD_CHOOSE):  Use all the above, and reformat with whitespace
-	between args for clarity.
-
-2009-06-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* Makefile.am (setup_LDADD): Add -lshlwapi.
-	* PickView.cc: Include shlwapi.h.
-	(PickView::setViewMode): Compare package name with search string
-	case-insensitive.
-	(PickView::insert_category): Ditto.
-
-2009-06-26  Corinna Vinschen  <corinna@vinschen.de>
-
-	* script.cc (init_run_script): Don't set $HOME to /tmp.  It breaks
-	mkpasswd -c.
-
-2009-06-25  Corinna Vinschen  <corinna@vinschen.de>
-
-	* script.cc (init_run_script): Reinstantiate accidentally removed
-	setting of sh.
-
-2009-06-22  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* script.cc (init_run_script): Revert to initializing cmd based on OS
-	type.
-
-2009-06-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* script.cc (Script::run): Start bash without -c option.
-
-2009-06-20  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* threebar.cc (ThreeBarProgressPage::ins_dialog): Move variable to more
-	appropriate class.
-	(ThreeBarProgressPage::MaximizeDialog): Move function to more
-	appropriate class.
-	(ThreeBarProgressPage::OnMessageApp): Remove MaximizeDialog calls.
-	* threebar.h: Remove maximize handling.
-	* choose.cc (ChooserPage::ins_dialog): New variable.
-	(ChooserPage::MaximizeDialog): New function.
-	(ChooserPage::ChooserPage): Remove unneeded handling of nCmdShow.
-	(ChooserPage::OnActivate): Maximize chooser page via MaximizeDialog.
-	(ChooserPage::OnNext): Revert chooser page to normal before returning.
-	* main.cc (main): Don't pass cmd_show to ChooserPage.
-	* propsheet.cc (PropSheetProc): Accommodate change in class for
-	SetHwndDialog.
-
-2009-06-20  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* script.cc (shells): Delete.
-	(cmd): Just assign to "cmd.exe" since we're always running on NT now.
-	(sanitize_PATH ): New function.
-	(init_run_script): Ensure that we're only called once.  Strip
-	environment of non-pertinent stuff.  Call sanitize_PATH to remove
-	non-standard stuff from the PATH.  Set up a few standard environment
-	variables.
-
-2009-06-16  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (create_install_root): Don't load mount table again.
-	(read_mounts_nt): Don't break loop, rather continue when not being
-	able to open "Cygwin" registry key.
-
-2009-06-03  Ralph Hempel  <rhempel@bmts.com>
-
-	* source.cc: Add support for both -D and -L on the command line.
-
-2009-06-03  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (unlink): Rename from DeleteFileW.  Take additional
-	parameter to indicate file type to unlink.  Use in flags given to
-	NtCreateFile.
-	(DeleteFileW): Just call unlink from here with FILE_NON_DIRECTORY_FILE
-	flag.
-	(RemoveDirectoryW): Ditto with FILE_DIRECTORY_FILE flag.
-
-2009-05-30  Charles Wilson  <cygwin@cwilson.fastmail.fm>
-
-	* script.cc (Script::run): Really start bash with --norc
-	--noprofile options.
-
-2009-05-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* script.cc (Script::run): Start bash with --norc --noprofile options.
-
-2009-05-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (struct _FILE_RENAME_INFORMATION): Remove definition.
-	* io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Set
-	default permission for .exe files to 0755.
-	(io_stream_cygfile::mklink): Try to create real hardlink first.  Add
-	comment.
-	* mklink2.cc (mkcyghardlink): New function to create real hardlink.
-	* mklink2.h (mkcyghardlink): Declare.
-	* mount.cc (from_fstab_line): Set got_usr_bin and got_usr_lib flags
-	if /usr/bin and /usr/lib mount points exist in /etc/fstab.
-	(add_usr_mnts): Only create mounts if corresponding got_usr_bin and
-	got_usr_lib flags are not set.
-	(read_mounts_nt): Initialize got_usr_bin and got_usr_lib to false.
-	Always call add_usr_mnts, even if from_fstab succeeded.
-	* ntdll.h: Include ddk/ntifs.h.
-
-2009-05-12  Corinna Vinschen  <corinna@vinschen.de>
-
-	* filemanip.cc (GetFileAttributesW): Add accidentally omited
-	OBJ_CASE_INSENSITIVE when creating OBJECT_ATTRIBUTES.
-	(SetFileAttributesW): Ditto.
-	(MoveFileW): Ditto.
-	(DeleteFileW): Ditto.
-	(RemoveDirectoryW): Ditto.
-	(nt_wfopen): Ditto.
-
-2009-05-11  Bryan Thrall  <bryan.thrall@flightsafety.com>
-
-	* localdir.cc (load_dialog): Choose description string based on install
-	type.
-	* res.rc (IDD_LOCAL_DIR): Replace static description text with
-	IDC_LOCAL_DIR_DESC.
-	* resource.h (IDS_LOCAL_DIR_DOWNLOAD): New string resource id.
-	(IDS_LOCAL_DIR_INSTALL): Likewise.
-	(IDC_LOCAL_DIR_DESC): New text control resource id.
-
-2009-05-11  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* main.cc (set_cout): Simplify code a little.
-
-2009-05-11  Bryan Thrall  <bryan.thrall@flightsafety.com>
-
-	* choose.cc (ChooserPage::OnMessageCmd): Clear search filter when
-	clear button clicked.
-	* res.rc (IDD_CHOOSE_DIALOG): Add IDC_CHOOSE_CLEAR_SEARCH button.
-	* resource.h (IDC_CHOOSE_CLEAR_SEARCH): New button resource ID.
-
-2009-05-11  Corinna Vinschen  <corinna@vinschen.de>
-
-	* UserSettings.cc (UserSettings::settingFileForLoad): Fix local load
-	path strings.
-	(UserSettings::settingFileForSave): Never store in cwd.
-	* autoload.c (ntdll): Autoload ntdll.dll functions here.
-	* desktop.cc (make_cygwin_bat): Use GetFileAttributesW rather than
-	_waccess.  Use nt_wfopen instead of _wfopen.
-	(save_icon): Ditto.
-	* filemanip.cc (get_file_size): Call io_stream::open with empty mode
-	string to avoid opening file twice.
-	(GetFileAttributesW): New function to replace Win32 function with
-	equivalent function opening files with backup intent.
-	(SetFileAttributesW): Ditto.
-	(MoveFileW): Ditto.
-	(DeleteFileW): Ditto.
-	(RemoveDirectoryW): Ditto.
-	(nt_wfopen): New function to replace _wfopen with equivalent function
-	opening files with backup intent.
-	* filemanip.h (nt_wfopen): Declare.
-	* io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Initalize
-	lasterr to 0.  Allow empty mode and don't open file, if so.  Call
-	nt_wfopen rather than _wfopen.
-	(io_stream_cygfile::exists): Use GetFileAttributesW rather than
-	_waccess.
-	(io_stream_cygfile::get_size): Use CreateFileW/GetFileSize to get
-	file size on NT.
-	* io_stream_file.cc (io_stream_file::io_stream_file): Initalize lasterr
-	to 0.  Allow empty mode and don't open file, if so.  Call nt_wfopen
-	rather than _wfopen.
-	(io_stream_file::exists): Use GetFileAttributesW rather than _waccess.
-	(io_stream_file::remove): Don't try to remove non-existant file.
-	(io_stream_file::get_size): Use CreateFileW/GetFileSize to get
-	file size on NT.  Add comment to keep track of 2GB border.
-	* mkdir.cc: Remove function pointers for ntdll functions.
-	(init_ntfuncs): Remove function.
-	(mkdir_p): Drop call to init_ntfuncs.  Call ntdll functions directly
-	rather than over local function pointers.
-	* ntdll.h: New file.
-	* postinstall.cc (do_postinstall_reflector): Switch to admins group
-	as primary group after postinstall scripts have been written.
-	Explain why.
-	(do_postinstall): Add comment.
-	* res.rc: Bump copyright date.
-	* win32.h (class TokenGroupCollection): Remove.
-	* win32.cc (TokenGroupCollection::populate): Remove.
-	(TokenGroupCollection::find): Remove.
-	(NTSecurity::setDefaultSecurity): Drop reading token groups.  Just
-	try to switch to admins group as primary group.
-
-2009-05-07  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_db.cc (ConnectedLoopFinder::doIt): Revert patch from
-	2008-08-29.  Add dumb hardcoded algorithm to make sure base-cygwin
-	and base-passwd are always the first packages in the postinstall
-	executable order.
-
-2009-05-06  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (Installer::StandardDirs): Add /home with 1777 perms.
-	* main.cc (main): Drop setting $CYGWIN to nontsec.
-
-2009-04-24  Andrew Punch  <andrew@magneticbooks.com.au>
-
-	* PickView.h:  Add #include <string>.
-	(PickView::SetPackageFilter):  Add new function.
-	(PickView::packageFilterString):  Add new string data member.
-	* PickView.cc (PickView::setViewMode):  Use it to filter names.
-	(PickView::insert_category):  Likewise.
-	(PickView::PickView):  Initialise packageFilterString to blank.
-	* res.rc (IDD_CHOOSE):  Add IDC_CHOOSE_SEARCH_EDIT and
-	IDC_CHOOSE_SEARCH_LABEL controls.
-	(IDS_SEARCH_TOOLTIP):  Add new string resource.
-	* resource.h (IDS_SEARCH_TOOLTIP):  New string resource ID.
-	(IDC_CHOOSE_SEARCH_EDIT):  New edit control ID.
-	(IDC_CHOOSE_SEARCH_LABEL):  Mew static text control ID.
-	* choose.cc (ChooserControlsInfo[]):  Add IDC_CHOOSE_SEARCH_LABEL
-	and IDC_CHOOSE_SEARCH_EDIT controls to auto-resize list.
-	(ChooserPage::OnInit):  Add tooltip to search edit box.
-	(ChooserPage::OnMessageCmd):  Handle EN_CHANGE event from
-	IDC_CHOOSE_SEARCH_EDIT.
-
-2009-04-24  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* propsheet.cc (PropSheetWndProc):  Re-enable hasMinRect.
-
-2009-04-23  Corinna Vinschen  <corinna@vinschen.de>
-
-	* win32.h (NTSecurity::primaryGroupSID): Convert to a structure for
-	direct usage in GetTokenInformation.
-	(NTSecurity::osid): Remove.
-	(NTSecurity::setAdminGroup): Declare.
-	* win32.cc (NTSecurity::resetPrimaryGroup): Accommodate change to
-	primaryGroupSID.  Add log output.
-	(NTSecurity::setAdminGroup): New method.
-	(NTSecurity::setDefaultSecurity): Use local structures for getting
-	TOKEN_USER and setting TOKEN_OWNER information.  Accommodate change to
-	primaryGroupSID.  Slightly enhance log output.
-	Only set primary group to Administrators group when installing for
-	all users.  Call setAdminGroup to do it.
-
-2009-04-22  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mklink2.cc (mkcygsymlink_nt): Allow 4K chars in symlink.  Use strncat
-	rather than strcat.
-	* postinstall.cc (do_postinstall): Reset user token to original
-	primary group.
-	* win32.cc (NTSecurity::resetPrimaryGroup): New method.
-	(NTSecurity::setDefaultSecurity): Store original primary group in
-	new NTSecurity member primaryGroupSID.  Set primary group in user token
-	to Administrators group for admin users.  Align comment.
-	* win32.h (class NTSecurity): Add member primaryGroupSID.
-	(NTSecurity::resetPrimaryGroup): Declare.
-
-2009-04-09  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* main.cc (set_cout): Load AttachConsole dynamically to avoid using it
-	on older Windows which don't support it.
-
-2009-03-21  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* LogFile.cc (LogFile::endEntry): Output messages to stdout.
-	* main.cc (set_cout): New function.  Sets stdout to console if one
-	exists.
-	(main): Redirect stdout to console if unattended_mode or help option is
-	specified and no stdout is available.
-
-2009-03-21 Terry Fleming  <terrynfleming@gmail.com>
-	   Christopher Faylor <me+cygwin@cgf.cx>
-
-	* propsheet.cc (PropSheetWndProc): Detect a Window closing event and
-	issue an "Are you sure" message.
-
-2008-08-29  Corinna Vinschen  <corinna@vinschen.de>
-
-	* package_db.cc (ConnectedLoopFinder::doIt): Add code to get a basic
-	order into the dependency list.  Add comment to explain why.
-
-2008-08-22  Brian Dessent  <brian@dessent.net>
-
-	* KeysSetting.cc: Include string.h for memcpy et al.
-	* filemanip.cc: Include stdlib.h for for mbstowcs.
-	* io_stream_cygfile.h: Update cygmkdir_p prototype for mode_t.
-	* mount.cc (conv_fstab_spaces): Silence gcc 4.3 warning ("parentheses
-	around assignment used as truth value").
-
-2008-08-20  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (Installer::StandardDirs): Additionally create /var/log
-	dir.  Set mode of /var/log and /var/run to 01777.
-	* localdir.cc (LocalDirSetting::save): Create /var/log with 01777
-	permissions before creating setup.log files.
-
-2008-08-20  Corinna Vinschen  <corinna@vinschen.de>
-
-	* io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode):
-	Accommodate SetPosixPerms being method of nt_sec.
-	* mkdir.cc (mkdir_p): Ditto.
-	* mklink2.cc (mkcygsymlink_nt): Ditto.
-	* win32.cc: Slightly rearrange.
-	(NTSecurity::SetPosixPerms): Make SetPosixPerms method of NTSecurity
-	rather than stand-alone function.  Remove dynamic allocation for
-	security descriptors in favor of static allocation.  Drop out
-	preliminary if well-known SIDs are not initialized.  Slightly change
-	and rearrange comments.  Add creating NULL SID ACE for special
-	permissions.
-	(NTSecurity::initialiseWellKnownSIDs): New function, replacing
-	NTSecurity::initialiseEveryOneSID.  Initialize all well-known SIDs
-	here.  Set wellKnownSIDsinitialized to true on success.
-	(NTSecurity::setDefaultDACL): Don't call initialiseEveryOneSID.  Change
-	comment.  Drop setting failed.  Don't open process token here.
-	(NTSecurity::setBackupPrivileges): New function.
-	(NTSecurity::setDefaultSecurity): Call initialiseWellKnownSIDs.
-	Open process token here.  Disable setting primary group.  Add comment
-	to explain why.
-	* win32.h (SetPosixPerms): Move to NTSecurity.
-	(class NTSecurity): Add SetPosixPerms method.  Make all SIDs private
-	again.  Make NoteFailedAPI private.  Add setBackupPrivileges method.
-	Rename usid to UsersSID.  Remove failed method and _failed member.
-	Add wellKnownSIDsinitialized accessors and _wellKnownSIDsinitialized
-	member.
-
-2008-08-19  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (struct std_dirs_t): New type.
-	(class Installer): Change type of StandardDirs to std_dirs_t.
-	(Installer::StandardDirs): Store filename and mode.
-	(do_install_thread): Call io_stream::mkpath_p with name and mode from
-	Installer::StandardDirs.
-	* main.cc (main): Call setDefaultSecurity on global nt_sec.
-	* IOStreamProvider.h (IOStreamProvider::mkdir_p): Add mode parameter.
-	* LogFile.cc (LogFile::log_save): Call io_stream::mkpath_p with 0755
-	mode.
-	* UserSettings.cc (UserSettings::settingFileForSave): Ditto.
-	* desktop.cc (make_link): Ditto.
-	* download.cc (download_one): Ditto.
-	* ini.cc (do_remote_ini): Ditto.
-	(do_ini_thread): Ditto.
-	* package_db.cc (packagedb::flush): Ditto.
-	* archive.cc (archive::extract_file): Ditto.  Call set_mtime_and_mode
-	with mode from archive.  Add code to handle directory permissions as
-	well.
-	* archive_tar.cc (archive_tar::get_mtime): Return time_t.  Reformat.
-	(archive_tar::get_mode): New method.
-	* archive_tar.h (class archive_tar_file): Fix prototypes.  Replace
-	prototype for set_mtime with prototype for set_mtime_and_mode.
-	(class archive_tar): Ditto.
-	* archive_tar_file.cc (archive_tar_file::get_mtime): Return time_t.
-	(archive_tar_file::get_mode): New method returning mode from tar header.
-	* compress_bz.cc (compress_bz::set_mtime_and_mode): Replace set_mtime.
-	(compress_bz::get_mtime): Return time_t.
-	(compress_bz::get_mode): New function.
-	* compress_gz.cc: Ditto.
-	* compress_lzma.cc: Ditto.
-	* io_stream.cc (io_stream::mkpath_p): Take additional file mode.
-	Call mkdir_p with additional file mode.
-	* io_stream_cygfile.cc (CygFileProvider::mkdir_p): Take additional file
-	mode.
-	(cygmkdir_p): Ditto.  Call mkdir_p with additional file mode.
-	(io_stream_cygfile::set_mtime_and_mode): Replace set_mtime.  Call
-	SetPosixPerms.
-	* io_stream_file.cc (FileProvider::mkdir_p): Take additional file mode.
-	(io_stream_file::set_mtime_and_mode): Replace set_mtime.
-	* mkdir.cc (init_ntfuncs): New function to initialize function pointers
-	from ntdll.dll.
-	(mkdir_p): Take additional file mode.  On NT, use NT functions to create
-	directory.  Call SetPosixPerms.
-	* compress_bz.h: Change prototypes accordingly.
-	* compress_gz.h: Ditto.
-	* compress_lzma.h: Ditto.
-	* io_stream.h: Ditto.
-	* io_stream_cygfile.h: Ditto.
-	* io_stream_file.h: Ditto.
-	* io_stream_memory.h: Ditto.
-	* mkdir.h: Ditto.
-	* mklink2.cc (mkcygsymlink_nt): Open file with STANDARD_RIGHTS_ALL
-	access and FILE_FLAG_BACKUP_SEMANTICS flag.  Call SetPosixPerms.
-	* mount.cc (from_fstab): Open file with FILE_FLAG_BACKUP_SEMANTICS.
-	* script.cc (OutputLog::OutputLog): Call io_stream::mkpath_p with 0755
-	mode.  Open file with FILE_FLAG_BACKUP_SEMANTICS.
-	* win32.cc (SetPosixPerms): New function to set POSIX-like permissions.
-	(nt_sec): New global NTSecurity variable.
-	(NTSecurity::setDefaultDACL): Open token with TOKEN_ADJUST_PRIVILEGES.
-	(NTSecurity::setDefaultSecurity): Enable SE_BACKUP_NAME and
-	SE_RESTORE_NAME privileges if available.
-	* win32.h (SetPosixPerms): Add prototype.
-	(class NTSecurity): Make everyOneSID and administratorsSID public.
-	(nt_sec): Declare.
-
-2008-08-14  Corinna Vinschen  <corinna@vinschen.de>
-
-	* mount.cc (unconvert_slashes): New inline function.
-	(skip_ws): New inline function.
-	(find_ws): New inline function.
-	(conv_fstab_spaces): New inline function.
-	(from_fstab_line): New function to read single line from fstab file.
-	(from_fstab): New function to read /etc/fstab file and fill mount
-	table.
-	(read_mounts_nt): Call from_fstab after getting setup/rootdir from
-	registry.  Only call add_usr_mnts if no fstab file found.
-
-2008-08-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (Installer::installOne): Skip 46 bytes type tar package
-	silently.
-
-2008-08-13  Corinna Vinschen  <corinna@vinschen.de>
-
-	* install.cc (Installer::installOne): Use MoveFileExW on NT.  Special
-	case for bug in Windows 2000.
-	* package_meta.cc (packagemeta::uninstall): Use wide char file functions
-	on NT.
-	* win32.h (VersionInfo::major): New method.
-	(VersionInfo::minor): New method.
-	(OSMajorVersion): Define.
-	(OSMinorVersion): Define.
-
-2008-08-12  Corinna Vinschen  <corinna@vinschen.de>
-
-	Revamp for Cygwin 1.7.
-	* desktop.cc (make_cygwin_bat): Use wide char file functions on NT.
-	(save_icon): Ditto.
-	* filemanip.cc (tfx_chars): New char table for wide char transformation
-	of reserved FS chars to UNICODE private use area.
-	(transform_chars): New static function.
-	(mklongpath): New function to convert multibyte path to wide char
-	path with long path prefix.
-	* filemanip.h (mklongpath): Declare.
-	* ini.h (SETUP_INI_FILENAME): Use setup.ini filenames as defined in
-	real life (setup-2.ini/setup.ini).
-	(SETUP_BZ2_FILENAME): Ditto.
-	* install.cc (do_install_thread): Don't create registry mount points
-	on NT, rather create setup/rootdir entry.
-	* io_stream_cygfile.cc: Throughout use wide char file functions on NT.
-	(io_stream_cygfile::w_str): New method to create wide char path.
-	* io_stream_cygfile.h (class io_stream_cygfile): Remove lmode member.
-	Add wname member and w_str method.
-	* io_stream_file.cc: Throughout use wide char file functions on NT.
-	(io_stream_file::w_str): New method to create wide char path.
-	* io_stream_file.h (class io_stream_file): Remove lmode member.
-	Add wname member and w_str method.
-	* mkdir.cc (mkdir_p): Use wide char file functions on NT.
-	* mklink2.cc (mkcygsymlink_9x): Rename from mkcygsymlink.  Make static.
-	(mkcygsymlink_nt): New static function.
-	(mkcygsymlink): Just call mkcygsymlink_9x or mkcygsymlink_nt dependent
-	on OS.
-	* mount.cc (CYGWIN_INFO_CYGWIN_SETUP_REGISTRY_NAME): Define.
-	(remove1): Move to earlier point in file to avoid declaration.
-	(remove_mount): Ditto.  Make static.
-	(create_install_root): New function to create setup/rootdir registry
-	value on NT.
-	(read_mounts_9x): Rename from read_mounts.  Make static.  Conditionalize
-	for OS.
-	(add_usr_mnts): New static function.
-	(read_mounts_nt): Ditto, to read mounts on NT.
-	(read_mounts): Just call read_mounts_nt or read_mounts_9x dependent on
-	OS.
-	(set_root_dir): On NT, call read_mounts.
-	(cygpath): Only add slash for non-root mount to avoid multiple slashes
-	in resulting path (invalid in long path names).
-	* mount.h (find_mount): Drop declaration.
-	(remove_mount): Ditto.
-	(create_install_root): Add declaration.
-	(read_mounts): Accommodate new parameter.
-	* package_db.cc (chosen_db_task): New global variable.
-	* package_db.h (chosen_db_task): Declare.
-	* root.cc (check_if_enable_next): Don't use get_root_dir here to
-	avoid having to call save_dialog in RootPage::OnMessageCmd.
-	(GetDlgItemRect): New static inline function.
-	(SetDlgItemRect): Ditto.
-	(load_dialog): On NT, stretch "Install For" block to full dialog width
-	and hide "Default Text File Type" block.
-	(save_dialog): On NT set root_text always to IDC_ROOT_BINARY.
-	(RootPage::OnMessageCmd): Remove call to save_dialog.
-	(RootPage::OnNext): Initialize packagedb here the first time, to
-	avoid fetching wrong data from different previous installation.
-	* source.cc (save_dialog): Don't initialize packagedb here, rather
-	just memorize setting in chosen_db_task for the deferred initialization
-	in RootPage::OnNext.
-
-2008-08-07  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	Implement command-line selection of packages to install and make
-	unattended mode deal with any dialogs that might arise.  A joint
-	effort synthesized from contributions by:
-
-	Dr. Frank Lee  <rl201@cam.ac.uk>
-	Bryan Thrall  <bryan.thrall@flightsafety.com>
-	Kohsuke Kawaguchi  <kk@kohsuke.org>
-	Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* install.cc (rebootneeded):  Don't define statically here.
-	(do_install_thread):  Let exit_msg reflect rebootneeded.
-	* main.cc (main):  If rebootneeded, log it when exiting.
-	* msg.cc (mbox):  In unattended_mode, choose and log default answer.
-	* package_db.cc (packagedb::fillMissingCategory):  Iterate over all
-	packages adding those selected by packagemeta::isManuallyWanted to
-	base category so that command-line selections are installed.
-	* package_meta.cc (PackageOption):  Add new StringOption to allow
-	command-line selection of packages to add to base install.
-	(packagemeta::isManuallyWanted):  New function tests if package was
-	selected on command-line.
-	(packagemeta::addToCategoryBase):  New function adds package to
-	"base" category.
-	* state.cc (rebootneeded):  Define here non-static.
-	* state.h (rebootneeded):  Declare here with extern linkage.
-	* threebar.cc (ThreeBarProgressPage::MaximizeDialog):  Don't change
-	size when running in unattended mode.
-
-2008-08-05  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* UserSettings.cc (UserSettings::settingFileForLoad): Look locally for
-	settings before looking outside of current directory.
-	* choose.cc (ChooserPage::ChooserPage): Record the property sheet's
-	current show state via new passed in parameter.
-	* choose.h (ChooserPage::ChooserPage): Reflect change in argument list.
-	(ChooserPage::nCmdShow): Define new element.
-	* main.cc (main): Send current show state to Chooser.
-	* package_version.cc (packageversion::set_requirements): Increase
-	recursion check from 5 to 30.
-	* propsheet.cc (PropSheetWndProc): Register hwndDlg with
-	ThreeBarProgressPage.
-	* threebar.cc (ControlAdjuster::ControlInfo): Initialize cmd_show_set.
-	(ThreeBarProgressPage::MaximizeDialog): New function.
-	(ThreeBarProgressPage::OnMessageApp): Call MaximizeDialog to maximize
-	package selection screen and restore when done.
-	* threebar.h (ThreeBarProgressPage::MaximizeDialog): Declare function.
-	(ThreeBarProgressPage::cmd_show_set): Declare variable.
-	(ThreeBarProgressPage::cmd_show): Declare variable.
-	(ThreeBarProgressPage::ins_dialog): Declare variable.
-	(ThreeBarProgressPage::SetHwndDialog): Define function.
-
-2008-07-22  Charles Wilson  <cygwin@cwilson.fastmail.fm>
-
-	Add support for .tar.lzma files (decompress only).
-
-	* Makefile.am: Add new files.
-	* compress.cc (compress::decompress): add support
-	for compress_lzma.
-	* compress_lzma.h: new file.
-	* compress_lzma.cc: new file.
-	* filemanip.cc (find_tar_ext): add support for
-	.tar.lzma files.
-	* install.cc (Installer::installOne): update comments.
-	* lzma-sdk/LzmaDec.h: new file.
-	* lzma-sdk/LzmaDec.c: new file.
-	* lzma-sdk/Types.h: new file.
-
-2008-07-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
-
-	* compress.cc (compress::decompress): clean up concrete
-	decompressor objects on failure -- but in that case, do
-	NOT destroy original io_stream.
-	* compress_bz.h (compress_bz::release_original): new method.
-	(owns_original): new member variable.
-	* compress_bz.cc (compress_bz::release_original): new method.
-	(compress_bz::compress_bz): take ownership of parent by default.
-	(compress_bz::~compress_bz): only delete original if
-	owns_original is true.
-	* compress_gz.h (compress_gz::release_original): new method.
-	(owns_original): new member variable.
-	* compress_gz.cc (compress_gz::release_original): new method.
-	(compress_gz::construct): take ownership of parent by default.
-	(compress_gz::~compress_gz): only delete original if
-	owns_original is true.
-
-2008-06-25  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* configure.in, gpg-error-config-fake:  Revert previous removal.
-
-2008-06-25  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* net.cc:  Correct stray CRLF.
-
-2008-06-25  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* configure.in (ac_cv_path_GPG_ERROR_CONFIG):  Remove nasty hack.
-	* gpg-error-config-fake:  Delete file obsoleted by de-hackification.
-
-2008-06-24  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* configure.in: Disable shared library builds.
-
-2008-06-24  Christopher Faylor  <me+cygwin@cgf.cx>
-
-	* Makefile.am: Make and install libraries into common location and use
-	them from there.
-	* configure.in: Find gpg-error-config in the libgpg-error/src
-	subdirectory rather than using the host system's version.  Set the
-	prefix and exec_prefix to a common location for the subdirs so that
-	useful files will be installed in a common location.
-
-2008-06-22  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	Merged across diffs between setup_crypto_branch_branchpoint and
-	setup_crypto_branch_mergepoint2 from setup_crypto_branch.
-
-	* crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
-	KeysSetting.h, gpg-error-config-fake, cygwin.pub, cyg-pubkey.h,
-	gpg-key-to-s-expr.sh: New files.
-	* ini.cc, ini.h, resource.h, res.rc, netio.cc, Makefile.am,
-	configure.ac, libgetopt++/src/OptionSet.cc: Modified files.
-
-2008-06-21  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* ini.cc (do_remote_ini):  Revert misbegotten removal of
-	not-always-superfluous-after-all added slash in URLs.
-
-2008-06-18  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* gpg-packet.h (GPG_KEY_SEXPR_BUF_SIZE):  Move from here ...
-	* crypto.h (GPG_KEY_SEXPR_BUF_SIZE):  ... to here.
-	(GPG_KEY_MAX_COEFF_SIZE):  Add related definition.
-
-2008-06-18  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* gpg-packet.cc (walk_packets_1):  Check packet length field is
-	valid sane and possible to avoid malicious manipulation.
-	* ChangeLog:  Corrected date on previous commit.
-
-2008-06-18  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* crypto.cc (add_key_from_sexpr):  Use real buffer size, not debug
-	constant size.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* crypto.cc (verify_ini_file_sig):  Actually set init-once flag!
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* crypto.cc (KeepUntrustedKeysOption):  Fix helpstring punctuation.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* crypto.cc (verify_ini_file_sig):  Fix two minor logic errors.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* ini.h (current_ini_sig_name):  Declare extern.
-	* ini.cc (current_ini_sig_name):  New variable.
-	(NoVerifyOption):  New boolean option.
-	(do_remote_ini):  If sig verification not disabled, attempt to
-	download the matching sig file for any setup.bz2 or setup.ini
-	and use it to verify or discard the download.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* resource.h (IDS_SIG_INVALID, IDS_CRYPTO_ERROR):  Reserve IDs for
-	two new message strings.
-	* res.rc (IDS_SIG_INVALID, IDS_CRYPTO_ERROR):  Define the text.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* Makefile.am (setup_SOURCES):  Add new files crypto.cc, crypto.h,
-	cyg-pubkey.h, gpg-packet.cc, gpg-packet.h. KeysSetting.cc and
-	KeysSetting.h to the build.
-	* crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
-	KeysSetting.h:  New files.  Adds gpg sig verification support.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* Makefile.am (DIST_SUBDIRS, SUBDIRS):  Add libgpg-error and
-	libgcrypt subdirs.
-	(AM_CPPFLAGS):  Add -I paths to generated headers in both and to
-	 shipped headers in libgcrypt.
-	(setup_LDADD):  Add libgpg-error.a and libgcrypt.a to final link.
-
-	* configure.in (ac_cv_path_GPG_ERROR_CONFIG):  Preload into cache
-	to fake out libgcrypt configure process.
-	(AC_CONFIG_SUBDIRS):  Add libgpg-error/ and libgcrypt/
-
-	* gpg-error-config-fake:  New shell script to redirect libgcrypt
-	sub-configure into looking for newly-built libgpg-error.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* setup/libgpg-error/:  Fresh import of upstream sources of
-	libgpg-error-1.6.tar.bz2 from http://www.gnupg.org/
-	* setup/libgcrypt/:  Fresh import of upstream sources of
-	libgcrypt-1.4.1.tar.bz2 from http://www.gnupg.org/
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* netio.cc (NetIO::set_url):  Avoid double-free bug on delete
-	by setting path to a strdup of url rather than using the same
-	pointer value twice.
-
-2008-06-16  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-	* cygwin.pub:  Add reference copy of Cygwin setup signing key.
-	* gpg-key-to-s-expr.sh:  New bash script.  Outputs textual
-	representation of public key in s-expr format.
-	* cyg-pubkey.h:  New header generated by the above from Cygwin
-	setup signing key.  Currently needs manual regeneration if key
-	ever updated.
-
-2008-04-16  Brian Dessent  <brian@dessent.net>
-
-	* mount.cc: Include malloc.h.
-	(is_admin): Use alloca instead of a VLA in case
-	GetTokenInformation is sensitive to alignment.
-
-2008-04-15  Brian Dessent  <brian@dessent.net>
-
-	* mount.cc (is_admin): Get explicit size of required buffer by
-	calling	GetTokenInformation first with NULL.
-	
-2008-04-10  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am (setup_LDFLAGS): Make sure static libbz2 and zlib
-	are used.
-
-2008-04-09  Brian Dessent  <brian@dessent.net>
-
-	* README: flex and bison are required when building from CVS.
-
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am (snapshot): Provide default value of ${cygwinsite}
-	if not set.
-
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am (release): Use -f so that "make release" works
-	when existing binaries of the same name exist.
-	
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	* res.rc (IDD_SPLASH): Update copyright years on splash page.
-
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Update.
-	* install.cc (Installer::installOne): Cope with compressed
-	0-byte dummy packages.  Fix progress bar update bug introduced
-	in earlier refactoring.
-
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Update.
-
-2008-04-08  Brian Dessent  <brian@dessent.net>
-
-	Various warning/header cleanups necessary for clean gcc 4.3 build.
-	* ConnectionSetting.cc: Include stdlib.h.
-	* LogFile.cc: Ditto.
-	* Makefile.am: Don't hardcode paths to MinGW libz and libbz2.
-	* PickView.cc: Include limits.h.
-	* String++.cc: Include string.h.
-	* archive_tar.cc (archive_tar::next_file_name): Silence nested-if
-	warning.
-	* autoload.c: Switch back to .text section before emiting
-	autoload_common.
-	* choose.cc: Include stdlib.h and algorithm.
-	* compress_gz.cc: Include memory.h and malloc.h.
-	* filemanip.cc: Include string.h.
-	(parse_filename): Silence nested-if warning.
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Silence warning.
-	* package_db.cc: Include algorithm.
-	* site.cc (get_site_list): Silence warning.
-	* win32.cc: Include memory.
-	* csu_util/MD5Sum.cc: Include string.h.
-	
-2008-03-02  Dave Korn  <dave.korn@artimi.com>
-
-	* install.cc (Installer::installOne):  Accept new HWND argument
-	from caller and pass it to MessageBox calls so that MB_TASKMODAL
-	can work.
-	(check_for_old_cygwin):  Likewise.
-	(do_install_thread):  Pass owner's HWND (from thread context) when
-	calling them.
-
-2008-02-23  Dave Korn  <dave.korn@artimi.com>
-
-	* cygpackage.cc (cygpackage::getfirstfile):  Guard against trying to
-	construct std::string from NULL returned by io_stream::gets when the
-	stream decompressor fails on a corrupt *.lst.gz file.
-
-2008-02-21  Dave Korn  <dave.korn@artimi.com>
-
-	* geturl.cc (progress):  Correct SI unit notation.
-
-2008-02-01  Vincent Privat <vincent.privat@gmail.com>
-
-	* net.cc (OnInit): New StringOption (ProxyOption)
-	This new option (-p) allows to call setup.exe with a proxy
-	in its command-line arguments.
-
-2007-07-31  Brian Dessent  <brian@dessent.net>
-
-	* ini.cc (do_remote_ini): Fix crash due to double free of ini_file.
-
-2007-07-30  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Update.
-	* configure.in (AM_INIT_AUTOMAKE): Enable more automake warnings.
-	* Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
-	(CLEANFILES): Add.  Minor portability tweaks.
-	* tests/Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
-	* archive.cc (archive::extract): Try to be more compatible when
-	opening tar files.
-	* compress_bz.cc: Fix whitespace throughout.
-	(compress_bz::~compress_bz): Ensure that underlying io_stream's dtor is
-	also run.
-	* install.cc (Installer::installOne): Refactor.
-	* package_db.cc (ConnectedLoopFinder::doIt): Move some log spewage into
-	setup.log.full from setup.log.
-	(packagedb::connectedBegin): Ditto. Consolidate log output to one line.
-
-2007-07-02  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Update.
-
-2007-06-26  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am (release): Drop inconsistent use of $(EXEEXT).  Leave an
-	untouched copy of setup.exe so that later make invocations don't
-	unnecessarily rebuild it.
-	(snapshot): Fix typo.
-	* install.cc (md5_one): Don't try to check packages whose
-	pkgsource.Cached () is NULL, as with those whose download failed.
-
-2007-06-26  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Update to reflect release branch.
-
-2007-06-26  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Make current.
-
-2007-05-30  Brian Dessent  <brian@dessent.net>
-
-	* find.h (class Find): Make _start_dir non-const.
-	* find.cc (Find::Find): Append a trailing slash to _start_dir only if
-	it does not already contain one.
-	(Find::accept): Use the previously stored value of _start_dir rather
-	than unconditionally appending a slash.
-
-2007-05-29  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am: No need to specify the default value of --preprocessor
-	to windres.  Rework the automatic version extraction rules so that the
-	source tarball is generated with the proper name and directory instead
-	of setup-0.  Update snapshot rule to also upload a copy of the binary
-	with debugging symbols still present.
-
-2007-05-29  Brian Dessent  <brian@dessent.net>
-
-	This is a general tidying up/modernization of the build infrastructure.
-	Renaming the lexer and parser to .ll and .yy allows using automake's
-	builtin	support for flex and bison with C++ sources, and libinilex is a
-	slightly cleaner way of omitting -Werror.
-
-	* Makefile.am (AUTOMAKE_OPTIONS): Move to AM_INIT_AUTOMAKE.
-	(AM_YFLAGS): Define.
-	(AM_LFLAGS): Define.
-	(INCLUDES): Remove redundant mingw directory.
-	(EXTRA_DIST): Adjust for newly named lexer/parser.
-	(BUILT_SOURCES): Ditto.
-	(inilint_LDADD): Ditto.
-	(inilint_SOURCES): Ditto.
-	(setup_LDADD): Ditto.
-	(setup_SOURCES): Ditto.
-	(iniparse.cc): Remove custom rules.
-	(inilex.cc): Ditto.
-	* configure.in: Update quoting and use modern form of AC_INIT and
-	AM_INIT_AUTOMAKE.
-	* inilex.l: Rename from this ...
-	* inilex.ll: ... to this.
-	* iniparse.y: Rename from this ...
-	* iniparse.yy: ... to this.
-
-2007-05-29  Brian Dessent  <brian@dessent.net>
-
-	* IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
-	Remove error_buf and error_count initializers.
-	(IniParseFindVisitor::visitFile): Store filename in current_ini_name.
-	Use yyerror_count and yyerror_messages in place of removed error_count
-	and error_buf members.
-	* IniParseFindVisitor.h (class IniParseFindVisitor): Remove error_buf
-	and error_count members.
-	* ini.cc: Include io_stream_memory.h.  Remove file static variables
-	error_buf, error_count, and ini_filename.
-	(GuiParseFeedback::progress): Remove some verbose log spam.
-	(do_remote_ini): Recode .ini-fetching logic to properly display parse
-	errors, and to account for corrupt bzip2 files.
-	(yyerror): Moved elsewhere.
-	(fprintf): Delete unused function.
-	* ini.h: Remove useless __cplusplus guard.  Declare extern variables
-	current_ini_name, yyerror_messages, and yyerror_count.
-	* inilex.l: Add current_ini_name, yyerror_messages, and
-	yyerror_count.
-	(ini_init): Initialize new variables.
-	(yybol): Delete.
-	(yyerror): Reimplement using std::string and relocate from ini.cc.
-	* io_stream.cc (io_stream::copy): Add clarifying comment.
-
-2007-05-04  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* resource.h (IDC_STATIC_HEADER): New control id.
-	* res.rc (IDD_SPLASH): Adjust the copyright.
-	(IDD_DESKTOP): Make header text accessible as a separate control.
-	* desktop.cc (set_status): Use eset() instead of SetWindowText().
-	(load_dialog): Disable checkboxes and change dialog text in
-	download-only mode.
-	(DesktopSetupPage::OnInit): Disable checkboxes in download-only
-	mode.
-	* threebar.cc (ThreeBarProgressPage::OnMessageApp): Deprecate the
-	default fallthrough.
-	* download.cc (do_download_thread): Explicitly return the next
-	dialog.
-
-2007-04-19  Max Bowsher  <maxb1@ukf.net>
-
-	* configure.in: Turn inilint default build off again, since I cannot
-	get it to work.
-
-2007-04-19  Max Bowsher  <maxb1@ukf.net>
-
-	* configure.in: Make inilint built by default.
-
-2007-04-19  Max Bowsher  <maxb1@ukf.net>
-
-	* inilintmain.cc: Fix multiple compile errors.
-
-2007-04-19  Max Bowsher  <maxb1@ukf.net>
-
-	* Makefile.am: Make inilint use same warnonly-inilex workaround that
-	setup already does.
-
-2007-03-29  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* LogFile.cc (LogFile::exit): Write exit_msg directly to log, without
-	the message box.
-	* resource.h (IDC_DESKTOP_SEPARATOR,IDC_STATUS_HEADER,IDC_STATUS): New
-	control ids.
-	* res.rc (IDD_DESKTOP): Change the caption.  Add status information.
-	* desktop.h (DesktopSetupPage::DesktopSetupPage): Define constructor
-	in the implementation.
-	* desktop.cc (DesktopControlsInfo): Position specifiers for status
-	information items.
-	(DesktopSetupPage::DesktopSetupPage): Register position specifiers.
-	(set_status): New static method.
-	(load_dialog): Set status information, if available.
-	(DesktopSetupPage::OnInit): Set status header font.
-
-2007-03-01  Brian Dessent  <brian@dessent.net>
-
-	* ini.h (SETUP_INI_FILENAME): Rename setup_9x.ini to setup_legacy.ini.
-	(SETUP_BZ2_FILENAME): Likewise.
-
-2007-02-27  Brian Dessent  <brian@dessent.net>
-
-	* ini.h (SETUP_INI_FILENAME): Add define.
-	(SETUP_BZ2_FILENAME): Add define.
-	* IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use
-	above macros to parameterize setup.ini filename.
-	* fromcwd.cc (SetupFindVisitor::visitFile): Ditto.
-	* ini.cc (do_remote_ini): Ditto.
-	* Makefile.am (setup_SOURCES): Add win32.cc.
-	* autoload.c: Include windows.h directly instead of win32.h so that
-	win32.h can contain C++.
-	* desktop.cc (verinfo): Delete.
-	(make_link): Use IsWindowsNT to check for NT instead of verinfo.
-	(DesktopSetupPage::OnInit): Likewise.
-	* mount.cc (is_admin): Likewise.
-	* script.cc (init_run_script): Likewise.
-	* main.cc (class SIDWrapper, SIDWrapper::SIDWrapper,
-	SIDWrapper::~SIDWrapper, SIDWrapper::theSID, class HANDLEWrapper,
-	HANDLEWrapper::HANDLEWrapper, HANDLEWrapper::~HANDLEWrapper,
-	HANDLEWrapper::theHANDLE, class TokenGroupCollection,
-	TokenGroupCollection::TokenGroupCollection,
-	TokenGroupCollection::~TokenGroupCollection,
-	TokenGroupCollection::populate, TokenGroupCollection::find,
-	class NTSecurity, set_default_sec, NTSecurity::NoteFailedAPI,
-	NTSecurity::NTSecurity, NTSecurity::failed,
-	NTSecurity::initialiseEveryOneSID, NTSecurity::setDefaultDACL,
-	NTSecurity::setDefaultSecurity): Remove implementation of these
-	classes from this file and into new file win32.cc and existing win32.h.
-	(main): Fix whitespace and formatting per GNU coding standards.
-	* res.rc (IDS_SETUPINI_MISSING): Parameterize filename with %s.
-	* win32.cc: New file containing methods removed from main.cc as well
-	as new class VersionInfo methods.
-	* win32.h: Include <string> for std::string.
-	(class SIDWrapper, class HANDLEWrapper, class TokenGroupCollection,
-	class NTSecurity): Add classes removed from main.cc.
-	(class VersionInfo): Add new class.
-	(GetVer): Declare.
-	(IsWindowsNT): Define.
-
-2007-02-20  Brian Dessent  <brian@dessent.net>
-
-	* README: Modernize list of required packages, and mention doconfigure.
-
-2007-02-17  Cesar Strauss  <cstrauss@cea.inpe.br>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
-	Initialize the version and operator fields of the newly created
-	PackageSpecification object, so setup can pick the correct source
-	version later on.
-
-2007-02-17  Brian Dessent  <brian@dessent.net>
-
-	* script.cc (Script::run): Check for existance of script file and
-	return without doing anything if it does not exist.
-
-2006-12-26  Max Bowsher  <maxb1@ukf.net>
-
-	* IniDBBuilder.h (IniDBBuilder): Make this class abstract.
-	* IniDBBuilder.cc: Delete file.
-	* Makefile.am (inilint_SOURCES, setup_SOURCES): Remove IniDBBuilder.cc.
-
-2006-12-26  Max Bowsher  <maxb1@ukf.net>
-
-	Add a shell script that documents/centralizes the standard configure
-	command line.
-
-	* doconfigure: New file.
-	* Makefile.am (EXTRA_DIST): Add doconfigure.
-
-2006-11-28  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* install.cc (Installer::installOne): If file is in use, ask the user
-	to stop processes and retry.
-	(MB_RETRYCONTINUE, IDCONTINUE): New macros.
-	(hMsgBoxHook): New static field.
-	(CBTProc): New window hook function.
-	(_custom_MessageBox): New function.
-	* CHANGES: Update with the above.
-
-2006-10-12  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* desktop.cc (make_cygwin_bat,save_icon): Capitalize filename.
-
-2006-08-06  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* package_version.cc (packageversion::scan): Catch and handle
-	validation exception.
-
-2006-08-06  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* cygpackage.h (filesize): Remove unused field.
-	(cygpackage::createInstance): Ditto.
-	* cygpackage.cc (cygpackage::createInstance): Ditto.
-	* package_db.cc (packagedb::packagedb): Remove unused variables.
-	Simplify parsing of installed.db.
-
-2006-08-06  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* desktop.cc (DesktopSetupPage::OnInit): Remove stray MessageBox.
-
-2006-05-24  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* PickPackageLine.h (PickPackageLine::DrawIcon): Move to PickView.
-	* PickView.h (PickView::DrawIcon): Move from PickPackageLine.
-	(PickView::icon_dc,PickView::bm_icon): New instance field.
-	(PickView::rect_icon,PickView::bg_fg_brush): Ditto.
-	* PickCategoryLine.cc (PickCategoryLine::paint): Use
-	PickView::DrawIcon() instead of BitBlt().
-	* PickPackageLine.cc (PickPackageLine::DrawIcon): Move to PickView.
-	(PickPackageLine::paint): Use PickView::DrawIcon().
-	* PickView.cc (PickView::~PickView): Delete GDI objects.
-	(PickView::init): Create icon drawing context.
-	(PickView::DrawIcon): New function.  Use system default colors to
-	draw bitmaps.
-	(PickView::paint): Set background color instead of using transparent
-	mode.  Create system-colored brush.
-
-2006-04-25  Brian Dessent  <brian@dessent.net>
-
-	* COPYING: New file (GPL).
-	* Makfile.am (EXTRA_DIST): Add COPYING.
-
-2006-04-17  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.cc, String++.h: Finally, it's time for the long-awaited
-	departure of 'class String' from this world. setup.exe can now
-	happily claim to follow the sane path of using just one general
-	purpose string class throughout :-)
-	
-2006-04-17  Max Bowsher  <maxb1@ukf.net>
-
-	* cygpackage.cc, cygpackage.h, package_version.cc, package_version.h:
-	Do some String to std::string migration.
-
-2006-04-17  Max Bowsher  <maxb1@ukf.net>
-
-	* package_meta.cc, package_meta.h, package_source.cc,
-	package_source.h: Do some String to std::string migration.
-	* package_db.cc: Small tweak to assist with the above.
-
-2006-04-17  Max Bowsher  <maxb1@ukf.net>
-
-	* PickView.cc, PickView.h, package_db.cc, package_db.h:
-	Do some String to std::string migration.
-	* package_meta.h: Change a couple of types to assist with the above.
-
-2006-04-17  Max Bowsher  <maxb1@ukf.net>
-
-	* IniDBBuilder.cc, IniDBBuilder.h, IniDBBuilderPackage.cc,
-	IniDBBuilderPackage.h, PickLine.h, PickPackageLine.cc:
-	Do some String to std::string migration.
-
-2006-04-16  Max Bowsher  <maxb1@ukf.net>
-
-	* FindVisitor.cc, FindVisitor.h, IniParseFindVisitor.cc,
-	IniParseFindVisitor.h, ScanFindVisitor.cc, ScanFindVisitor.h, find.cc,
-	find.h, fromcwd.cc, ini.cc, ini.h, iniparse.y, postinstall.cc:
-	Do some String to std::string migration.
-
-2006-04-16  Max Bowsher  <maxb1@ukf.net>
-
-	* IOStreamProvider.h, archive.cc, archive.h, archive_tar.cc,
-	archive_tar.h, io_stream.cc, io_stream.h, io_stream_cygfile.cc,
-	io_stream_cygfile.h, io_stream_file.cc, io_stream_file.h:
-	Do some String to std::string migration.
-
-2006-04-16  Max Bowsher  <maxb1@ukf.net>
-
-	* desktop.cc, download.cc, install.cc, mount.cc, mount.h, script.cc,
-	script.h: Do some String to std::string migration.
-
-2006-04-16  Max Bowsher  <maxb1@ukf.net>
-
-	* category.cc: Remove source file that contained no code!
-	* category.h: Delete, moving the single useful line to...
-	* package_meta.h: ...here. Remove category.h include.
-	* choose.cc, package_db.h, package_meta.cc: Remove category.h include.
-	* Makefile.am: Remove references to removed files.
-
-2006-04-15  Max Bowsher  <maxb1@ukf.net>
-
-	* ConnectionSetting.cc, ConnectionSetting.h, Exception.cc,
-	Exception.h, IniParseFeedback.cc, IniParseFeedback.h, LogFile.cc,
-	LogFile.h, LogSingleton.h, PackageSpecification.cc,
-	PackageSpecification.h, SourceSetting.cc, SourceSetting.h,
-	UserSettings.cc, UserSettings.h, dialog.cc, dialog.h, diskfull.cc,
-	diskfull.h, filemanip.cc, filemanip.h, inilintmain.cc, localdir.cc,
-	main.cc, nio-file.cc, nio-http.cc, prereq.cc, prereq.h, proppage.cc,
-	proppage.h, site.cc, site.h, splash.cc, state.cc, state.h, window.cc,
-	window.h: Do some String to std::string migration.
-
-2006-04-15  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.cc, String++.h
-	(new_cstr_char_array, format_1000s): Migrate String to std::string.
-	(casecompare_lt_op, std::string operator+): New.
-
-2006-04-06  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.h, String++.cc
-	(String::replace): Remove - usused.
-	(String::find): Remove - semantics do not match std::string.
-
-	* root.cc (directory_is_rootdir): Switch to std::string.find().
-	* script.cc (Script::baseName): Rewrite use of String.find().
-
-2006-03-30  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.cc (replace): New function to take the place of one form
-	of String::replace method.
-	* String++.h (replace): Declare.
-	(String::replace): Make private.
-
-	* desktop.cc (make_cygwin_bat): Use new function.
-	* filemanip.cc (backslash): Use simple loop in place of
-	String::replace.
-	* filemanip.h (backslash): Change signature to use std::string in
-	place of String.
-
-2006-03-30  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.cc, String++.h (casecompare): New function replacing
-	String.casecompare to increase parity with std::string.
-	(String::casecompare): Make private.
-
-	* ConnectionSetting.cc, IniDBBuilderPackage.cc,
-	IniParseFindVisitor.cc, LogFile.cc, PackageSpecification.cc,
-	PickView.cc, SourceSetting.cc, String++.cc, String++.h, fromcwd.cc,
-	io_stream.cc, mount.cc, package_db.cc, package_source.h,
-	package_version.cc, prereq.h, script.cc:
-	Use casecompare in place of String::casecompare.
-
-2006-03-30  Max Bowsher  <maxb1@ukf.net>
-
-	* String++.cc, String++.h: Remove String(int) constructor, which
-	was causing dangerously bizarre implicit conversions, and was a point
-	of disparity between String and std::string.
-	(stringify): New function to replace functionality removed above.
-
-	* PickView.cc (PickView::init_headers),
-	archive_tar.cc (archive_tar::next_file_name),
-	cygpackage.cc (cygpackage::setCanonicalVersion):
-	Make explicit and call out with a FIXME some bizarre behaviour.
-	
-	* ScanFindVisitor.cc (ScanFindVisitor::visitFile),
-	filemanip.cc (base), iniparse.y,
-	threebar.cc (ThreeBarProgressPage::SetBar2):
-	Make simple adaptations to the changed API.
-
-2006-03-14  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* PickView.cc (PickView::setViewMode): Auto-expand category if
-	its name starts with a dot.
-
-2006-03-14  Dave Korn  <dave.korn@artimi.com>
-
-	* String++.cc (new_cstr_char_array):  Handle null input correctly.
-
-2006-03-10  Christopher Faylor  <cgf@timesys.com>
-
-	* res.rc: Update copyright.
-	(IDS_MIRROR_LST): Use cygwin.com for mirror list, not
-	sources.redhat.com.
-	* site.cc (NOSAVE1): Use preferred name of sourceware site.
-	(NOSAVE2): sourceware.cygnus.com -> sources.redhat.com.
-	(NOSAVE1_LEN): Use just-defined name to determine length.
-	(NOSAVE2_LEN): Ditto.
-	(NOSAVE3_LEN): Ditto.
-
-2006-03-10  Bas van Gompel  <patch-cygsup.buzz@bavag.tmfweb.nl>
-
-	* res.rc (IDD_DROPPED): New dialog.
-	* resource.h (IDD_DROPPED): New dialog-id.
-	(IDC_DROP_MIRRORS, IDC_DROP_NOWARN): New control-ids.
-	* site.cc: Add enum for response on dropped mirrors.
-	(cache_is_usable, cache_needs_writing): New bools.
-	(cache_warn_urls): New string.
-	(cached_site-list, dropped_site_list): New SiteLists.
-	(site_list_type::init, site_list_type::site_list_type): Change to four
-	parameter form.
-	(site_list_type::site_list_type, site_list_type::operator=) Copy
-	servername, area and location.
-	(load_site_list): New function, broken out of get_site_list.  Support
-	four-parameter site_list_type.
-	(get_site_list): Break out load_site_list.  Move reading cache earlier.
-	Don't write new cache.  Set flags to record cache state.  Load both
-	all_site_list and cached_site_list.
-	(SiteSetting::registerSavedSite): Use four-parameter site_list_type.
-	(drop_proc, check_dropped_mirrors, write_cache_list, save_cache_file):
-	New functions.
-	(SitePage::OnNext): Check for dropped mirrors and save cache as
-	appropriate.
-	(SitePage::OnMessageCmd): Use four-parameter site_list_type.
-	* site.h
-	(site_list_type::init, site_list_type::site_list_type): Change to four
-	parameter form.
-	(site_list_type): Add servername, area and location members.
-
-2006-03-09  Igor Peshansky  <pechtcha@cs.nyu.edu>
-
-	* script.cc (Script::run): Fix inverted test for abnormal exit.
-
-2006-03-09  Bas van Gompel  <patch-cygsup.buzz@bavag.tmfweb.nl>
-	    Max Bowsher  <maxb1@ukf.net>
-
-	Provide indication of site that a file is being downloaded from.
-	
-	* geturl.cc: Use std::string instead of String throughout.
-	(init_dialog): Put more information into GUI.
-	Remove unused 'owner' parameter and change all callers.
-	(progress): Remove spurious \n characters from GUI.
-	* geturl.h: Use std::string instead of String throughout.
-	* res.rc (IDD_INSTATUS): Use SS_ENDELLIPSIS.
-
-2006-03-09  Max Bowsher  <maxb1@ukf.net>
-	
-	* Makefile.am (EXTRA_DIST): Add tree-minus.bmp and tree-plus.bmp.
-
-2006-01-20  Bryan Thrall  <bryan.thrall@flightsafety.com>
-
-	* source.cc (SourcePage::OnActivate): Command line takes precedence
-	over last user selection.
-
-2005-11-30  Max Bowsher  <maxb1@ukf.net>
-
-	* res.rc (IDD_ROOT, IDD_LOCAL_DIR): Rearrange some controls a little,
-	in response to suggestion from Carl Karsten.
-
-2005-11-30  Max Bowsher  <maxb1@ukf.net>
-
-	* site.h, site.cc: Use std::string in preference to String.
-	(site_list_type::init): Convert some painful raw C string work to
-	STL std::string work.  Stop totally ignoring the result of this
-	calculation, implementing the (somewhat weird) sort order for sites
-	that was apparently indented for ages.
-
-2005-10-14  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* io_stream.cc (url_scheme_not_registered): New macro.
-	(io_stream::open): Better log message on error.
-	(io_stream::mkpath_p,io_stream::remove,io_stream::mklink): Ditto.
-	(io_stream::move,io_stream::exists): Ditto.
-
-2005-10-13  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* site.cc (get_site_list): Default to empty mirror list if
-	server unavailable and none cached, to allow using preferred
-	mirrors anyway.
-
-2005-09-29  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* package_db.cc (packagedb::packagedb): Remember missing package
-	database file.
-
-2005-09-29  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* site.cc (get_site_list): Store mirror list locally.
-	Use local copy if unable to download.
-
-2005-09-27  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
-	Better log message on error.
-
-2005-09-27  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* script.cc (Script::isAScript): Fix string comparison.
-
-2005-09-27  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Reconnect on FTP timeout.
-
-2005-09-11  Masayuki FUJII  <boochang@m4.kcn.ne.jp>
-
-	* package_meta.cc (packagemeta::ScanDownloadedFiles): Don't use an
-	invalid	iterator.  Fix whitespace.
-
-2005-09-09  Brian Dessent  <brian@dessent.net>
-
-	* CHANGES: Document recent updates.
-	* choose.cc (ChooserPage::OnInit): Add new tooltip.
-	* res.rc (IDD_CHOOSE): Remove 'administrative' from description.
-	(IDS_HIDEOBS_TOOLTIP): Add new string for tooltip.
-	* resource.h (IDS_HIDEOBS_TOOLTIP): Define.
-	* window.cc (Window::ActivateTooltips): Fix whitespace.  Set tooltip
-	delay to 30 seconds.
-
-2005-09-09  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* PickView.cc (PickView::paint): Set background mode to transparent.
-	* PickCategoryLine.cc (PickCategoryLine::paint): Use bitwise AND to
-	blit bitmaps.
-	* PickPackageLine.cc (PickPackageLine::paint): Ditto.
-
-2005-09-01  Brian Dessent  <brian@dessent.net>
-
-	* package_meta.cc (packagemeta::uninstall): Remove support for
-	undocumented and dangerous postremove script.
-
-2005-09-01  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* script.cc (run): Change to return the exit code or negative error.
-	(Script::run): Ditto.
-	(try_run_script): Receive both filename and extension and run only
-	one script.  Also return the exit code.
-	* script.h (try_run_script): Change signature.
-	(Script::run): Ditto.
-	* postinstall.cc (RunScript::operator()): Change to return the exit
-	code or negative error.
-	* install.cc (Installer::preremoveOne): Pass extension to
-	try_run_script().
-
-2005-09-01  Eric Blake  <ebb9@byu.net>
-
-	* script.cc (shells): Use /bin/bash, not sh, to allow upgrades to
-	/bin/sh.
-
-2005-09-01  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* PickView.h (PickView::size_col): New instance variable.
-	* PickView.cc (pkg_headers, cat_headers): Add size column.
-	(PickView::set_headers): Initialize size_col.
-	(PickView::init_headers): Include width of size column.
-	* PickPackageLine.cc (PickPackageLine::paint): Handle size_col.
-	* String++.cc (format_1000s): New function.
-	* String++.h (format_1000s): Declare new function.
-
-2005-09-01  Brian Dessent  <brian@dessent.net>
-
-	* Makefile.am (BASECXXFLAGS): Add -Wno-uninitialized to work around
-	spurious warnings with gcc 3.4.4.
-
-2005-05-22  Brian Dessent  <brian@dessent.net>
-
-	* res.rc (IDD_CHOOSE): Change description to include administrative
-	packages in addition to obsolete.
-
-2005-05-21  Brian Dessent  <brian@dessent.net>
-
-	* prereq.cc: New file.
-	* prereq.h: Ditto.
-	* tree-minus.bmp: Ditto.
-	* tree-plus.bmp: Ditto.
-	* Makefile.am: Add prereq.cc and prereq.h to build.
-	* PickCategoryLine.cc (PickCategoryLine::paint): Add new parameter and
-	refactor.  Use bitmap for '+' and '-' indicators.  Draw package lines
-	column-wise for better drawing efficiency.
-	(PickCategoryLine::click): Use previously calculated x value.
-	* PickCategoryLine.h (PickCategoryLine::paint): Update prototype.  Add
-	'spin_x' member.
-	* PickLine.h (PickLine:paint): Update prototype.
-	* PickPackageLine.cc (PickPackageLine::DrawCheck): Remove.
-	(PickPackageLine::DrawIcon): New function.
-	(PickPackageLine::paint): Add parameter.  Refactor completely for more
-	efficient painting.
-	* PickPackageLine.h (PickPackageLine::DrawIcon): Add prototype.
-	(PickPackageLine::paint): Update prototype.
-	(PickPackageLine::DrawCheck): Remove.
-	* PickView.cc (pkg_headers): Remove unused 'slen' field, add new
-	'needs_clip' field to signify if clipping is necessary for this column.
-	(PickView::note_width): Fold long line.  Refactor slightly for
-	simplicity.
-	(PickView::set_view_mode): Remove.
-	(PickView::cycleViewMode): New function.
-	(PickView::setViewMode): Refactor completely.  Incorporate functionality
-	of clear_view() here instead.  Simplify package selection into a single
-	'for' loop rather than repeating code for each type.
-	(isObsolete): New function, with second overloaded version.
-	(PickView::setObsolete): New function.
-	(PickView::insert_pkg): Do not show obsolete packages.  Move
-	declaration of 'db' lower.  Fix whitespace.
-	(PickView::insert_category): Do not show obsolete packages.
-	(PickView::clear_view): Remove.  Moved logic into 'setViewMode'.
-	(PickView::scroll): Add additional parameter 'howmany' with default
-	value of 1.  Scroll by 'howmany' lines for SB_LINEDOWN and SB_LINEUP.
-	(NUM_CATEGORY_COL_WIDTH): Define.
-	(PickView::init_headers): Fix whitespace.  Add comments.  Ignore
-	obsolete packages in width calculations.  Add functionality to size
-	'Category' column so that at least NUM_CATEGORY_COL_WIDTH categories
-	are displayed for every package.  Ensure that 'new_col' takes into
-	account all possible labels.
-	(PickView::PickView): Initialize showObsolete to false.
-	(PickView::init): Remove unused bitmap bm_rtarrow.  Add new bitmaps
-	bm_treeplus and bm_treeminus.  Use a macro for better readability.
-	Fix whitespace formatting.  Remove header computation from here, call
-	refresh() instead.
-	(PickView::registerWindowClass): Remove unnecessary background brush.
-	(PickView::WindowProc): Add support for WM_MOUSEWHEEL message
-	processing.  Fix indentation.  Reformat for readability.
-	(PickView::paint): Get the update region before calling BeginPaint.
-	Fill the update region with the default colors.  Do not do clipping
-	here.  Pass update region to the PickLine paint function instead.
-	Free the update region when finished.
-	(PickView::Create): Fix indentation.
-	(PickView::defaultTrust): Ditto.
-	(PickView::refresh): Add column recalculation logic here.
-	* PickView.h: Fix indentation.
-	(RTARROW_WIDTH): Remove unused define.
-	(NEW_COL_SIZE_SLOP): Ditto.
-	(TREE_INDENT): Define.
-	(PickView::get_view_mode): Remove.
-	(PickView::set_view_mode): Rename to setViewMode for consistency.
-	(PickView::cycleViewMode): Add new function.
-	(PickView::setObsolete): Ditto.
-	(PickView::clear_view): Remove.
-	(PickView::bm_treeplus): Define new member.
-	(PickView::bm_treeminus): Ditto.
-	(PickView::scroll): Add parameter.
-	(PickView::Header::slen): Remove unused member.
-	(PickView::Header::needs_clip): Define new member.
-	(PickView::showObsolete): Ditto.
-	(isObsolete): Add prototype, and for overloaded version as well.
-	* choose.cc: Add include.
-	(ChooserControlsInfo): Allow new checkbox to be resized.
-	(ChooserPage::OnInit): Start dialog with 'Hide obsolete' checked.
-	(ChooserPage::OnNext): Call the dependency checker, act accordingly.
-	(ChooserPage::changeTrust): Notify dependency checker of current trust
-	level when it changes.
-	(ChooserPage::OnMessageCmd): Just call cycleViewMode instead when
-	changing the view.  Update the chooser when the user toggles the
-	'hide obsolete' checkbox.
-	(ChooserPage::OnMouseWheel): New function.  Pass mouse wheel message
-	on to chooser.
-	* choose.h (OnMouseWheel): Add prototype.
-	* main.cc: Add include.
-	(main): Define and initialize the PrereqPage object.  Add it into
-	the property sheet list.
-	* PropPage.cc (PropertyPage::DialogProc): Add support for WM_MOUSEWHEEL
-	message processing in derived classes.
-	(PropertyPage::OnMouseWheel): New function.
-	* PropPage.h (PropertyPage::OnMouseWheel): Add prototype.
-	* res.rc (IDD_LOCAL_DIR): Shorten edit box so that pushbutton is not
-	crowded.
-	(IDD_SITE): Provide static text with an ID so that it can be resized
-	properly.  Move pushbutton slightly to right so that it doesn't crowd
-	edit box.
-	(IDD_SPLASH): Change copyright displayed on spash screen to be generic
-	since the actual list of contributors is long.
-	(IDD_CHOOSE): Add checkbox.  Resize other controls to accomodate.
-	(IDD_PREREQ): New dialog.
-	(SPIN): Delete duplicated bitmap resource.
-	(IDB_RTARROW): Remove unused bitmap resource.
-	(IDB_TREE_PLUS): Add.
-	(IDB_TREE_MINUS): Ditto.
-	(IDS_TRUSTPREV_TOOLTIP): Revise wording to be more concise.
-	(IDS_TRUSTCURR_TOOLTIP): Ditto.
-	(IDS_TRUSTEXP_TOOLTIP): Ditto.
-	(IDS_VIEWBUTTON_TOOLTIP): Ditto.
-	* resource.h (IDD_PREREQ): Define.
-	(IDB_RTARROW): Remove.
-	(IDB_TREE_PLUS): Add, and renumber.
-	(IDB_TREE_MINUS): Ditto.
-	(IDC_SITE_USERURL): Define.
-	(IDC_CHOOSE_HIDE): Ditto.
-	(IDC_PREREQ_TEXT): Ditto.
-	(IDC_PREREQ_EDIT): Ditto.
-	(IDC_PREREQ_CHECK): Ditto.
-	* site.cc (SiteControlsInfo): Ensure that 'User URL' static text is
-	properly resized.
-
-2005-05-14  Max Bowsher  <maxb@ukf.net>
-
-	"Type" field of packageversions was not even being filled in. Fix.
-
-	* cygpackage.h, cygpackage.cc (cygpackage::createInstance):
-	Make "type" a mandatory parameter of the constructor.
-	* IniDBBuilderPackage.cc: Adjust callers.
-
-2005-05-14  Bas van Gompel  <patch-cygsup.buzz@bavag.tmfweb.nl>
-
-	Fix behaviour of hardlinks in source packages.
-
-	* archive.cc (archive::extract_file):
-	Use prefixPath for link target on hardlinks.
-
-2005-05-14  Max Bowsher  <maxb@ukf.net>
-	
-	Hopefully, solve the "preremove DLL dependency" bug, by running all
-	preremove scripts before actually removing any files.
-
-	* install.cc
-	(Installer::preremoveOne): New method. Run preremove scripts here.
-	(Installer::replaceOne): Remove method.
-	(num_replacements): Remove variable.
-	(do_install_thread): Significantly rewrite.
-	* package_meta.cc (packagemeta::uninstall):
-	Do not run preremove script here.
-
-2005-05-14  Max Bowsher  <maxb@ukf.net>
-
-	* download.cc (do_download_thread):
-	Do not use packageversion::changeRequested().
-	* package_version.cc (packageversion::Type):
-	Implement declared but previously unimplemented method.
-	(packageversion::changeRequested, _packageversion::changeRequested):
-	Remove.
-	* package_version.h
-	(packageversion::changeRequested, _packageversion::changeRequested):
-	Remove.
-	* install.cc (Installer::replaceOne): Simplify, return void, not int.
-	(installOneSource): Rename to...
-	(installOne): ...this. Change arguments and return type. Refactor.
-	(install_one): Remove.
-	(do_install_thread): Tidying up.
-
-2005-05-07  Max Bowsher  <maxb@ukf.net>
-
-	* download.cc (validateCachedPackage): Remove all MD5 checking code.
-	It is not acceptable to check MD5 sums as part of simply answering
-	whether a package exists in the local cache or not. It is too slow.
-	MD5 sums always have been - and will continue to be - checked at
-	install time.
-	(NoMD5Option): Remove this option, as the code it controls has been
-	removed.
-
-2005-05-07  Max Bowsher  <maxb@ukf.net>
-
-	* install.cc (md5_one): Make the MD5 checking done at install time
-	display a progess GUI, as the MD5 checking done at other times does.
-
-2005-05-07  Max Bowsher  <maxb@ukf.net>
-
-	* resource.h, res.rc: Followup to recent de-MSVC-ification of
-	resource.h, by removing a lot from res.rc, and the last few bits
-	from resource.h.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* choose.cc (ChooserPage::OnInit): Initialize tooltips for this
-	dialog.
-
-	* proppage.h (PropertyPage::makeClickable): Update prototype to
-	reflect same argument name as function.
-
-	* proppage.cc (PropertyPage::DialogProc): Remove redundant 'break'
-	statements that follow 'return's.  Add missing braces to case
-	statements.  Call handler for TTN_GETDISPINFO.
-
-	* res.rc (IDS_TRUSTKEEP_TOOLTIP): Add new STRINGTABLE entry for
-	tooltip	text.
-	(IDS_TRUSTPREV_TOOLTIP): Ditto.
-	(IDS_TRUSTCURR_TOOLTIP): Ditto.
-	(IDS_TRUSTEXP_TOOLTIP): Ditto.
-	(IDS_TRUSTPREV_TOOLTIP): Ditto.
-	(IDS_VIEWBUTTON_TOOLTIP): Ditto.
-
-	* resource.h: Likewise, add identifiers for tooltip resources.
-
-	* window.h: Add includes.
-	(Window::TooltipHandle): Add new private data structure.
-	(Window::TooltipStrings): Ditto.
-	(Window::ActivateTooltips): Define new function to support tooltip
-	functionality.
-	(Window::SetTooltipState): Ditto.
-	(Window::AddTooltip): Ditto.
-	(Window::TooltipNotificationHandler): Ditto.
-	
-	* window.cc (Window::Window): Initialize handle to NULL.
-	(Window::~Window): Call DestroyWindow on tooltip control if it was
-	activated.
-	(Window::ActivateTooltips): New function to activate the tooltip
-	control.
-	(Window::SetTooltipState): New function to allow toggling of
-	tooltips.
-	(Window::AddTooltip): New function that adds a tooltip to a given
-	control in a given window.  Also implement overloaded versions that
-	provide simpler interface and the ability to use a string resource.
-	(Window::TooltipNotificationHandler): New function to handle
-	TTN_GETDISPINFO notification messages.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* resource.h: Reorganize.  Group by type, and give each its own
-	range of IDs.  Regenerate IDs accordingly.
-	(IDD_CHOOSER): Remove obsolete and unused symbol.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* root.h (class RootPage): Add missing virtual to OnMessageCmd.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* root.cc (dialog_cmd): Remove.  Use OnMessageCmd instead.
-	(RootPage::Create): Accomodate above change.
-	
-	* root.h (class RootPage): Add prototype for OnMessageCmd.
-	
-	* res.rc (IDD_ROOT): Fix broken button groups.  Correct the order of
-	the controls and use of WS_GROUP so that the radio buttons act
-	correctly.
-
-2005-05-05  Max Bowsher  <maxb@ukf.net>
-
-	Bulk rename of String++ member cstr_oneuse () to c_str () for
-	similarity to std::string.
-
-	* Exception.cc
-	* IniDBBuilderPackage.cc
-	* IniParseFindVisitor.cc
-	* LogFile.cc
-	* PickCategoryLine.cc
-	* PickPackageLine.cc
-	* PickView.cc
-	* String++.cc
-	* String++.h
-	* archive.cc
-	* cygpackage.cc
-	* desktop.cc
-	* dialog.cc
-	* diskfull.cc
-	* download.cc
-	* filemanip.cc
-	* find.cc
-	* geturl.cc
-	* ini.cc
-	* install.cc
-	* io_stream.cc
-	* io_stream_cygfile.cc
-	* io_stream_file.cc
-	* localdir.cc
-	* mount.cc
-	* nio-http.cc
-	* package_db.cc
-	* package_meta.cc
-	* package_source.h
-	* postinstall.cc
-	* proppage.cc
-	* root.cc
-	* script.cc
-	* site.cc
-	* splash.cc
-	* threebar.cc
-	* window.cc
-
-2005-05-05  Max Bowsher  <maxb@ukf.net>
-
-	Some String++ refactoring, setting out in the general direction of
-	eventually just using the STL std::string, not our own class.
-
-	* String++.cc (String::cstr, String::cstr () const): Remove.
-	(new_cstr_char_array): New function.
-	* String++.h: Sync with above.
-	Remove irrelevant "class io_stream;" declaration.
-
-	* cygpackage.h: Add "class io_stream;" declaration, now no longer
-	being supplied by side-effect.
-
-	* filemanip.cc: Remove unneeded includes, add "using namespace std;".
-	(parse_filename): Exchange some awkward pointer manipulation for
-	std::string usage. Use new_cstr_char_array ().
-	* filemanip.h: Sync with above.
-	(fileparse): Improve style of declaration.
-
-	* io_stream_cygfile.cc (io_stream_cygfile::normalise):
-	Use new_cstr_char_array ().
-	* site.cc (site_list_type::init, get_site_list): Ditto.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* ControlAdjuster.h (enum ControlPosition): Declare new resizing
-	methods CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, and their
-	TOP/BOTTOM aliases.
-	
-	* ControlAdjuster.cc (ControlAdjuster::ControlInfo::adjust):
-	Implement CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, which are
-	designed to resize elements in a two-column layout.
-	
-	* localdir.h (class LocalDirPage): Remove constructor implementation
-	from here...
-	
-	* localdir.cc (LocalDirPage::LocalDirPage): ...to here, and call
-	AddControlsInfo on initialization.
-	(static	LocaldirControlsInfo): Add.  Define sizing rules for dialog
-	elements.
-	
-	* proppage.h: Add includes.
-	(PropertyPage::ClickableURL):
-	Declare new storage type for internal use by class.
-	(PropertyPage::urls): Likewise.
-	(PropertyPage::urlWinProc): Add declaration.
-	(PropertyPage::makeClickable): Likewise.
-
-	* proppage.cc: Add includes.
-	(PropertyPage::DialogProc): Implement handler for WM_CTLCOLORSTATIC
-	message.  Supports static controls that have been turned into
-	clickable hyperlinks.
-	(static PropertyPage::urls): Declare.
-	(PropertyPage::makeClickable): Implement new member function that
-	provides user interface for making text into clickable URLs.
-	(PropertyPage::urlWinProc): Implement new private member function used
-	as a windowproc for subclassing a static control.
-
-	* resource.h (IDC_SPLASH_URL, IDC_FILEMODES_LINK, IDC_ROOTDIR_GRP,
-	IDC_INSTALLFOR_GRP, IDC_ALLUSERS_TEXT, IDC_JUSTME_TEXT, IDC_MODE_GRP,
-	IDC_MODE_TEXT, IDC_MODE_BIN, IDC_LOCALDIR_GRP, IDC_SPLASH_TEXT,
-	IDC_SPLASH_ICON, IDC_SPLASH_COPYR): Add. Replaces anonymous
-	IDC_STATIC ids, so that controls can be referenced by the resizer.
-	
-	* res.rc (IDD_LOCAL_DIR): Rearrange controls to match top-down order
-	in the dialog.  Fold long lines.  Replace anonymous IDC_STATIC ids.
-	(IDD_ROOT): Reorder in same manner.  Replace anonymous IDC_STATIC ids.
-	Add descriptive text of each option, and hyperlink for more
-	information.  Mark suggested choice as "(RECOMMENDED)".  Swap order of
-	'unix'/'dos' radio buttons so that recommended choice is first in both
-	columns.
-	(IDD_SPLASH): Reorder elements to match top-down order of dialog, fold
-	long lines. Add descriptive paragraph, remove anonymous ids.  Update
-	copyright text, replace sources.redhat.com with cygwin.com.
-	
-	* root.h (class RootPage): Remove constructor implementation from
-	here...
-	
-	* root.cc: ...to here, and call AddControlInfo.
-	(static RootControlsInfo): Add.  Populate with resizing data.
-	(RootPage::OnInit): Make text a clickable hyperlink.
-	
-	* splash.h (class SplashPage): Likewise, move constructor from
-	here...
-	
-	* splash.cc: ...to here.  Call AddControlInfo.
-	(static SplashControlsInfo): Add and populate.
-	(SplashPage::Create): Make link on splash page a clickable hyperlink.
-	
-	* window.h: Add include.
-	(class Window): Store allocated fonts with a vector instead of fixed
-	array.  Change indentation of setParent to be consistent.
-	
-	* window.cc (Window::Window): Remove FontCounter.
-	(Window::~Window): Likewise.  Iterate over vector of fonts instead.
-	(Window::SetDlgItemFont): Use vector.
-
-2005-05-05  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am (EXTRA_DIST, inilint_SOURCES):
-	Sync with several recent changes.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* res.rc: (CREATEPROCESS_MANIFEST_RESOURCE_ID): Include section
-	comment.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* res.rc: (IDC_CHOOSE): Widen 'view' button by 6px horizontally and
-	4px vertically.  Adjust other controls to accomodate.
-	(CREATEPROCESS_MANIFEST_RESOURCE_ID): Define so that manifest is
-	included in the binary.
-	
-	* setup.exe.manifest: New file.  Results in common controls with
-	themed appearance on modern versions of Windows.
-
-2005-05-05  Brian Dessent  <brian@dessent.net>
-
-	* main.cc (WinMain): Change conditional to avoid spurious error
-	message on success.  Include reason for failure in log message.
-
-2005-05-04  Max Bowsher  <maxb@ukf.net>
-
-	* state.cc, state.h (net_method, net_proxy_host, net_proxy_port,)
-	(net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
-	Inet_ftp_user, net_ftp_passwd):
-	Move these global variables to be static variables of the NetIO class.
-
-	* netio.h, netio.cc (net_method, net_proxy_host, net_proxy_port,)
-	(net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
-	net_ftp_user, net_ftp_passwd):
-	As above.
-
-	* ConnectionSetting.cc, net.cc:
-	Change include, refer to variables in new location.
-
-2005-05-04  Max Bowsher  <maxb@ukf.net>
-
-	* PickLine.cc: Remove file - redundant.
-	* Makefile.am (setup_SOURCES): Adjust.
-
-2005-05-04  Max Bowsher  <maxb@ukf.net>
-
-	* package_version.h (packageversion::set_requirements):
-	Remove deftrust argument default value.
-
-2005-05-04  Max Bowsher  <maxb@ukf.net>
-
-	* package_version.cc (DependencyProcessor): Remove trivial class.
-	(select, processOneDependency): Do not use DependencyProcessor, just
-	pass parameters normally.
-
-2005-05-04  Brian Dessent  <brian@dessent.net>
-
-	Fix bug #820: Clicking Curr, etc., causes some dependencies to not
-	be installed.
-
-	* choose.cc (ChooserPage::changeTrust):
-	Add a missing "packagedb.markUnVisited ()".
-
-2005-05-03  Max Bowsher  <maxb@ukf.net>
-	
-	* PickCategoryLine.cc (PickCategoryLine::click):
-	* PickPackageLine.cc (PickPackageLine::click):
-	Abandon use of trivial packagemeta::PrepareForVisit() wrapper.
-
-	* package_meta.h (packagemeta::PrepareForVisit): Remove.
-	* package_meta.cc (packagemeta::PrepareForVisit): Remove.
-
-2005-05-03  Max Bowsher  <maxb@ukf.net>
-
-	* choose.h (ChooserPage::ifChecked): Remove.
-	(ChooserPage::changeTrust): Convert from template to ordinary function.
-	* choose.cc (ChooserPage::changeTrust): As above, plus avoid the use
-	of custom class SetRequirement, when bind2nd(mem_fun(...),...) can
-	achieve the same effect.
-	* package_meta.h (SetRequirement): Remove, now unused.
-
-2005-05-03  Max Bowsher  <maxb@ukf.net>
-
-	* package_meta.h (packagemeta::set_requirements):
-	Remove default argument which seems inappropriate.
-	* PickPackageLine.cc (PickPackageLine::click):
-	Make an argument explicit, and not that it seems like the wrong value.
-
-2005-05-03  Brian Dessent  <brian@dessent.net>
-
-	Fix part of bug #853 - proxy port not remembered.
-
-	* net.cc (doing_loading): New static boolean.
-	(load_dialog): Use the boolean to prevent save_dialog() from taking
-	action due to field changes due to initialization.
-	(save_dialog): Check the boolean and respond appropriately.
-
-2005-04-19  Max Bowsher  <maxb@ukf.net>
-
-	* postinstall.cc (RunFindVisitor::visitFile): Fix crash on
-	encountering a postinstall script with a name of 4 characters or less.
-	Bug introduced on 2004-12-25.
-
-2005-04-05  Max Bowsher  <maxb@ukf.net>
-
-	The Big Cleanup: Phase "rfc1738"
-
-	* rfc1738.cc, rfc1738.h: Delete.
-	* csu_util/rfc1738.cc: Reimport latest version from upstream source.
-	Make thread-safe. Rewrite C++ wrapper in terms of std::string.
-	Document the divergences from the upstream source.
-	* csu_util/rfc1738.h: Recreate for the std::string version of the
-	C++ wrapper.
-
-	* Makefile.am (setup_SOURCES): Sync with added/removed files.
-	* IniParseFindVisitor.cc: Modify #includes.
-	(IniParseFindVisitor::visitFile): Change function name, as the new
-	C++ wrapper does not contain an irregularity that the old one did.
-	* download.cc: Modify #includes.
-	* ini.cc: Modify #includes.
-
-2005-04-05  Max Bowsher  <maxb@ukf.net>
-
-	Remove setup's internal compression libraries, instead relying on the
-	mingw-foo packages which have been part of the Cygwin net distribution
-	for some time now.  At the same time, reorganize the README file to
-	inform about the change, and make some additional tidy-ups there whilst
-	working there.
-
-	* GUIDELINES: Remove, contents transferred to README.
-	* README: Add build instructions. Delete unconfirmed and fixed bugs
-	  sections. Incorporate the former contents of GUIDELINES.
-
-	* bz2lib/: Remove.
-	* zlib/: Remove.
-	* Makefile.am (DIST_SUBDIRS, SUBDIRS):
-	* configure.in: Remove AC_CONFIG_SUBDIRS for removed subdirs.
-	* compress_bz.h: Remove complex _WIN32 preprocessor conditional.
-	* compress_gz.h: Fix #include file name.
-	* archive_tar_file.cc: Remove unused #include.
-	* install.cc: Remove unused #include.
-
-2005-01-27  Max Bowsher  <maxb@ukf.net>
-
-	Set CYGWIN=nontsec, for postinstall scripts.
-
-	* main.cc (main): putenv("CYGWIN=nontsec").
-
-2005-01-27  Bas van Gompel  <patch-cygsup.buzz@bavag.tmfweb.nl>
-
-	Fix corrupt display of ini parse percentage in log file.
-
-	* ini.cc (GuiParseFeedback): Use a sensible data type for lastpct.
-
-2004-12-29  Max Bowsher  <maxb@ukf.net>
-
-	* site.cc (get_site_list): Filter the incoming mirrors list to contain
-	only URL schemes that we can read.
-
-2004-12-28  Max Bowsher  <maxb@ukf.net>
-
-	The Big Cleanup: Phase "hash"
-
-	* hash.cc, hash.h: Delete.
-	* Makefile.am (setup_SOURCES): Sync with deleted files.
-
-	* package_mets: Modify includes.
-	(standard_dirs): Remove.
-	(hash::add_subdirs): Remove.
-	(packagemeta::uninstall): Re-implement using STL set instead of
-	homebrew hash.
-
-2004-12-28  Max Bowsher  <maxb@ukf.net>
-
-	* String++.h (operator std::string): Take care to never do
-	std::string((char*)NULL) - it causes a hang!
-
-2004-12-27  Max Bowsher  <maxb@ukf.net>
-
-	The Big Cleanup: Phase "log"
-
-	* log.cc, log.h: Delete old C-style compatibility wrapper around the
-	logging subsystem.
-	* Makefile.am (setup_SOURCES): Sync with deleted files.
-
-	* AntiVirus.cc, archive_tar_file.cc, ini.cc, install.cc,
-	* io_stream_cygfile.cc, localdir.cc, msg.cc, net.cc, netio.cc,
-	* netio.h, nio-ftp.cc, nio-ftp.h, root.cc, source.cc:
-	Throughout, refine includes, and update code using the old
-	compatibility wrapper to C++ streams style code.
-
-2004-12-27  Max Bowsher  <maxb@ukf.net>
-
-	* compress.cc: Refine includes. Remove placeholder function
-	definitions. Make destructor an empty function.
-	* compress.h: Refine includes. Make placeholder functions pure
-	virtual. Add missing const on buffer argument to write function,
-	to match derived classes.
-	* compress_bz.cc, compress_gz.cc: Refine includes. Throw exception,
-	rather than logging and returning an error, when an unimplemented
-	function is called.
-	* compress_bz.h, compress_gz.h: Refine includes.
-
-2004-12-26  Max Bowsher  <maxb@ukf.net>
-
-	The Big Cleanup: Phase "version"
-
-	* String++.h (operator std::string): Add.
-	* desktop.cc, fromcwd.cc: Remove irrelevant include.
-
-	* version.cc, version.h: Delete, replacing all functionality in new
-	files.
-
-	* setup_version.h: Add, taking over declaration of generated version
-	symbol functionality.
-
-	* Makefile.am (setup_SOURCES): Sync with new/deleted files.
-	(setup_version.c): Rename the symbol 'version' to 'setup_version'.
-	* main.cc: Modify includes.
-	(main): Adapt to setup_version rename.
-	* splash.cc: Modify includes.
-	(SplashPage::OnInit): Adapt to setup_version rename.
-
-	* csu_util/version_compare.cc, csu_util/version_compare.h: Add,
-	containing a completely rewritten replacement for canonical_version().
-
-	* IniDBBuilderPackage.cc: Modify includes.
-	(IniDBBuilderPackage::buildVersion): Use new version_compare API.
-	* ini.cc: Modify includes.
-	(setup_version): Rename...
-	(ini_setup_version): ...to this.
-	(do_local_ini, do_remote_ini): Adapt to above change.
-	(do_ini_thread): Adapt to above change. Use new version_compare API.
-
-2004-12-25  Max Bowsher  <maxb@ukf.net>
-
-	* install.cc (Installer::installOneSource): Remove a stray "break;"
-	left over from the switch-case -> if-else conversion in the previous
-	change.
-
-2004-12-25  Max Bowsher  <maxb@ukf.net>
-
-	The Big Cleanup: Phase "win32"
-
-	* win32.h: Major overhaul. Document why we use _WIN32_IE. Move out
-	fragment dealing with alloca() to the single file in which it is used.
-	Remove fragment dealing with _MAX_PATH, and convert all uses of it
-	elsewhere to MAX_PATH. Remove random include of <stdarg.h>. Remove
-	NOCOMATTRIBUTE, as setup contains no code which it affects. Remove
-	includes of <wininet.h> and <windowsx.h> - see later in this log.
-	(IsWindowsNT): New inline function, a much simpler implementation of
-	Win32::OS().
-
-	* win32.cc: Delete.
-
-	* Makefile.am (setup_SOURCES): Remove "win32.cc".
-
-	* AntiVirus.cc (detect), PickPackageLine.cc (PickPackageLine::paint),
-	* install.c (Installer::installOneSource):
-	Use IsWindowsNT(), not Win32::OS().
-	* main.cc (main): Use IsWindowsNT(), not locally defined iswinnt.
-
-	* PickView.cc (PickView::WindowProc), netio.cc (auth_proc),
-	* proppage.cc (PropertyPage::DialogProc):
-	Avoid using obfuscating macros from <windowsx.h>.
-
-	* archive.cc: Include or #define alloca() in the only file in which
-	it is used.
-
-	* nio-ie5.h: Include <wininet.h> here, where it is actually needed,
-	rather than in "win32.h" which is included almost everywhere.
-
-	* archive_tar.cc, archive_tar.h, cygpackage.cc, cygpackage.h,
-	* desktop.cc, find.cc, install.cc, main.cc, mklink2.c, mount.cc,
-	* script.cc: Use MAX_PATH, not _MAX_PATH.
-
-2004-12-25  Max Bowsher  <maxb@ukf.net>
-
-	Remove some overcomplications.
-
-	* Makefile.am (setup_SOURCES): Remove FilterVisitor.{cc,h}.
-	* FilterVisitor.cc, FilterVisitor.h: Delete.
-	* String++.cc (strmatch, String::matches): Remove.
-	* String++.h (String::matches): Remove.
-	* postinstall.cc: Do not include "FilterVisitor.h".
-	(RunFindVisitor): Exclude items with the extension ".done".
-	(do_postinstall_thread): Remove overcomplicated exclusion of items
-	with the extension ".done".
-	
-2004-12-24  Max Bowsher  <maxb@ukf.net>
-
-	* String++.cc, String++.h: Remove unused and incomplete code.
-	* LogFile.cc (LogFile::log_save): Don't leak memory.
-	* filemanip.cc, geturl.cc, root.cc, version.cc:
-	Don't pointlessly create temporary copies strings.
-
-2004-12-23  Max Bowsher  <maxb@ukf.net>
-
-	* choose.cc (ChooserPage::OnNext): Relegate some overly verbose
-	logging to an #ifdef DEBUG section.
-	* geturl.h (dismiss_url_status_dialog): Remove stale function
-	declaration, for which there is no definition.
-	* io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
-	Motivated by the recent unexplained hang bug, add some extra logging.
-
-2004-11-22  Max Bowsher  <maxb@ukf.net>
-
-	* MD5++.cc, MD5++.h: Remove this class.
-	* csu_util/MD5Sum.cc, csu_util/MD5Sum.h: New more complete MD5 class.
-	* Makefile.am (setup_SOURCES): Adjust to new files.
-	* download.cc (validateCachedPackage): Simplify, using the new class.
-	* install.cc (md5_one): Ditto.
-	* package_source.h (packagesource::md5): Change to be an object of the
-	new class.
-
-2004-11-22  Max Bowsher  <maxb@ukf.net>
-
-	* main.cc (main): Fix bug in one of the 2004-11-19 commits.
-	Avoid referring to the theLog pointer before it is set.
-
-2004-11-20  Max Bowsher  <maxb@ukf.net>
-
-	* res.rc (IDD_SOURCE): Clarify the radio-button option descriptions.
-	Re-layout the radio buttons.
-
-2004-11-20  Max Bowsher  <maxb@ukf.net>
-
-	Repair the broken detection of wrongly-sized package files.
-	
-	* download.cc (validateCachedPackage): Make static, since not used
-	elsewhere. Improve logging. Migrate file-size tests to here, alongside
-	the MD5 tests.
-	(check_for_cached): Remove broken testing of file-size, now covered by
-	the above. Code cleanups.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* package_version.cc (dumpAndList): Make dependencies much more
-	readable in full log output.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* proppage.cc (PropertyPage::DialogProc): Wrap in a TOPLEVEL_CATCH
-	block, since allowing exceptions to unwind into the guts of Windows is
-	quite disasterous.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* main.cc (main): Move option parsing code earlier - it must execute
-	before any significant object creations, which might test options in
-	their initialization.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* main.cc (main): Remove some junk code - either commented out, or
-	contained within unreachable preprocessor conditional sections.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* install.cc (Installer::installOneSource): Avoid leaking the open
-	file handles of every tarball that is installed.
-
-2004-11-19  Max Bowsher  <maxb@ukf.net>
-
-	* package_source.h (packagesource::Canonical, packagesource::Base)
-	(packagesource::Filename): Add "const" specification to accessor
-	methods.
-
-2004-11-18  Max Bowsher  <maxb@ukf.net>
-
-	* archive.h (archive::~archive): Define a pure virtual destructor to
-	enforce the abstract nature of this class.
-	* archive.cc (archive::~archive): Pure virtual destructors require an
-	implementation! Add one.
-	* io_stream.h (io_stream::destroyed): Remove this severely
-	brain-damaged implementation of a weakly-enforced abstract class.
-	The pure virtual destructor was strongly enforcing the abstract nature
-	anyway.
-	* io_stream.cc (io_stream::~io_stream): Empty out horribly pointless
-	code from the pure virtual destructor.
-	* archive_tar.cc (archive_tar::~archive_tar): Remove all
-	reference to the removed "destroyed" member.
-	* archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
-	* compress_bz.cc (compress_bz::~compress_bz): Ditto.
-	* compress_gz.cc (compress_gz::~compress_gz): Ditto.
-	* io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Ditto.
-	* io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
-	* io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
-
-2004-11-17  Max Bowsher  <maxb@ukf.net>
-
-	* mount.cc (create_mount): Fix operator precedence error introduced in
-	first 2004-11-11 commit - warned of by gcc 3.3.3 but not 3.4.1 !
-
-2004-11-13  Max Bowsher  <maxb@ukf.net>
-
-	Miscellaneous cleanup.
-
-	* geturl.cc (getUrlToStream): Make static.
-	* geturl.h (getUrlToStream): Remove declaration.
-
-	* geturl.cc, geturl.h, netio.cc, netio.h, nio-ftp.cc, nio-ftp.h,
-	nio-http.cc, nio-http.h:
-	Remove unused "allow_ftp_auth" flag throughout.
-
-2004-11-11  Max Bowsher  <maxb@ukf.net>
-
-	* libmd5-rfc: New directory, to hold code imported from the libmd5-rfc
-	project in a clearly delineated fashion.
-	* libmd5-rfc/README: New file.
-	* md5.c, md5.h: Delete...
-	* libmd5-rfc/md5.c, libmd5-rfc/md5.h: ...and replace with pristine
-	versions from upstream (only change is restoration of upstream CVS
-	keyword expansions).
-	* libmd5-rfc/md5main.c: New file.
-	* Makefile.ami (setup_SOURCES): Edit file paths.
-	* download.cc, install.cc: Edit include paths.
-	
-2004-11-11  Max Bowsher  <maxb@ukf.net>
-
-	* dialog.cc (fatal): Make capable of handling a passed-in error code,
-	as an alternative to calling GetLastError().
-	* dialog.h (fatal): Adjust prototype as above.
-	* mount.cc (create_mount): Use the above to correctly report errors.
-
-2004-10-28  Max Bowsher  <maxb@ukf.net>
-
-	* LogFile.cc (LogFile::getFileName), splash.cc (SplashPage::Create),
-	threebar.cc (ThreeBarProgressPage::SetBar2):
-	Migrate from cistring and string resources
-	to String and string literals.
-	* localdir.cc: Remove unneeded #include of "cistring.h".
-	* cistring.cc, cistring.h: Remove this now-redundant class.
-	* Makefile.am: Remove mention of the above removed files.
-	* res.rc, resource.h: Remove obsolete strings and IDs, both those
-	obseleted by and obselete before the above changes.
-	* res.rc: Merge the 2 adjacent STRINGTABLEs.
-
-2004-10-27  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am (setup_SOURCES): Add "RECTWrapper.h". It was missing.
-
-2004-10-25  Bas van Gompel  <cygsup-patch.buzz@bavag.tmfweb.nl>
-
-	* package_source.cc (packagesource::set_canonical):
-	Fix one-off in 'base' when ini is in same dir as package.
-
-2004-10-25  Max Bowsher  <maxb@ukf.net>
-
-	* main.cc (next_dialog): Remove this legacy global variable.
-	* download.cc (do_download_thread): Return a value instead of setting
-	a global variable, then returning void.
-	(do_download_reflector): Look for the next dialog code as a return
-	value instead of a global variable.
-
-2004-10-25  Max Bowsher  <maxb@ukf.net>
-
-	* port.h: Remove this redundant file - all contained definitions are
-	duplicated in "win32.h".
-	* Makefile.am, UserSetting.cc, UserSettings.cc, archive.cc,
-	archive_tar.cc, archive_tar_file.cc, choose.cc, compress.cc,
-	compress_bz.cc, compress_gz.cc, desktop.cc, find.cc, fromcwd.cc,
-	iniparse.y, install.cc, io_stream_cygfile.cc, io_stream_file.cc,
-	main.cc, netio.cc, site.cc, version.cc:
-	Remove all references to "port.h".
-
-2004-10-25  Max Bowsher  <maxb@ukf.net>
-
-	Fix compilation with w32api 3.1 and later.
-
-	* ControlAdjuster.h, RECTWrapper.h, cistring.h, propsheet.h,
-	window.cc, window.h: Include "win32.h" not <windows.h> directly.
-	* win32.h (WINBASEAPI): Define to empty string.
-
-2004-09-13  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* script.cc (run): Kill stdin when running scripts.
-
-2004-09-01  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am: Oops. Unwanted keyword expansion ate the code of the
-	previous commit. Restore the code, escaped to not look like a keyword.
-
-2004-09-01  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am: Simplify the shell incantation for getting the revision
-	of ChangeLog from grep-and-sed to just sed.
-
-2004-08-31  Max Bowsher  <maxb@ukf.net>
-
-	Attain GCC 3.4 compatibility.
-
-	* PackageSpecification.h (PackageSpecification): Make the
-	unnecessarily private copy-constructor public.
-
-2004-08-30  Max Bowsher  <maxb@ukf.net>
-
-	Rework the implementation of not including -Werror for specific files,
-	to a way that does not require hardcoding modified automake output back
-	into its input.
-
-	* Makefile.am (AM_CXXFLAGS, BASECXXFLAGS): Seperate out -Werror.
-	(autoload.o): Drop this rule, -finline-functions is no longer required
-	and -Werror is acceptable here now we have __attribute__ ((used)).
-	(WARNONLY_CFLAGS, inilex.o): Drop these.
-	(EXTRA_PROGRAMS): Add a fake "warnonly" program.
-	(warnonly_CXXFLAGS): Set to the $(BASECXXFLAGS).
-	(warnonly_SOURCES): Set to "inilex.cc".
-	(EXTRA_setup_SOURCES): Set to $(warnonly_SOURCES).
-	(setup_SOURCES): Remove "inilex.cc".
-	(setup_LDADD): Add "warnonly-inilex.o".
-
-2004-08-30  Max Bowsher  <maxb@ukf.net>
-
-	Move closer to GCC 3.4 compatibility.
-
-	* IOStreamProvider.h, io_stream_cygfile.cc, io_stream_cygfile.h,
-	io_stream_file.cc: Do not incorrectly use "enum" after it has been
-	hidden inside a typedef.
-	* archive.h: In "virtual func() = 0;", the 0 is a language construct,
-	not some symbol that might evaluate to 0, and gcc 3.4 enforces this.
-	* autoload.c (DllInfo.name): Silence warning by making const.
-	(DLL, autoload_common): __attribute__ ((used)) is now required to
-	prevent gcc being over-eager in it's optimization, and removing these
-	seemingly-unused (used only from assembly) functions.
-	Silences some warnings, too.
-	* Makefile.am (AM_CXXFLAGS, AM_CFLAGS): The options
-	-Wstrict-prototypes -Wmissing-prototypes do not apply to C++ and
-	g++ 3.4 complains about them.
-
-2004-08-29  Max Bowsher  <maxb@ukf.net>
-
-	* Exception.h: Reformatting, #include more, remove incorrect and
-	less-than-useful comments.
-	(TOPLEVEL_CATCH): New preprocessor macro.
-
-	* LogFile.cc (LogFile::operator()): Throw an exception object, not a
-	char* string.
-
-	Wrap the top-level of each thread (including the main thread) in a
-	try...catch block, in order to display a useful error message if an
-	exception is not caught.
-	* download.cc (do_download_reflector): Here ...
-	* ini.cc (do_ini_thread_reflector): ... and here ...
-	* install.cc (do_install_reflector: ... and here ...
-	* main.cc (main): ... and here ...
-	* postinstall.cc (do_postinstall_thread): ... and here ...
-	* site.cc (do_download_site_info_thread): ... and here!
-
-	* msg.h: Include a missing header requirement.
-	* res.rc (IDS_UNCAUGHT_EXCEPTION, IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO):
-	New strings.
-	* resource.h (IDS_UNCAUGHT_EXCEPTION)
-	(IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO): New IDs.
-
-2004-08-28  Max Bowsher  <maxb@ukf.net>
-
-	* res.rc (IDS_WINDOW_INIT_BADMSG): New string.
-	* resource.h (IDS_WINDOW_INIT_BADMSG): New string resource ID.
-	* window.cc (Window::FirstWindowProcReflector): Convert an abort()
-	into a descriptive error.
-
-2004-08-24  Max Bowsher  <maxb@ukf.net>
-
-	The Doug Lee replacement malloc was no longer hooked up with the
-	buildsystem in any way. Pruning the remaining unused file.
-
-	* dlmalloc.c: Removed.
-
-2004-08-18  Max Bowsher  <maxb@ukf.net>
-
-	"librsync is not wire-compatible with rsync 2.x, and is not likely
-	to be in the future." -- librsync.sourceforge.net
-
-	So, it is of no practical use to setup. Therefore, removing all
-	rsync related files and code from setup.
-
-	* rsync: Directory removed.
-	* Makefile.am: Remove rsync support from the buildsystem.
-	* configure.in: Ditto.
-	* README: Since it seems vanishingly unlikely that it will ever happen,
-	    remove rsync support from the wishlist.
-	* io_stream_rsync.cc: Remove.
-	* io_stream_rsync.h: Remove.
-
-2004-04-25  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (packagemeta::set_requirements): fix problem with
-	libpcre0 not being pulled in automatically.
-
-2004-04-25  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilderPackage.cc (dumpAndList):
-	  Move out to packageversion for reuse.
-	* package_meta.cc (packagemeta::logAllVersions): log dependencies.
-	* package_version.cc (packageversion::depends):
-	    provide a const accessor.
-	(dumpAndList): Moved from INIDBBuilder.cc.
-	* package_version.h: declare new method and function.
-
-2003-12-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (main): Update to head libgetopt++ syntax.
-
-2003-11-2  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ControlAdjuster.h (ControlPosition::CP_MIDDLE): Rename to
-	CP_CENTERED.
-	* ControlAdjuster.cc: Ditto.
-
-2003-10-31  Frank Richter  <frichter@gmx.li>
-
-	* localdir.cc (OnNext): When SelectDirectoryA() fails, display a
-	message with the error returned from the system instead of just
-	'could not change dir'. Also, offer the user to 'Retry', 'Ignore' the
-	error or 'Abort' the directory change.
-
-2003-10-31  Frank Richter  <frichter@gmx.li>
-
-	* propsheet.cc (PropSheetWndProc): Don't do child resizing if a the
-	window gets minimized. Otherwise some glitches (e.g. wrong child
-	sizes) occur.
-	Added support for WM_GETMINMAXINFO. Prevents the property sheet from
-	getting smaller than the original size.
-
-2003-11-1  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ControlAdjuster.h (ControlDimension): Add.
-	(ControlAdjuster): Factor adjust functionality into ControlInfo.
-	* ControlAdjuster.cc (ControlAdjuster::adjust): Ditto.
-	(ControlAdjuster::ControlInfo::adjust): Ditto.
-
-2003-10-31  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* ControlAdjuster.h (ControlPosition): New enum type.
-	(ControlInfo::horizontalPos, ControlInfo::verticalPos): New
-	instance variables.
-	(ControlInfo::anchorLeft, ControlInfo::anchorTop,
-	ControlInfo::anchorRight, ControlInfo::anchorBottom): Remove.
-	* ControlAdjuster.cc (ControlAdjuster::AdjustControls): Switch to
-	using position specifiers instead of anchors.
-	* choose.cc (ChooserControlsInfo): Ditto.
-	* proppage.cc (DefaultControlsInfo): Ditto.
-	* propsheet.cc (PropSheetControlsInfo): Ditto.
-	* site.cc (SiteControlsInfo): Position specifiers for site
-	selection dialog controls.
-	* threebar.cc (ThreeBarControlsInfo): Position specifiers for
-	progress dialog controls.
-
-2003-10-27  Ralf Habacker  <ralf.habacker@freenet.de>
-
-	* main.cc (HelpOption): New instance.
-	(main): Added help command line option handling.
-	* localdir.cc (LocalDirOption): New instance.
-	(LocalDirSetting::load): allow setting localdir from command line.
-
-2003-10-16  Frank Richter  <frichter@gmx.li>
-
-	* ControlAdjuster.cc: New file, helper to move elements of a dialog
-	along when the it's resized.
-	* ControlAdjuster.h: Ditto.
-	* Makefile.am: Add new source files.
-	* proppage.cc (PropertyPage::DialogProc): Adjust some common
-	controls (Cygwin icon top right, separator below) when a page is
-	resized.
-	(PropertyPage::PropertyPage): Dito.
-	* propsheet.cc (IsDialog): New. Test whether a window is a dialog.
-	Used internally by resize logic.
-	(EnumPages): New. Used internally by resize logic: resizes the
-	property sheet's individual pages.
-	(PropSheetWndProc): New. Hook for the propery sheet window proc.
-	(PropSheetProc): More style tweaks, add maximize box and thick border
-	as well. Hook into the property sheet's window proc.
-	(PropSheet::AdjustPageSize): New. Adjust the metrics of a single page
-	to fit nicely into the property sheet. Part of resize logic.
-	* res.rc (All dialogs): The top-right Cygwin icon and top separator
-	now have IDs distinct from IDC_STATIC, so their metrics can be
-	adjusted upon a resize. Also, all those Cygwin icons are at the exact
-	same spot now.
-	* choose.cc (ChooserPage::ChooserPage): Now the controls on the
-	chooser page move/size when the page size is changed.
-	* choose.h: Dito.
-
-2003-10-23  Jerry D. Hedden <jerry@hedden.us>
-
-	* ConnectionSetting.cc (ConnectionSetting::load): Load proxysettings.
-	(ConnectionSetting::save): Save proxy settings.
-
-2003-10-07  Robert Collins <rbtcollins@hotmail.com>
-
-	* proppage.h (PropertyPage::wantsActivation): const correctness fix.
-
-2003-08-19  Max Bowsher  <maxb@ukf.net>
-
-	* win32.h: Define NOMINMAX only if not already defined - because
-	libstdc++-v3 3.3.1 defines NOMINMAX itself.
-	
-2003-08-03  Max Bowsher  <maxb@ukf.net>
-
-	* ChangeLog: Fix broken line-wrapping throughout. Clarify that
-	"Ran automake" in 2003-07-26 entry was in bz2lib and zlib subdirs.
-
-2003-08-03  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* propsheet.cc (Copyright): Update copyright dates.
-	(PropSheet::PropSheet): Remove NumPropPages initialization.
-	(PropSheet::CreatePages): Use PropertyPages.size() instead of
-	NumPropPages.
-	(PropSheet::Create): Ditto.
-	(PropSheet::AddPage): Change to use new PropertyPages std::vector<>.
-	* propsheet.h (Copyright): Update copyright dates.
-	(File Scope): Include <vector>.
-	(PropSheet::PropertyPages): Change from array to vector<>.
-	(PropSheet::NumPropPages): Remove.
-
-2003-08-02  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-	
-	Changes modified by Max Bowsher  <maxb@ukf.net>
-	* splash.cc (Copyright): Update copyright dates.
-	(SplashPage::OnInit): Remove call to SetDlgItemFont().  Now handled in
-	base class.
-	* proppage.h (PropertyPage::setTitleFont): Declare.
-	* proppage.cc (Copyright): Update copyright dates.
-	(PropertyPage::DialogProc WM_INITDIALOG): Move all font setting code,
-	including that from splash.cc into new function...
-	(PropertyPage::setTitleFont): Create, using moved code. Change font
-	"MS Sans Serif" to "MS Shell Dlg" in line with recent res.rc change.
-	Set font for IDC_STATIC_WELCOME_TITLE here, to allow easy re-use of
-	style for future "Finished" page.
-
-2003-08-02  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* propsheet.cc: Include "resource.h".
-	(PropSheet::Create): Add the Cygwin icon in the left of the title bar.
-
-2003-08-01  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* proppage.cc (PropertyPage::FirstDialogProcReflector): Modify comment.
-
-2003-08-01  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* proppage.h (Copyright): Update copyright dates.
-	(PropertyPage): Document OnNext and OnBack.
-
-2003-07-31  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* proppage.cc (PropertyPage::Create): Use more self-documenting
-	MAKEINTRESOURCE() instead of cast to LPCSTR.
-
-2003-07-31  Robert Collins  <rbtcollins@hotmail.com>
-
-	* README: Mark completed items complete.
-
-2003-07-31  Pierre Humblet  <pierre.humblet@ieee.org>
-
-	* main.cc (set_default_sec): Set token owner from token user.
-	Always try to set the token primary group to Users or Admins.
-
-2003-07-30  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* String++.h (String::replace): New instance functions.
-	* String++.cc (String::replace): Implement.
-	* filemanip.cc (backslash): Change to use String::replace.
-	* desktop.cc (make_cygwin_bat): Escape '%' in path.
-
-2003-07-30  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* String++.h (TOSTRING): New macro.
-	* UserSettings.cc (UserSettings::deRegisterSetting): Fix
-	erroneous __LINE__/__FILE__ usage.
-	* download.cc (validateCachedPackage, check_for_cached): Ditto.
-	* geturl.cc (getUrlToStream): Ditto.
-	* install.cc (md5_one): Ditto.
-
-2003-07-30  Max Bowsher  <maxb@ukf.net>
-
-	* ini.cc (do_ini_thread): Return bool.
-	(do_ini_thread_reflector): Put returned bool in lParam.
-	* threebar.cc (WM_APP_SETUP_INI_DOWNLOAD_COMPLETE): Rework for new
-	meaning of lParam. Replace erroneous use of do_fromcwd with
-	SetActivePageByID (IDD_SOURCE).
-
-2003-07-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ConnectionSetting.cc: New file, persist connection type selection.
-	* ConnectionSetting.h: Ditto.
-	* net.cc: Hold a ConnectionSetting instance to trigger the logic.
-	(NetPage::OnInit): Don't force net_method to any value.
-	* Makefile.am: Add new source files.
-	
-2003-07-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* SourceSetting.cc: New file, persist source selection.
-	* SourceSetting.h: Ditto.
-	* source.cc: Hold a Source setting instance to trigger the logic.
-	* Makefile.am: Add new source files.
-
-2003-07-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* UserSettings.h (UserSettings::settingFileForLoad): Extracted method
-	from LocalDirSetting::load().
-	* UserSettings.cc (UserSettings::settingFileForLoad): Ditto.
-	* UserSettings.h (UserSettings::settingFileForSave): Extracted method
-	from LocalDirSetting::save().
-	* UserSettings.cc (UserSettings::settingFileForSave): Ditto.
-	* localdir.cc (LocalDirSetting::load): Extract location logic to
-	UserSettings.
-	(LocalDirSetting::save): Extract location logic to UserSettings.
-	* site.cc (SiteSetting::getSavedSites): Use
-	UserSettings::settingFileForLoad.
-	(SiteSetting::save): Use UserSettings::settingFileForSave.
-
-2003-07-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.cc: Adjust ::GetClientRect(..) to the inherited one
-	throughout.
-
-2003-07-29  Max Bowsher  <maxb@ukf.net>
-
-	Based on a patch by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
-	* AntiVirus.cc (AntiVirusPage::wantsActivation): Define.
-	* AntiVirus.h (AntiVirusPage::wantsActivation): Declare.
-	* localdir.cc (LocalDirPage::OnBack): Remove logic subsumed by
-	RootPage::wantsActivation.
-	* proppage.cc (PropertyPage::DialogProc): Call wantsActivation(),
-	and skip to next page in sequence if activation is refused.
-	* proppage.h (PropertyPage::wantsActivation): Default implementation.
-	* root.cc (RootPage::wantsActivation): Define.
-	* root.h (RootPage::wantsActivation): Declare.
-	* source.cc: Don't include "AntiVirus.h".
-	(SourcePage::OnNext): Remove logic subsumed by
-	RootPage::wantsActivation.
-	(SourcePage::OnBack): Remove logic subsumed by
-	AntiVirusPage::wantsActivation.
-	* splash.cc: Don't include "AntiVirus.h" or "dialog.h".
-	(SplashPage::OnNext): Remove - subsumed by
-	AntiVirusPage::wantsActivation.
-	* splash.h (SplashPage::OnNext): Remove declaration.
-
-2003-07-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.h (PickView::refresh): New method.
-	* PickView.cc (PickView::refresh): Extracted from various
-	ChooserPage callers.
-	* choose.cc: Use PickView::refresh wherever possible.
-
-2003-07-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.h (ChooserPage::createListView): Remove last parameter.
-	(ChooserPage::getDefaultListViewSize): Extracted method.
-	* choose.cc (ChooserPage::createListView): Remove last parameter.
-	(ChooserPage::getDefaultListViewSize): Extracted method.
-
-2003-07-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (ChooserPage::createListView): Remove unneeded
-	parameter.
-	* choose.h: Ditto.
-
-2003-07-29  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* dialog.h (do_fromcwd): Change function declaration.
-	* fromcwd.cc (do_fromcwd): Change return type to bool.  Eliminate
-	use of next_dialog, return true or false instead.
-	* localdir.cc (LocalDirPage::OnNext): Use do_fromcwd()'s return
-	value instead of next_dialog.
-
-2003-07-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_db.h (packagedb::fillMissingCategory): Move from ChooserPage.
-	* choose.h (ChooserPage::fillMissingCategory): Delete.
-	* package_db.cc (packagedb::fillMissingCategory): Move from ChooserPage.
-	* choose.cc (ChooserPage::fillMissingCategory): Delete and adjust
-	callers.
-
-2003-07-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.h (CATEGORY_EXPANDED): Move from choose.h
-	(CATEGORY_COLLAPSED): Move from choose.cc.
-	(PickView::setViewMode): Move from ChooserPage.
-	* choose.h (CATEGORY_EXPANDED): Delete.
-	(CATEGORY_COLLAPSED): Delete.
-	(ChooserPage::setViewMode): Delete.
-	* PickView.cc (PickView::setViewMode): Move from ChooserPage.
-	* chooser.cc (ChooserPage::setViewMode): Delete, and adjust callers
-	throughout.
-
-2003-07-28  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* AntiVirus.cc (AntiVirusPage::OnNext): Do not explicitly specify the
-	page to display next, since it follows in the default page ordering
-	anyway.
-
-2003-07-28  Max Bowsher  <maxb@ukf.net>
-
-	* dialog.h: (NEXT): Remove obsolete macro.
-	* site.cc (save_dialog): Remove use of NEXT(), and non-functional
-	unnecessary error handler.
-
-2003-07-28  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.h (packagemeta::addToCategoryAll): Declare.
-	* package_meta.cc (packagemeta::addToCategoryAll): New method,
-	separated to allow clear iteration.
-	* choose.cc (ChooserPage::fillMissingCategory): BUGFIX: "all" is
-	meant to be added unconditionally.
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Generic.h: New file, home for generic programming tools.
-	(visit_if): Move here from package_meta.cc.
-	Adjust to be fully parameterised.
-	* package_meta.h (packagemeta::hasNoCategories): Query for generic
-	programming.
-	(packagemeta::setDefaultCategories): set categories for packages
-	with none.
-	* package_meta.cc: Move visit_if out. Adjust users for
-	full paramterised operation.
-	(packagemeta::hasNoCategories): Implement.
-	(packagemeta::setDefaultCategories): Implement.
-	* choose.cc (ChooserPage::fillMissingCategory): Use visit_if to
-	reduce duplicate code.
-	(ChooserPage::setExistence): Delete.
-	* choose.h (ChooserPage::setExistence): Rename to
-	packagedb::setExistence.
-	* package_db.h (packagedb::setExistence): Declare.
-	* package_db.cc (packagedb::setExistence): Copy from choose.cc
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* localdir.h (LocalDirPage::OnInit): Remove.
-	* localdir.cc (LocalDirPage::OnInit): Move to LocalDirSetting
-	::load().
-	(LocalDirSetting::load): Copied from LocalDirPage::OnInit.
-	* site.h (SitePage::OnInit): Remove.
-	(SitePage::getSavedSites): New member, replaces get_saved_sites.
-	(SitePage::registerSavedSite): New member, replaces
-	register_saved_site.
-	* site.cc (SitePage::OnInit): Move to SiteSetting::load().
-	(SiteSetting::load): Copied from SitePage::OnInit.
-	(SitePage::getSavedSites): Renamed from get_saved_sites.
-	(SitePage::registerSavedSite): Renamed from register_saved_site.
-	(do_download_site_info_thread): Don't look at the list size for
-	determining if the download was successful.
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.h (ChooserPage::setViewMode): Remove HWND from
-	signature.
-	(ChooserPage::defaultTrust): Ditto.
-	Move to PickView.
-	(ChooserPage::ifChecked): Use Window helper function
-	IsButtonChecked.
-	* choose.cc (ChooserPage::setViewMode): Use chooser->GetHWND()
-	throughout.
-	Update all callers with new signature.
-	(ChooserPage::defaultTrust): Ditto.
-	Move to PickView.
-	* PickView.h (PickView::defaultTrust): Declare.
-	* PickView.cc (PickView::defaultTrust): Copy from chooser.cc.
-
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.h (PickView::lv): Eliminate.
-	* PickView.cc (PickView::init): Replace use of lv with
-	GetHWND().
-	(PickView::list_click): Ditto.
-	* choose.h (ChooserPage::lv): Eliminate.
-	* choose.cc: Replace lv with chooser->GetHWND()
-	throughout.
-
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.h (PickView::chooser): Eliminate.
-	(PickView::list_vscroll): Make non-static.
-	(PickView::list_hscroll): Ditto.
-	(PickView::list_click): Ditto.
-	(PickView::paint): Ditto.
-	* PickView.cc (PickView::list_vscroll): Eliminate use
-	of PickView::chooser.
-	(PickView::list_hscroll): Ditto.
-	(PickView::list_click): Ditto.
-	(PickView::paint): Ditto.
-	* choose.cc (Chooser::createListView): Eliminate use
-	of PickView::chooser.
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.h (PickView): Inherit from Window.
-	(PickView::RegisterWindows): Move from ChooserPage.
-	(PickView::listview_proc): Likewise.
-	(PickView::paint): Ditto.
-	(PickView::list_click): Ditto.
-	(PickView::list_hscroll): Ditto.
-	(PickView::list_vscroll): Ditto.
-	(PickView::lv): Ditto.
-	(PickView::chooser): Ditto.	
-	(PickView::Create): Override Windows::Create as we migrate.
-	(PickView::registerWindowClass): Renamed RegisterWindows.
-	(PickView::WindowClassAtom): Prevent double registration.
-	(PickView::init): Declare.
-	* PickView.cc: Adjust for new inheritance.
-	(PickView::RegisterWindows): Move from ChooserPage.
-	(PickView::listview_proc): Likewise.
-	(PickView::paint): Ditto.
-	(PickView::list_click): Ditto.
-	(PickView::list_hscroll): Ditto.
-	(PickView::list_vscroll): Ditto.
-	(PickView::lv): Ditto.
-	(PickView::chooser): Ditto.	
-	(PickView::Create): Introduce stub.
-	(PickView::RegisterWindows): Rename
-	(PickView::init): Extracted from constructor to allow
-	reordering.
-	* chooser.h (ChooserPage::registerWindows): Rename to
-	PickView::RegisterWindows.
-	(ChooserPage::listview_proc): Likewise.
-	(ChooserPage::paint): Ditto.
-	(ChooserPage::list_click): Ditto.
-	(ChooserPage::list_hscroll): Ditto.
-	(ChooserPage::list_vscroll): Ditto.
-	(ChooserPage::lv): Duplicate into PickView, observe
-	as non-static.
-	(ChooserPage::chooser): Ditto.
-	* chooser.cc (ChooserPage::registerWindows): Delete.
-	(ChooserPage::listview_proc): Ditto.
-	(ChooserPage::paint): Ditto.
-	(ChooserPage::list_click): Ditto.
-	(ChooserPage::list_hscroll): Ditto.
-	(ChooserPage::list_vscroll): Ditto.
-	(ChooserPage::createListView): Create() on PickView.
-	* window.h (Window::RegisterWindowClass): Make virtual
-	to allow Create to become a Template Method, and rename
-	to registerWindowClass as it's not static.
-	* window.cc (Window::registerWindowClass): Ditto.
-	(Window::FirstWindowProcReflector): BUGFIX: Set window
-	handle to prevent races with the window procedure.
-
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (set_view_mode): Rename to ChooserPage::setViewMode.
-	(default_trust): Rename to ChooserPage::defaultTrust.
-	(fill_missing_category): Rename to ChooserPage::fillMissingCategory.
-	(set_existence): Rename to ChooserPage::setExistence.
-	(register_windows): Rename to ChooserPage::registerWindows.
-	(listview_proc): Rename to ChooserPage::listview_proc.
-	(paint): Rename to ChooserPage::paint.
-	(list_click): Rename to ChooserPage::list_click.
-	(list_hscroll): Rename to ChooserPage::list_hscroll.
-	(list_vscroll): Rename to ChooserPage::list_vscroll.
-	(lv): Rename to ChooserPage::lv.
-	(chooser): Rename to ChooserPage::chooser.
-	* choose.h (ChooserPage::setViewMode): Declare.
-	(ChooserPage::defaultTrust): Declare.
-	(ChooserPage::fillMissingCategory): Declare.
-	(ChooserPage::setExistence): Declare.
-	(ChooserPage::registerWindows): Declare.
-	(ChooserPage::listview_proc): Declare.
-	(ChooserPage::paint): Declare.
-	(ChooserPage::list_click): Declare.
-	(ChooserPage::list_hscroll): Declare.	
-	(ChooserPage::list_vscroll): Declare.
-	(ChooserPage::lv): Declare.
-	(ChooserPage::chooser): Declare.
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (create_listview): Use for_each instead of explicit
-	iteration.
-	(create_listview): Rename to ChooserPage::createListview.
-	* package_meta.h (packagemeta::set_requirements): Explicitly separate
-	the 1 and 2 parameter versions.
-	
-2003-07-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* String++.h (String::operator !=): Declare for char * and String.
-	* String++.cc (String::operator !=): Implement.
-	* package_meta.cc(StringConcatenator): Move above all users.
-	(_visit_if): Predicate support for visitors.
-	(packagemeta::getReadableCategoryList): Refactor to use
-	StringConcatenator with a predicate.
-	* choose.h: Remove unneeded c++ guards.
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (scan_downloaded_files): Rename to
-	packagemeta::ScanDownloadedFiles.
-	(scanAVersion): Rename to packageversion::scan.
-	(GetParentRect): Rename to ChooserPage::getParentRect.
-	* choose.h (ChooserPage::getParentRect): Declare.
-	* package_meta.h (packagemeta::ScanDownloadedFiles): Declare.
-	* package_version.h (packageversion::scan): Declare.
-	* package_version.cc (packageversion::scan): Move from choose.cc
-	* package_meta.cc (packagemeta::ScanDownloadedFiles): Move from
-	choose.cc
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (ChooserPage::OnNext): log before starting activity threads.
-	(ChooserPage::OnInit): Remove temporary variable frame.
-	(ChooserPage::setPrompt): Extract method from OnInit.
-	(choose_inst_text): Remove unused variable.
-	* choose.h(ChooserPage::setPrompt): Declare
-	* res.rc (IDD_CHOOSE): Bugfix: the chooser was setting a non-present
-	caption.
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	Remove package specific code from choose.cc.
-	Update copyrights where appropriate.
-	* choose.cc(ChooserPage::OnNext): Extract logging to
-	packagemeta::logSelectionStatus.
-	* package_meta.cc(packagemeta::logSelectionStatus): Extract from
-	ChooserPage::OnNext.
-	(StringConcatenator): helper for logSelectionStatus.
-	(action_caption): Make const.
-	* package_meta.h(packagemeta): Declare logSelectionStatus.
-	(packagemeta::action_caption): Make const.
-	* package_version.cc(packageversion::sourcePackage): Make const.
-	* package_version.h(packageversion::sourcePackage): Make const.
-	
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc: Update copyright.
-	(ChooserPage::keepClicked): Extracted from OnMessageCmd.
-	(ChooserPage::changeTrust): Ditto.
-	* choose.h (ChooserPage): Declare keepClicked and changeTrust.
-	(ChooserPage::ifChecked): Extracted from OnMessageCmd.
-	* package_meta.h (SetRequirement): Adapter for visiting package
-	collections.
-
-2003-07-26  Max Bowsher  <maxb@ukf.net>
-
-	* tests/.cvsignore: New file, listing Makefile.in.
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	Save used local cache dir from initial run of setup, so the user doesn't
-	need to retype it.
-	* localdir.h (LocalDirSetting): UserSetting class for the local cache
-	dir.
-	* localdir.cc (LocalDirSetting::save): Replace save_local_dir, and
-	update callers.
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	Save used site from initial run of setup, so the user doesn't need to
-	retype it.
-	* main.cc (main): Load and save all user settings.
-	* site.cc (SiteSetting::save): Migrate logic from save_site_url.
-	(SitePage::OnNext): Use ChosenSites.save() to remove uneeded
-	save_site_url call.
-	(save_site_url): Delete.
-	* site.h (save_site_url): Remove declaration.
-	* .cvsignore: Update autoconf generated files.
-
-2003-07-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* tests/Makefile.am: Driver for test suite.
-	* tests/UserSettingTest.cc: Test UserSetting interface.
-	* tests/UserSettingsTest.cc: Test UserSettings interface.
-	* Makefile.am: Add the tests dir to recurse into.
-	* configure.in: Ditto.
-	* UserSetting.h: Add load and save methods to allow global
-	serialisation.
-	Add explicit copy and assignment operators to prevent synthetics.
-	Make the constructor protected to prevent direct instantiation.
-	* UserSettings.h (UserSettings::loadAllSettings): New method.
-	(UserSettings::savedAllSettings): New method.
-	* UserSettings.cc: Implement new methods.
-	* site.cc: Implement stubs for new required UserSetting methods.
-	* site.h (ChosenSite): Ditto.
-	* bz2lib/: Ran automake.
-	* zlib/: Ran automake.
-	
-2003-07-23  Max Bowsher  <maxb@ukf.net>
-
-	* desktop.cc (DesktopSetupPage::OnBack): Remove obsolete use of NEXT().
-	* root.cc (RootPage::OnNext): Ditto.
-	(RootPage::OnBack): Ditto.
-	* install.cc (do_install_thread): Remove obsolete use of next_dialog.
-	* main.cc (main): Ditto.
-	* postinstall.cc (do_postinstall_thread): Ditto.
-	
-2003-07-23  Max Bowsher  <maxb@ukf.net>
-
-	* dialog.h (do_choose, do_desktop, do_local_dir, do_net, do_other)
-	(do_root, do_site, do_source, do_splash): Remove declarations, since
-	these functions no longer exist.
-
-2003-07-23  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* choose.cc (initialized): Remove obsolete file scope variable.
-
-2003-07-18  Max Bowsher  <maxb@ukf.net>
-
-	* res.rc: Make caption of every dialog page begin with "Cygwin Setup".
-	This aids recognition when minimized.
-	Prompted by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
-
-2003-07-10  Jeremy White  <jwhite@codeweavers.com>
-
-	* mount.cc, root.cc, site.cc:  Make StringOptions required,
-	thereby making --longopt <parm> behave as a newbie would expect.
-
-2003-07-08  Max Bowsher  <maxb@ukf.net>
-
-	* LogFile.h, cistring.h, dialog.h, diskfull.h, filemanip.h, geturl.h,
-	hash.h, log.h, mkdir.h, mklink2.h, mount.h, msg.h, netio.h, nio-file.h,
-	nio-ftp.h, nio-http.h, nio-ie5.h, port.h, simpsock.h, state.h,
-	version.h: Add inclusion guard.
-	* root.h: Standardize naming of inclusion guard.
-
-2003-06-23  Max Bowsher  <maxb@ukf.net>
-
-	* AntiVirus.h, Exception.h, FilterVisitor.h, FindVisitor.h,
-	IOStreamProvider.h, IniDBBuilder.h, IniDBBuilderPackage.h,
-	IniParseFeedback.h, IniParseFindVisitor.h, LogSingleton.h, MD5++.h,
-	PackageSpecification.h, PackageTrust.h, PickCategoryLine.h, PickLine.h,
-	PickPackageLine.h, PickView.h, RECTWrapper.h, ScanFindVisitor.h,
-	String++.h, UserSetting.h, UserSettings.h, archive.h, archive_tar.h,
-	category.h, choose.h, compress.h, compress_bz.h, compress_gz.h,
-	cygpackage.h, desktop.h, download.h, find.h, ini.h, io_stream.h,
-	io_stream_cygfile.h, io_stream_file.h, io_stream_memory.h,
-	io_stream_rsync.h, localdir.h, net.h, package_db.h, package_meta.h,
-	package_source.h, package_version.h, proppage.h, propsheet.h, script.h,
-	site.h, source.h, splash.h, threebar.h, win32.h, window.h:
-	Standardize naming and placement of inclusion guards.
-
-2003-06-22  Benjamin Riefenstahl  <Benjamin.Riefenstahl@epost.de>
-
-	* res.rc (all dialogs): Change font from "MS Sans Serif" to
-	"MS Shell Dlg".
-
-2003-06-22  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am: Clarify comment.
-	Derive AM_CFLAGS from AM_CXXFLAGS, rather than the other way around.
-	(AM_CXXFLAGS): Remove -Wmissing-declarations - it is a C-only warning.
-	(AM_CFLAGS): Add -Winline, and -Wmissing-declarations.
-
-2003-06-22  Max Bowsher  <maxb@ukf.net>
-
-	* rfc1738.cc (rfc1738_do_escape): Eliminate redundant conditional.
-
-2003-06-05  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* window.h (SETUP_WINDOW_H): Rename multi-include guard.
-	(Copyright): Update.
-	(RECTWrapper): New forward declaration.
-	(Window::Create): Move.
-	(Window::MoveWindow): New overload declaration.
-	* window.cc: (RECTWrapper.h) Include.
-	(Copyright): Update.
-	(Window::FirstWindowProcReflector): Use reinterpret_cast<> instead
-	of C-style casts.
-	(Window::MoveWindow): New overload.
-
-2003-05-31  Max Bowsher  <maxb@ukf.net>
-
-	* res.rc: Resize title controls to fully fill available width.
-
-2003-05-07  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* RECTWrapper.h: New file.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (Script::extension): Extract method from Script::run.
-	(Script::run): Extract extension generation to Script::extension.
-	* script.h (Script::extension): Declare.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (run_script): Remove.
-	(try_run_script): Inline method run_script.
-	* script.h (run_script): Remove.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* postinstall.cc (RunScript::operator()): Use new run syntax.
-	* script.h (Script::run): Eliminate to_log parameter.
-	* script.cc (Script::run): Ditto.
-	(run_script): Use new run syntax.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (Script::run): Eliminate temp variable 'f2'.
-	Rename temp variable 'f2' to 'windowsName' for increased clarity.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (Script::run): Eliminate temp variable 'fname'.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (Script::run): Eliminate temp variable 'dir'.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (run_script): Always pass TRUE to Script::run.
-	* script.h (run_script): Remove optional to_log parameter.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (run_script): Move functionality into Script.
-	(Script::run): Absorb run_script.
-
-2003-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickCategoryLine.cc (PickCategoryLine::click): Tell packagemeta we
-	are about to perform a visit.
-	* PickPackageLine.cc (PickPackageLine::click): Tell packagemeta we
-	are about to perform a visit.
-	* package_db.cc (packagedb::markUnVisited): Convenience wrapper -
-	mark all packages as unvisited.
-	* package_db.h (packagedb::markUnVisited): Declare.
-	* package_meta.cc (packagemeta::PrepareForVisit): New static method
-	to prepare for a loop-free visit.
-	(packagemeta::packagemeta): Adjust for new member.
-	(packagemeta::set_requirements): Only visit a node once.
-	(packagemeta::visited): Get and Set methods for new member visited_.
-	* package_meta.h (packagemeta::PrepareForVisit): Declare.
-	(packagemeta::visited): Declare.
-	(packagemeta::visited_): Declare.
-
-2003-04-07  Max Bowsher  <maxb@ukf.net>
-
-	* download.cc: Add command line option to suppress MD5 checks.
-	(validateCachedPackage): Test option and possibly skip.
-
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	Merge in setup-200303-troubleshooting fixes.
-
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultDACL): Reinstate commented code.
-	(NTSecurity::setDefaultSecurity): Ditto.
-
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultDACL): Use MS calculations for ACL
-	buffer sizing.
-	
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultDACL): Sanity check memory allocation.
-	
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultDACL): Adjust commented code for
-	auto_ptr use.
-	
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::NoteFailedAPI): Helper function.
-	Use throughout NTSecurity routines.
-	(NTSecurity::setDefaultDACL): Use dynamic memory for ACL storage.
-	
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultDACL): Disable ~ 50% of remaining
-	active code.
-
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::GroupInfo): Extract group query code.
-	(NTSecurity::setDefaultDACL): Disable ~ 50% of code.
-	
-2003-04-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultSecurity): Disable ~ 50% of security
-	code.
-
-2003-04-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultSecurity): Remove double declaration of
-	sz. User TokenGroupCollection to abstract token searching logic,
-	eliminate isadmin and isuser temporary variables.
-	(TokenGroupCollection): New class for querying token group information.
-	
-2003-04-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (NTSecurity::setDefaultSecurity): Extract esid initialisation.
-	Move local variables to just before first use.
-	SetTokenInformationFailures where being handled inconsistently.
-	Remove assignments from if statements.
-	(NTSecurity::esid): Rename to everyOneSID.
-	(NTSecurity::initialiseEveryOneSID): new method.
-	(NTSecurity::setDefaultDACL): Extract method for default DACL logic.
-
-2003-04-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (SIDWrapper): Manage SID memory.
-	(HANDLEWrapper): Likewise for HANDLES.
-	(NTSecurity): Worker class for set_default_sec().
-	(set_default_sec): Move body into NTSecurity::setDefaultSecurity().
-	(NTSecurity::setDefaultSecurity): Eliminate goto out: via memory
-	managing objects.
-
-2003-04-01  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* cygwin.ico:  Added two new resolutions, 64x64 and 72x72.
-
-2003-03-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* GUIDELINES: New file documenting code guidelines.
-
-2003-03-26  Max Bowsher  <maxb@ukf.net>
-
-	* .cvsignore: Add cfgaux.
-
-2003-03-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_version.cc (_defaultversion::accessible): Override and make
-	always false.
-	(_packageversion::accessible): Fix a couple of logic bugs resulting in
-	incorrect trues.
-	* package_version.h (_packageversion::accessible): Make virtual.
-
-2003-03-25  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* threebar.h (WM_APP_START_POSTINSTALL): New message.
-	(WM_APP_POSTINSTALL_THREAD_COMPLETE): New message.
-	* threebar.cc (ThreeBarProgressPage::OnMessageApp):
-	Add handling for WM_APP_START_POSTINSTALL and
-	WM_APP_POSTINSTALL_THREAD_COMPLETE.
-	* install.cc (do_install_thread): Set next_dialog to
-	IDD_S_POSTINSTALL.
-	* desktop.cc (DesktopSetupPage::OnFinish): Move the
-	do_postinstall call to ThreeBarProgressPage::OnMessageApp.
-	* script.h (Script::fullName): New member function.
-	(Script::run): New member function.
-	(Script::ETCPostinstall): New static member constant.
-	* script.cc (Script::fullName): Implement.
-	(Script::run): Implement.
-	(Script::ETCPostinstall): Define.
-	(Script::isAScript): Use ETCPostinstall instead of a
-	hardcoded string constant.
-	(run): Enable "#if 0"'d code.
-	* postinstall.cc (Progress): New extern variable.
-	(RunFindVisitor::visitFile): Add script to vector
-	instead of running.
-	(RunFindVisitor::_scripts): New member variable.
-	(RunScript): New helper class for use in for_each.
-	(do_postinstall_thread): Rename do_postinstall to.  Add
-	Progress bar and text setting.  Add package count.
-	(do_postinstall_reflector): New static function.
-	(do_postinstall): Rename to do_postinstall_thread.
-	Create a thread instead.
-
-2003-03-18  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* script.cc (run): Add file_out parameter.
-	Redirect output of subprocess to file, creating the
-	path if necessary.  Minimize the script window.
-	(run_script): Add optional to_log boolean parameter.
-	If to_log, redirect output to temporary file and then
-	import it into LOG_BABBLE.
-	(OutputLog): New helper class.
-	(operator<<): New operation on OutputLog.
-	* script.h (run_script): Add optional to_log parameter.
-	* postinstall.cc (RunFindVisitor::visitFile): Instruct
-	run_script() to log script output.
-	(do_postinstall): Ditto.
-
-2003-03-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (packagemeta::set_action): The logic
-	test for the default action was reversed.
-
-2003-03-18  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* postinstall.cc (do_postinstall): Filter out '*.done'.
-	* FilterVisitor.h: New header file.  Declare the
-	FilterVisitor, Filter, and ExcludeNameFilter classes.
-	* FilterVisitor.cc: New file.  Implement FilterVisitor,
-	Filter, and ExcludeNameFilter.
-	* String++.h (String::matches): New instance function.
-	* String++.cc (String::matches): Implement.
-	(strmatch) Import and adapt for <buf,len> strings.
-	* Makefile.am (setup_SOURCES): Add FilterVisitor.cc and
-	FilterVisitor.h to value.
-
-2002-03-18  Max Bowsher  <maxb@ukf.net>
-
-	* LogFile.cc (LogFile::exit): Use CRT exit() instead of ExitProcess().
-	Use passed exit_code even if been_here.
-	Remove incorrect _CYGWIN_ preprocessor conditional.
-
-2003-03-16  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_db.h (PackageDBConnectedIterator): Typedef
-	for connected loop detection collection iterator.
-	* package_db.cc (ConnectedLoopDetector): An
-	implementation of R.E. Tarjans strongly connected
-	set visitor algorithm.
-	* postinstall.cc (do_postinstall): Use the new iterator
-	for visiting postinstall scripts.
-
-2003-03-16  Robert Collins  <rbtcollins@hotmail.com>
-
-	* install.cc: Introduce Installer class.
-	(init_dialog): Rename to Installer::initDialog.
-	(progress): Rename to Installer::progress.
-	(standard_dirs): Rename to Installer::StandardDirs.
-	(uninstall_one): Rename to Installer::uninstallOne.
-	(replace_one): Rename to Installer::replaceOne.
-	(log_ror_failure): Rename to
-	Installer::replaceOnRebootFailed.
-	(log_ror_success): Rename to
-	Installer::replaceOnRebootSucceeded.
-	(install_one_source): Rename to Installer::installOneSource.
-	Note script files as they are installed.
-	* package_version.cc (packageversion::addScript): Implement.
-	(packageversion::scripts): Implement.
-	* package_version.h (packageversion::addScript): Record the
-	presence of a script.
-	* script.h (Script): New class to track scripts.
-	* postinstall.cc (do_postinstall): Iterate through the
-	package listed scripts before searching for scripts.
-	* String++.cc (String::substr): Second argument needed to
-	be signed.
-	* String++.h (String::substr): Second argument needed to
-	be signed.
-
-2003-03-16  Max Bowsher  <maxb@ukf.net>
-
-	* .cvsignore: Create, to ignore configure, aclocal.m4, Makefile.in and
-	autom4te.cache.
-
-2003-03-16  Max Bowsher  <maxb@ukf.net>
-
-	* UserSettings.cc (UserSettings::Instance): Remove premature return.
-
-2003-03-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (run): Rename variable b to createSucceeded.
-
-2003-03-15  Igor Pechtchanski <pechtcha@cs.nyu.edu>
-
-	* script.cc (run): Close unneeded handles.
-	
-2003-03-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* configure: Remove.
-	* aclocal.m4: Remove.
-	* Makefile.in: Remove.
-	* cfgaux: Remove.
-	* cfgaux/compile: Remove.
-	* cfgaux/config.guess: Remove.
-	* cfgaux/config.sub: Remove.
-	* cfgaux/depcomp: Remove.
-	* cfgaux/install-sh: Remove.
-	* cfgaux/ltmain.sh: Remove.
-	* cfgaux/missing: Remove.
-	* cfgaux/mkinstalldirs: Remove.
-
-2003-03-14  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* install.cc (replace_one): Clear Text3.
-
-2003-03-14  Igor Pechtchanski  <pechtcha@cs.nyu.edu>
-
-	* install.cc (install_one_source): Add logging for successful
-	replace-on-reboot scheduling. Factor out duplicate code.
-	Set rebootneeded on Win9x.
-	(log_ror_failure): New static function.
-	(log_ror_success): New static function.
-
-2003-03-14  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (ChooserPage::OnNext): Fix iterator bug. Reported by
-	Igor Pechtchanski  <pechtcha@cs.nyu.edu>.
-
-2003-03-13  Max Bowsher  <maxb@ukf.net>
-
-	* Update included zlib to 1.1.4.
-
-2003-03-13  Robert Collins  <rbtcollins@hotmail.com>
-
-	* install.cc (do_install_thread): Use a query method rather than temp
-	variable do_skip.
-
-2003-03-09  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* install.cc (do_install_thread): Use IDS_SKIP_PACKAGE
-	instead of IDS_CORRUPT_PACKAGE when asking the user to take
-	action if the hash verification check fails for a source package.
-	Do not increase the value of 'total_bytes' variable if the
-	user chooses to skip over a package, which failed the hash
-	verification.
-
-2003-03-10  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am: Add foreign to AUTOMAKE_OPTIONS.
-
-2003-03-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* UserSettings.cc (UserSettings::init): Really initialize all members.
-
-2003-03-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Exception.h: Add a logic error exception id.
-	* Makefile.am: Add new sources.
-	* UserSettings.cc: New file.
-	* UserSettings.h: New file.
-	* UserSetting.cc: New file.
-	* UserSetting.h: New file.
-	* site.h: Add a SiteSetting as example of a UserSetting.
-	* site.cc (ChosenSites): Add a instance of SiteSetting to trigger
-	registration.
-
-2003-03-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* compress_bz.cc (compress_bz::read): Adjust incorrect assignment of
-	lasterr.
-	(compress_bz::error): Return lasterr which will indicate any error.
-
-2003-03-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.h (ChooserPage): Override OnActivate.
-	* choose.cc (ChooserPage::OnActivate): Refresh the current view when
-	activating the dialog.
-
-2003-03-09  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_version.cc (_defaultversion::pick(bool)): Override this and
-	do nothing.
-	(packageversion::pick(bool): Use a mutator function rather than direct
-	member access.
-	* package_version.h (_packageversion::pick(bool)): Move method from
-	_packageversion.
-
-2003-02-16  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* install.cc (install_one_source): Remove the MD5 verification
-	code.
-	Delay the creation of the package listing file.
-	(do_install_thread): Check the hashes for packages which need
-	to be installed before the uninstall step. Allow the user to
-	skip over packages, which fail the hash verification.
-	(md5_one): Define new function.
-	* res.rc (IDS_SKIP_PACKAGE): New string resource.
-	* resource.h (IDS_SKIP_PACKAGE): New macro definition.
-
-2003-02-16  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* Exception.h: Declare new constructor.
-	(Exception::_message): Change the type from 'const char *' to
-	'class String'.
-	(Exception::~Exception): Implement destructor (make gcc shut up).
-	* Exception.cc: Implement new constructor.
-	(Exception::what): Use String::cstr_oneuse ().
-	* download.cc (validateCachedPackage): Use the constructor, which
-	takes String& as its second argument, when throwing objects
-	of type Exception.
-	(check_for_cached): Ditto.
-	* install.cc (install_one_source): Ditto.
-
-2003-02-01  Igor Pechtchanski <pechtcha@cs.nyu.edu>
-
-	* res.rc (IDS_INSTALL_INCOMPLETE): Change hard-coded
-	log filename to %s.
-	(IDS_MISSING_LOG): New string resource.
-	* resource.h (IDS_MISSING_LOG): New resource.
-	* LogFile.cc (LogFile::exit): Pass log filename for
-	LOG_BABBLE to note().
-	(LogFile::getFileName): New function.
-	* LogFile.h (LogFile::getFileName): New function.
-
-2003-02-01  Igor Pechtchanski <pechtcha@cs.nyu.edu>
-
-	* String++.cc: Don't include concat.h.
-	* Makefile.am: Remove concat.cc and concat.h references.
-	* concat.h: Remove.
-	* concat.cc: Remove.
-
-2003-03-09  Max Bowsher  <maxb@ukf.net>
-
-	* bootstrap.sh: Add sanity check of current directory.
-	Recurse into libgetopt++ if needed.
-
-2003-03-09  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Update readme of bugs and wishes.
-
-2003-03-05  Max Bowsher  <maxb@ukf.net>
-
-	* netio.cc (save_dialog): Allocate an empty string if the password is
-	null, so that an empty password is accepted elsewhere in setup.
-	(check_if_enable_ok): An empty password is OK.
-
-2003-03-05  Brian Keener  <bkeener@thesoftwaresource.com>
-
-	* PickView.cc (PickView::views): Add two new views for Skipped
-	packages and Installed Packages not requiring update.
-	(PickView::set_headers () ): Ditto.
-	(PickView::clear_view (void) ): Ditto.
-	(PickView::views::caption () ): Add two new captions for the new
-	views added for Skipped and Installed Packages.
-	(PickView::scroll () ): Modify Scroll Bar property to Disable
-	instead of disappearing when there is nothing to Scroll.
-	* PickView.h: Add two new views for Skipped packages and Installed
-	packages to public class view.
-	* choose.cc (list_click () ): Modify Scroll Bar property to Disable
-	instead of disappearing when there is nothing to Scroll.
-	(listview_proc () ): Ditto.
-	(set_view_mode): Add two new views for Skipped Packages and Installed
-	Packages not requiring update.  Modify Scroll Bar property to Disable
-	instead of disappearing when there is nothing to scroll.
-	* res.rc (IDD_CHOOSE): Reposition Radio Buttons, View Selection
-	Button and View Button Caption to make room for longer captions.
-
-2003-03-04  Max Bowsher  <maxb@ukf.net>
-
-	* compress_gz.cc (compress_gz::construct):
-	Fix broken checkin dated 2002-07-03.
-
-2003-02-28  Max Bowsher  <maxb@ukf.net>
-
-	* main.cc (set_default_sec): Add logging.
-
-2003-02-28  Pierre Humblet  <pierre.humblet@ieee.org>
-
-	* main.cc (set_default_dacl): Replace with set_default_sec.
-	(set_default_sec): Attempt to change the default group to
-	Users or Administrators if it is None, in addition to setting
-	Everyone in the default DACL.
-	(main): Call set_default_sec instead of set_default_dacl.
-
-2003-01-31  Max Bowsher  <maxb@ukf.net>
-
-	* install.cc (install_one_source): Fix spacing in log message.
-
-2003-01-19  Max Bowsher  <maxb@ukf.net>
-
-	* resource.h (IDC_CHOOSE_KEEP): Define.
-	* res.rc (IDD_CHOOSE): Add radio button IDC_CHOOSE_KEEP.
-	* choose.cc (create_listview): Add IDC_CHOOSE_KEEP to ta[].
-	(ChooserPage::OnMessageCmd): Handle new IDC_CHOOSE_KEEP button.
-
-2003-01-15  Max Bowsher  <maxb@ukf.net>
-
-	* mkdir.cc [_CYGWIN_]: Implement what was pseudocode.
-	* io_stream.h [__CYGWIN__]: Don't typedef ssize_t.
-	* proppage.h: Include "win32.h" instead of <windows.h>.
-
-2003-01-15  Max Bowsher  <maxb@ukf.net>
-
-	* mount.cc [MAINTAINER_FEATURES]: Add --override-registry-name option.
-
-2002-12-11  Abraham Backus  <abraham@backus.com>
-
-	* nio-http.cc (NetIO_HTTP::NetIO_HTTP): Leave port out of Host header,
-	unless non-default.
-
-2002-12-11  Max Bowsher  <maxb@ukf.net>
-
-	* package_meta.cc: Change 'endl' to 'endLog' as appropriate.
-	* package_version.cc: Ditto.
-
-2002-09-22  Max Bowsher  <maxb@ukf.net>
-
-	* PickView.cc (pkg_headers): Rename column 'Category' to 'Categories'.
-	* package_meta.h (packagemeta::getReadableCategoryList): Declare.
-	* package_meta.cc (packagemeta::getReadableCategoryList): Implement.
-	* PickPackageLine.cc (PickPackageLine::paint): Change to use
-	getReadableCategoryList.
-	Fix x2 argument to IntersectClipRect.
-
-2002-11-25  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* window.h (Window::GetWindowRect): New method declaration.
-	(Window::GetClientRect): Ditto.
-	(Window::MoveWindow): Ditto.
-	(Window::ScreenToClient): Ditto.
-	* window.cc (REFLECTION_INFO): Remove.
-	(ReflectionInfo): Remove.
-	(Window::FirstWindowProcReflector): Use the WM_NCCREATE message instead
-	of the horrid REFLECTION_INFO hack to hook the Window instance to the
-	HWND instance.
-	(Window::WindowProcReflector): Use GetWindowLongPtr() now that it's
-	available.
-	(Window::Create): Change to use new WM_NCCREATE reflection procedure
-	above.
-	(Window::GetWindowRect): New method.
-	(Window::GetClientRect): New method.
-	(Window::MoveWindow): New method.
-	(Window::CenterWindow): Use new methods, also specify "::" for some non-
-	member functions with the same names.
-	(Window::ScreenToClient): New method.
-
-2002-11-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* AntiVirus.cc: Change the short option again! It's now 'A'.
-	* desktop.cc (etc_profile): Remove.
-	(make_etc_profile): Remove.
-	(uexists): Remove.
-	(make_passwd_group): Remove.
-	(do_desktop_setup): Don't call removed functions.
-
-2002-11-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fix my botched application of
-	Marcel's patch.
-
-2002-07-08  Marcel Telka  <marcel@telka.sk>
-
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fixed decoding of the FTP
-	reply (code 227) to the PASV command.
-
-2002-11-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::~IniDBBuilderPackage):
-	Sort the packages db once all the new packages have been added.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::~IniDBBuilderPackage):
-	Declare this.
-
-2002-11-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (ChooserPage::OnNext): Remove extracted comment.
-	* package_version.cc (processOneDependency): Return once selecting
-	a package (bugfix to prevous rework).
-	Log if the default trust fails the package specification.
-
-2002-11-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.h (packagemeta::logAllVersions): Declare.
-	(packagemeta::trustLabel): Ditto.
-	* choose.cc (ChooserPage::OnNext): Get each package to log all it's
-	versions.
-	* package_meta.cc (packagemeta::logAllVersions): Implement.
-	(packagemeta::trustLabel): Ditto.
-
-2002-11-25  Robert Collins  <rbtcollins@hotmail.com>
-
-	* AntiVirus.cc: Change 'd' to 'D' to fix command line conflict.
-
-2002-11-25  Robert Collins  <rbtcollins@hotmail.com>
-
-	* AntiVirus.cc: New file.
-	* AntiVirus.h: Ditto.
-	* LogFile.cc: Include AntiVirus.h for class definition.
-	(LogFile::exit): Trigger AntiVirus::AtExit().
-	* MakeFile.am(setup_SOURCES): Add AntiVirus files.
-	* autoload.c: Declare Service Control Manager related API's.
-	* main.cc: Include AntiVirus.h for class definition.
-	(main): Add the AntiVirus page in.
-	* res.rc: Define IDD_VIRUS.
-	* resource.h: Define IDD_VIRUS related control ID's.
-	* splash.h: Override OnNext.
-	* splash.cc: Only show AntiVirus page when one has been detected.
-	* source.cc: Ditto.
-
-2002-11-25  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_version.cc (DependencyProcessor): Create convenience class.
-	(select): Extract version selection method.
-	(processOneDependency): Check for a satisfactory trusted version
-	first.
-
-2002-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (main): Use the factory for LogFile.
-	* String++.cc: Update to use sstream.
-	(String::String): Use a ostringstream for libC++ 3.2.
-	* LogFile.h (LogFile): Make createLogFile static.
-
-2002-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* main.cc (main): Oops, pass LogSingleton a reference, not a pointer.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* Exception.h (Exception::what): Add throw() specification,
-	to agree with libstdc++-v3.
-	* Exception.cc (Exception::what): Ditto.
-	* IniDBBuilderPackage.h: Add 'std::' where needed.
-	* PickCategoryLine.h: Ditto.
-	* category.h: Ditto.
-	* package_db.h: Ditto.
-	* package_meta.h: Ditto.
-	* package_source.h: Ditto.
-	* package_version.h: Ditto.
-	* site.h: Ditto.
-	* win32.h: Define NOMINMAX before including <windows.h>.
-	* package_meta.cc: Add 'using namespace std;'.
-	(packagemeta::set_requirements): Remove default parameter values
-	from definition (gcc3 likes them only in declaration).
-	* package_version.cc: Add 'using namespace std;'.
-	(packageversion::set_requirements): Remove default parameter
-	values from definition (gcc3 likes them only in declaration).
-
-2002-11-10  Robert Collins <rbtcollins@hotmail.com>
-
-	* compress_bz.cc: Don't include bzlib.h directly, the compress_bz.h
-	header includes it.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* compress_bz.h: #undef small before including bzlib.h - if we are
-	going to hide the fact that we are _WIN32 from bzlib, then we need
-	to #undef small for it as well (bad windows.h clash).
-
-2002-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* localdir.cc: Update the extern LogFile to be a pointer.
-	(save_local_dir): Change . to -> for the above.
-	* main.cc (theFile): Change from an instance to a pointer.
-	(main): Change . to -> for the above.
-
-2002-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* LogFile.cc: use 'std::' where needed throughout.
-	(LogFile::createLogFile): Implement a factory for LogFile.
-	(LogFile::LogFile): Update for use with the factory, and to
-	handle the latest g++ library changes.
-	(LogFile::operator()): Ditto.
-	(LogFile::endEntry()): Ditto.
-	* LogFile.h: Ditto.
-	* LogSingleton.cc: Ditto.
-	* LogSingleton.h: Ditto.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* String++.h: Add 'std::' where needed.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* IniDBBuilderPackage.cc: Add 'using namespace std;'.
-	* IniParseFindVisitor.cc: Ditto.
-	* LogFile.cc: Ditto.
-	* LogSingleton.cc: Ditto.
-	* PickView.cc: Ditto.
-	* String++.cc: Ditto.
-	* choose.cc: Ditto.
-	* download.cc: Ditto.
-	* find.cc: Ditto.
-	* install.cc: Ditto.
-	* io_stream.cc: Ditto.
-	* io_stream_file.cc: Ditto.
-	* package_db.cc: Ditto.
-	* root.cc: Ditto.
-	* site.cc: Ditto.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* LogSingleton.h: Add 'std::' where needed.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* archive_tar_file.cc: Include <algorithm>.
-	Change min(a,b) to std::min(a,b)
-	* compress_bz.cc: Ditto.
-	* compress_gz.cc: Ditto.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* res.rc: Change a #-comment (invalid) to a //-comment.
-
-2002-11-04  Max Bowsher  <maxb@ukf.net>
-
-	* Makefile.am (%.o: %.rc): Make windres use $(CC) not hardcoded gcc.
-	(inilint_LDADD): Remove -lstd++.
-	(setup_LDADD): Ditto.
-
-2002-09-22  Max Bowsher  <maxb@ukf.net>
-
-	* IniDBBuilderPackage.cc: Update DEBUG code to current class
-	layout.
-
-2002-09-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.h: Add OnUnattended method.
-	* desktop.cc (DesktopSetupPage::OnInit): Allow fine grained
-	control via command line options.
-	(DesktopSetupPage::OnUnattended): Implement.
-	(DesktopSetupPage::OnMessageApp): Implement.
-	* desktop.h (DesktopSetupPage::OnUnattended): declare.
-	(DesktopSetupPage::OnMessageApp): Ditto.
-	* download.cc (do_download_thread): Support unattended mode.
-	* install.cc (do_install_thread): Ditto.
-	* localdir.h: Ditto.
-	* main.cc (main): Ditto.
-	* net.cc (NetPage::OnUnattended): Ditto.
-	* net.h (NetPage::OnUnattended): Declare.
-	* proppage.cc (PropertyPage::DialogProc): Support unattended mode.
-	* proppage.h (PropertyPage::OnUnattended): Declare.
-	* root.cc (RootPage::OnInit): Support unattended mode.
-	(RootPage::OnUnattended): Implement.
-	* root.h (RootPage::OnUnattended): Declare.
-	* site.cc (register_saved_site): Extract Method from get_saved_sites.
-	(get_saved_sites): Remove common code for adding a site.
-	(SitePage::OnInit): Support unattended mode.
-	(SitePage::OnUnattended): Implement.
-	* site.h (SitePage::OnUnattended): Declare.
-	* source.cc (SourcePage::OnActivate): Support unattended mode.
-	(SourcePage::OnUnattended): Implement.
-	* source.h (SourcePage::OnUnattended): Declare.
-	* splash.h (SplashPage::OnUnattended): Declare.
-	* state.cc (unattended_mode): Declare.
-	* state.h (unattended_mode): Declare.
-	* threebar.h (ThreeBarProgressPage::OnUnattended): New method.
-
-2002-09-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* res.rc: Commit Harry Johnston's dialog caption patch. From July.
-
-2002-07-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_version.cc (packageversion::sources): Implement this.
-	* download.cc (do_download_thread): Support multiple files per package.
-
-2002-07-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_version.h (packageversion::sources): Support multiple files in
-	a single package version.
-	* package_version.cc (_packageversion::accessible): Ditto.
-	(packageversion::source): Ditto.
-
-2002-07-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* iniparse.y: Implement support for multiple source files for a source
-	package.
-	* IniDBBuilder.h (IniDBBuilder::buildSourceFile): Ditto.
-	* IniDBBuilderPackage.h (IniDBBuilder::buildSourceFile): Ditto.
-	* IniDBBuilder.cc (IniDBBuilder::buildSourceFile): Ditto.
-	* IniDBBuilderPackage.cc (IniDBBuilder::buildSourceFile): Implement a
-	stub as preparation.
-
-2002-07-13  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickPackageLine.cc (PickPackageLine::click): Set requirements for
-	packages under all circumstances - slightly higher overheader, simpler
-	code.
-	* download.cc (do_download_thread): Correctly download source
-	packages.
-	* package_meta.cc (checkForInstalled): Remove.
-	(checkForUpgradeable): Ditto.
-	(checkForSatisfiable): Ditto.
-	(processOneDependency): Ditto.
-	(packagemeta::set_requirements): Move guts to packageversion.
-	* package_version.cc (checkForInstalled): Copied from package_meta.cc.
-	(checkForUpgradeable): Ditto.
-	(checkForSatisfiable): Ditto.
-	(processOneDependency): Ditto.
-	(packageversion::set_requirements): Ditto.
-	* package_version.h (packageversion::set_requirements): Declare.
-
-2002-07-13  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilder.cc (IniDBBuilder::buildBeginBuildDepends): Implement.
-	(IniDBBuilder::buildBeginBinary): Implement.
-	* IniDBBuilder.h (IniDBBuilder::buildBeginBuildDepends): Declare.
-	(IniDBBuilder::buildBeginBinary): Ditto.
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildBeginBuildDepends):
-	Implement.
-	(IniDBBuilderPackage::buildBeginBinary): Ditto.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::buildBeginBuildDepends):
-	Declare.
-	(IniDBBuilderPackage::buildBeginBinary): Ditto.
-	* inilex.l: Recognise Build-Depends-Indep, [,], >, < and remove
-	T_UNKNOWN.
-	* iniparse.y: Full support for parsing a debian Sources file in-line in
-	setup.ini.
-	* package_version.cc (packageversion::binaries): Implement.
-	* package_version.h (packageversion::binaries): Declare list of what
-	packages are created from a given source package.
-	(_packageversion::binaries): Ditto.
-
-2002-07-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* iniparse.y: Add basis for support for parsing a debian Sources file.
-	* inilex.l: Ditto.
-
-2002-07-09  Robert Collins  <rbtcollins@hotmail.com>
-
-	Change custom container code for packagedb::packages to STL containers
-	throughout.
-	* IniDBBuilderPackage.cc: Ditto.
-	* PickView.cc: Ditto.
-	* choose.cc: Ditto.
-	* desktop.cc: Ditto.
-	* download.cc: Ditto.
-	* install.cc: Ditto.
-	* package_db.cc: Ditto.
-	* package_db.h: Ditto.
-	* Makefile.am: Remove list.h references.
-	* list.h: Remove.
-
-2002-07-08  Max Bowsher  <maxb@ukf.net>
-
-	* PickView.cc (PickView::PickView): Set font of package list header to
-	the same as used in the rest of the package list.
-		
-2002-07-08  Robert Collins  <rbtcollins@hotmail.com>
-
-	* install.cc (NoReplaceOnReboot): New command line option to prevent
-	replacing in use files.
-	(install_one_source): Check the option and use it.
-	* README: Update TODO lists.
-
-2002-07-08  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickCategoryLine.cc: Change bucket to use STL container syntax
-	throughout.
-	(PickCategoryLine::paint): Use new Category type syntax.
-	* PickCategoryLine.h: Use STL vectors rather than custom containers
-	throughout.
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageCategory):
-	Use new add_category syntax.
-	* PickView.cc (PickView::insert_pkg): Use new Category type syntax.
-	(PickView::insert_category): Ditto.
-	(PickView::init_headers): Ditto.
-	* category.cc: Trim obsolete code.
-	* category.h: Replace interconnecting class with a typedef to
-	facilitate leveraging STL maps.
-	* choose.cc (fill_missing_category): Use updated pkg.add_category
-	syntax.
-	(default_trust): Use new Category type syntax.
-	(set_view_mode): Ditto.
-	(create_listview): Ditto.
-	* package_db.cc (categories): Ditto.
-	* package_db.h: Update headers list to include needed headers.
-	(packagedb::categories): Replace custom list with STL map.
-	* package_meta.cc: Use new Category type syntax throughout.
-	(packagemeta::add_category): Implement new syntax.
-	* package_meta.h: Remove commented out source.
-	(packagemeta::add_category): Update syntax to decouple interface from
-	packagedb.
-
-2002-07-06  Christopher Faylor  <cgf@redhat.com>
-
-	* site.cc (do_download_site_info_thread): Correct spelling error.
-
-2002-07-06  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickCategoryLine.h: Include required header list.h.
-	* PickPackageLine.cc (PickPackageLine::paint): Adjust to use STL
-	containers for listing of packages per category and vice verca.
-	* PickView.cc (PickView::insert_pkg): Ditto.
-	(PickView::insert_category): Ditto.
-	* String++.h (String::caseless): STL helper to allow trivial containers
-	of Strings with case insensitive comparisons.
-	* category.h: Adjust to use STL containers for listing of packages per
-	category and vice verca.
-	* choose.cc (fill_missing_category): Ditto.
-	(default_trust): Ditto.
-	(ChooserPage::OnNext): Ditto.
-	* package_meta.cc (CategoryPackage::~CategoryPackage): Remove.
-	(packagemeta::packagemeta): Adjust for new category list name.
-	(packagemeta::~packagemeta): Adjust to use STL containers for listing
-	of packages per category and vice verca.
-	(packagemeta::set_action): Ditto.
-	* package_meta.h (CategoryPackage): Remove.
-	(packagemeta): Adjust to use STL containers for listing of packages per
-	category and vice verca.
-
-2002-07-05  Robert Collins  <rbtcollins@hotmail.com>
-
-	* io_stream.cc: Use STL containers rather than custom ones.
-	(io_stream::registerProvider): Ditto.
-	(findProvider): Ditto.
-
-2002-07-05  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
-	Use STL collections for download site collections.
-	(IniDBBuilderPackage::add_correct_version): Ditto.
-	(IniDBBuilderPackage::process_src): Ditto.
-	* PickPackageLine.cc (PickPackageLine::click): Use the packageversion
-	accessible() call to abstract package availability.
-	* choose.cc (scanAVersion): Use STL collections for download site
-	collections.
-	* download.cc (check_for_cached): Ditto.
-	(download_one): Ditto.
-	* package_meta.cc (packagemeta::set_action): Use the packageversion
-	accessible() call to abstract package availability.
-	* package_source.h: Use STL containers rather than custom containers.
-	(site): Create a == operator to allow STL container use.
-	(packagesource::sites): Use STL containers rather than custom
-	containers.
-	* package_version.cc (_packageversion::accessible): Use STL containers
-	for download site containers.
-
-2002-07-05  Robert Collins  <rbtcollins@hotmail.com>
-
-	* LogFile.cc: Use STL containers rather than custom containers.
-	(filedef): Create == and < operators for STL use.
-	(files): Convert to an STL set.
-	(LogFile::setFile): Use STL operations on files.
-	(LogFile::exit): Ditto.
-
-2002-07-05  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ini.cc (do_remote_ini): Use STL collection for site collection.
-	* site.cc: Include site.h first to ensure it's parsable standalone.
-	Use STL algorithms.
-	(site_list): Convert to an STL container.
-	(all_site_list): Ditto.
-	(site_list_type::site_list_type): Implement copy constructor.
-	(site_list_type::operator=): Implement assignment operator.
-	(site_list_type::operator ==): Implement.
-	(site_list_type::operator <): Ditto.
-	(save_dialog): Use STL collection calls for site collection.
-	(save_site_url): Ditto.
-	(get_site_list): Ditto.
-	(get_saved_sites): Ditto.
-	(do_download_site_info_thread): Ditto.
-	(SitePage::OnNext): Ditto.
-	(SitePage::PopulateListBox): Ditto.
-	(SitePage::OnMessageCmd): Ditto.
-	* site.h: Use STL vectors instead of custom code.
-	(site_list_type::site_list_type): Declare.
-	(site_list_type::operator=): Ditto.
-	(site_list_type::operator ==): Ditto.
-	(site_list_type::operator !=): Ditto.
-	(site_list_type::operator <): Ditto.
-	(site_list_type::operator <=): Ditto.
-	(site_list_type::operator >): Ditto.
-	(site_list_type::operator >=): Ditto.
-	(site_list): Convert to an STL container.
-	(all_site_list): Ditto.
-
-2002-07-05  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (default_trust): Check package accessibility before
-	triggering an install. (Suggested by Pavel).
-
-2002-07-03  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* compress_gz.cc (compress_gz::construct): Always initialize key members
-	to ensure the destructor does the right thing.
-
-2002-07-03  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* filemanip.cc (parse_filename): Do not try to parse empty
-	strings (filenames).
-	* package_db.cc (packagedb::packagedb): For each line check if sscanf()
-	extracted good package name and filename.
-
-2002-07-03  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (packagemeta::set_requirements): Automatically select
-	version of dependent packages that satisfies the requirements.
-	Use processOneDependency to trigger the install of those packages.
-	(checkForInstalled): Check that the package remains installed.
-	(processOneDependency): Helper function for dependent packages.
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackage): Add more
-	debug information.
-	Clear out all current state on new packages.
-	(IniDBBuilderPackage::add_correct_version): Copy the dependency list
-	across.
-
-2002-07-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (inilint_SOURCES): Add PackageSpecification sources.
-	nb: inilint is still incomplete, as the packageversion code is not
-	ready for database-less linking.
-	* site.cc (get_site_list): When the same site is reentered by the user
-	replace the old one. (Suggested by John Marshall).
-
-2002-07-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
-	Clear out package selections when generating implicit source packages.
-	* PackageSpecification.cc (PackageSpecification::satisfies): Implement.
-	(PackageSpecification::_operators::satisfies): Implement.
-	* PackageSpecification.h (PackageSpecification::_operators::satisfies):
-	Worker function for testing versions.
-
-2002-07-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilder.cc (IniDBBuilder::buildPackageRequirement): Remove.
-	* IniDBBuilder.h (IniDBBuilder::buildPackageRequirement): Ditto.
-	* IniDBBuilderPackage.cc: Use the STL algorithms.
-	Change cpv to cbpv throughout. Adjust -> to ., and use the new accessor
-	functions for the same variable throughout.
-	(IniDBBuilderPackage::IniDBBuilderPackage): Initialise new members.
-	(IniDBBuilderPackage::buildPackage): Use new cygpackage syntax,
-	and set an empty source package.
-	(IniDBBuilderPackage::buildPackageInstall): Use the new source member
-	to record an install package.
-	(IniDBBuilderPackage::buildPackageSource): Move source package logic
-	out from process_src, as it now occurs at separate times.
-	(IniDBBuilderPackage::buildPackageRequirement): Remove.
-	(IniDBBuilderPackage::buildSourceName): Use renamed package
-	specifiation accessor for clarity.
-	(IniDBBuilderPackage::buildSourceNameVersion): Ditto.
-	(IniDBBuilderPackage::add_correct_version): Use STL iterators rather
-	than custom code.
-	Remove source package references.
-	(IniDBBuilderPackage::process_src): Remove source package code as it's
-	now handled separately.
-	Set Path information before merging versions, to prevent dangling
-	pointers.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::buildPackageRequirement):
-	Remove.
-	(IniDBBuilderPackage::cpv): Remove.
-	(IniDBBuilderPackage::cbpv): New generic binary working variable.
-	(IniDBBuilderPackage::cspv): Ditto, but for source packages.
-	(IniDBBuilderPackage::csp): Source package variable for disjoint
-	source packages.
-	* Makefile.am (AM_CFLAGS): Remove -Winline to allow stl set code
-	to compile. If it compiles cleanly in gcc 3.1, then reinstate.
-	* PickPackageLine.cc: Adjust packageversion accessors to the new
-	reference calls. (i.e. -> to .) throughout.
-	(PickPackageLine::paint): Use accessible() for clarity.
-	Use new split out source package logic.
-	(PickPackageLine::click): Ditto.
-	* PickView.cc (PickView::init_headers): Adjust packageversion accessors
-	to the new reference calls. (i.e. -> to .) throughout.
-	Use new split out source package logic.
-	* choose.cc: Don't depend on a specific package type.
-	Adjust packageversion accessors to the new reference calls. (i.e. -> to
-	.) throughout.
-	(set_existence): Use accessible () for clarity.
-	(default_trust): Simplify a little.
-	(scanAVersion): Factored out code from scan_downloaded_files for
-	clarity.
-	(scan_downloaded_files): Factor out inner loop for clarity.
-	(ChooserPage::OnNext): Don't dump the dependency list,
-	it's parsing is robust now!.
-	* cygpackage.cc (createInstance): Use a factory method to create new
-	objects.
-	(cygpackage::cygpackage): Make this private for use by the factory.
-	(cygpackage::setCanonicalVersion): Renamed from set_canonical_version.
-	Remove key usage as it's obsolete.
-	* cygpackage.h (cygpackage): Inherit from _packageversion, not
-	packageversion.
-	(cygpackage::createInstance): New factory.
-	(cygpackage::cygpackage): Make private.
-	* desktop.cc (make_passwd_group): Use new packageversion reference.
-	* download.cc (do_download_thread): Use changeRequested() for clarity.
-	Use new packageversion reference calls.
-	* iniparse.y (REQUIRES): Reuse the packageList code and dump the one-off
-	requires code.
-	* install.cc: Adjust -> to ., and use the new accessor functions for
-	packageversion throughout.
-	* package_db.cc: Adjust -> to ., and use the new accessor functions for
-	packageversion throughout.
-	(packagedb::packagedb): Use the new cygpackage factory.
-	(packagedb::flush): Leverage String to remove buffer overflow chance in
-	sprintf.
-	(packagedb::findBinary): Find a binary meta package that has a version
-	matching a given specification.
-	(packagedb::findSource): Ditto, but for source.
-	* package_db.h (packagedb::findBinary): Declare.
-	(packagedb::findSource): Ditto.
-	* package_meta.cc: Adjust packageversion accessors to the new
-	reference calls. (i.e. -> to .) throughout.
-	Include the package_meta header first to ensure it parses standalone.
-	Use the STL algorithms.
-	(packagemeta::packagemeta): Create a copy constructor to allowing
-	cloning binary package metadata to source package metadata.
-	(packagemeta::~packagemeta): Use the STL coleltion code rather than
-	custom	collection code.
-	(packagemeta::add_version): Ditto.
-	(packagemeta::set_installed): Ditto.
-	(packagemeta::SDesc): Ditto.
-	(hasSDesc): Helper function for find_if.
-	(checkForInstalled): Ditto.
-	(checkForUpgradeable): Ditto.
-	(checkForSatisfiable): Ditto.
-	(packagemeta::action_caption): Update for split out source packages.
-	(packagemeta::set_action): Ditto.
-	(packagemeta::set_requirements): Support multi-valued dependency
-	lists - a|b & c|d - with versioned package specifications.
-	(packagemeta::accessible): Helper member to improve abstraction.
-	(packagemeta::sourceAccessible): Ditto.
-	* package_meta.h: Adjust packageversion accessors to the new
-	reference calls. (i.e. "->" to "." and"*" to "" ) throughout.
-	(packagemeta::packagemeta): Declare copy constructor.
-	Remove self initialising members.
-	(packagemeta::set_action): Update parameters for new packageversion.
-	(packagemeta::trustp): Ditto.
-	(packagemeta::versions): Becomes an STL set.
-	* package_source.h (packagesource::Cached): Const correctness change.
-	* package_version.cc: Rewrite the packageversion interface to remove
-	the cygpackage nonvirtual members, and provide a copy by value,
-	pointer semantics reference counting wrapper class to ease use and
-	comparison of packageversions.
-	Change existing packageversion class to _packageversion throughout.
-	(_defaultversion): A trivial concrete class to prevent specialcasing
-	the default constructor for packageversion;
-	(packageversion::packageversion): Implement.
-	(packageversion::~packageversion): Ditto.
-	(packageversion::operator=): Ditto.
-	(packageversion::operator !): Ditto.
-	(packageversion::operator bool): Ditto.
-	(packageversion::operator ==): Ditto.
-	(packageversion::operator !=): Ditto.
-	(packageversion::operator <): Ditto.
-	(packageversion::Name): Ditto.
-	(packageversion::Canonical_version): Ditto.
-	(packageversion::setCanonicalVersion): Ditto.
-	(packageversion::getfirstfile): Ditto.
-	(packageversion::getnextfile): Ditto.
-	(packageversion::SDesc): Ditto.
-	(packageversion::set_sdesc): Ditto.
-	(packageversion::LDesc): Ditto.
-	(packageversion::set_ldesc): Ditto.
-	(packageversion::sourcePackage): Ditto.
-	(packageversion::sourcePackageSpecification): Ditto.
-	(packageversion::setSourcePackageSpecification): Ditto.
-	(packageversion::depends): Ditto.
-	(packageversion::predepends): Ditto.
-	(packageversion::recommends): Ditto.
-	(packageversion::suggests): Ditto.
-	(packageversion::replaces): Ditto.
-	(packageversion::conflicts): Ditto.
-	(packageversion::provides): Ditto.
-	(packageversion::picked): Ditto.
-	(packageversion::pick): Ditto.
-	(packageversion::changeRequested): Ditto.
-	(packageversion::uninstall): Ditto.
-	(packageversion::source): Ditto.
-	(packageversion::accessible): Ditto.
-	(_packageversion::sourcePackage): Ditto.
-	(_packageversion::accessible): Ditto.
-	(_packageversion::changeRequested): Ditto.
-	* package_version.h: Rewrite the packageversion interface to remove
-	the cygpackage nonvirtual members, and provide a copy by value,
-	pointer semantics reference counting wrapper class to ease use and
-	comparison of packageversions.
-	Change existing packageversion class to _packageversion throughout.
-	(Dependency): Remove.
-	(packageversion): New wrapper class.
-	(_packageversion): Renamed from packageversion.
-	(_packageversion::setCanonicalVersion): New method.
-	(_packageversion::sourcePackage): Ditto.
-	(_packageversion::sourcePackageSpecification): Ditto.
-	(_packageversion::setSourcePackageSpecification): Ditto.
-	(_packageversion::changeRequested): Ditto.
-	(_packageversion::bin): Rename to source.
-	(_packageversion::src): Remove.
-	(_packageversion::accessible): New method.
-	(_packageversion::references): Allow reference counting.
-	(_packageversion::sourceVersion): Cached the best-match source
-	package version.
-
-2002-06-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* compress_bz.h (compress_bz::position): Track how much has been read.
-	* compress_bz.cc (compress_bz::compress_bz): And initialise it.
-	(compress_bz::read): Track amount read by the client.
-	(compress_bz::tell): And report it when asked.
-
-2002-06-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (snapshot): Automate snapshot creation some more.
-
-2002-06-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* msg.cc (msg): Use vsnprintf to avoid buffer overflows.
-	(mbox): Ditto.
-	* ini.cc (fprintf): Ditto.
-	* log.cc (log): Ditto.
-	* package_db.cc (packagedb::sourcePackages): Split out source packages
-	from binary packages.
-	* package_db.h: Ditto.
-
-2002-06-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PackageSpecification.h: New file. Abstracts the ability to refer
-	to another package, by name, or name and version.
-	* PackageSpecification.cc: Ditto.
-	* IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Simplify.
-	(IniDBBuilder::buildPackageSource): Ditto.
-	(IniDBBuilder::buildBeginDepends): New method for versioned
-	dependencies.
-	(IniDBBuilder::buildBeginPreDepends): Likewise, for dependencies to be
-	satisfied before pre-install.
-	(IniDBBuilder::buildPriority): New method, for getting the package
-	Priority.
-	(IniDBBuilder::buildInstalledSize): How much disk space does it need?
-	(IniDBBuilder::buildMaintainer): Who maintains the package?
-	(IniDBBuilder::buildArchitecture): What platform is it for?
-	(IniDBBuilder::buildInstallSize): How big is the binary download?
-	(IniDBBuilder::buildInstallMD5): Whats the MD5 on the binary?
-	(IniDBBuilder::buildSourceMD5): Whats the MD5 on the source package?
-	(IniDBBuilder::buildBeginRecommends): What other packages are
-	recommended with this one?
-	(IniDBBuilder::buildBeginSuggests): And suggested?
-	(IniDBBuilder::buildBeginReplaces): What packages does this replace?
-	(IniDBBuilder::buildBeginConflicts): And collide with?
-	(IniDBBuilder::buildBeginProvides): What virtual packages (or obsolete
-	package names) does this provide?
-	(IniDBBuilder::buildDescription): Grab a multi line description one
-	line at a time.
-	(IniDBBuilder::buildSourceName): What source package should be used to
-	install the source for this binary package?
-	(IniDBBuilder::buildSourceNameVersion): Is a specific version needed?
-	(IniDBBuilder::buildPackageListAndNode): Add another AND clause to a
-	list of package specifications.
-	(IniDBBuilder::buildPackageListOrNode): Add another OR clause.
-	(IniDBBuilder::buildPackageListOperator): Add a versioning operator
-	to the current specification.
-	(IniDBBuilder::buildPackageListOperatorVersion): What version does the
-	operator act on?
-	* IniDBBuilder.h: Declare all the IniDBBuilder.cc changes.
-	* IniDBBuilderPackage.cc: As for IniDBBuilder.cc.
-	(IniDBBuilderPackage::IniDBBuilderPackage): Iniitialize new members.
-	(IniDBBuilderPackage::process_src): Streamline and split out
-	functionality.
-	(IniDBBuilderPackage::setSourceSize): From process_src.
-	* IniDBBuilderPackage.h: Declare the IniDBBuilderPackage.cc changes.
-	(IniDBBuilderPackage::currentSpec): Track the in-progress specifiation.
-	(IniDBBuilderPackage::currentOrList): Track the current Or list.
-	(IniDBBuilderPackage::currentAndList): Track the current And list.
-	* IniParseFeedback.cc (IniParseFeedback::progress): Provide completion
-	progress on parsing.
-	(IniParseFeedback::iniName): Tell what ini filename we are currently
-	processing.
-	* IniParseFeedback.h: Declare IniParseFeedback.cc changes.
-	* IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
-	Make the feedback object non-const to allow mutating methods which are
-	needed when the object has state.
-	(IniParseFindVisitor::visitFile): Tell the caller the name of each
-	.ini found.
-	Initialise the parser with the feedback object to allow it to tell of
-	progress.
-	* IniParseFindVisitor.h: Declare IniParseFindVisitor.cc changes.
-	* Makefile.am (inilinst_SOURCES): Add more requisite classes.
-	(setup_SOURCES): Add the new PackageSpecification sources.
-	* ScanFindVisitor.cc (ScanFindVisitor::visitFile): Use the new
-	builder syntax to setup binary package details.
-	* choose.cc: Use the LogSingleton calls throughout.
-	* configure.in: Create the INILINT substitution correctly for recent
-	autotool configurations.
-	* cygpackage.cc (cygpackage::getfirstfile): Return an empty String
-	rather than a string built from an int. Thanks to Pavel Tsekov for
-	identifying the bug.
-	(cygpackage::getnextfile): Ditto.
-	* download.cc: Use LogSIngletion calls throughout.
-	(validateCachedPackage): A refactoring of the
-	check_for_cached code to eliminate duplciation.
-	(check_for_cached): Use validateCachedPackage to check packages.
-	* ini.cc (GuiParseFeedback): Provide gui feedback on ini name and
-	parsing progress.
-	(do_remote_ini): Ditto.
-	* ini.h (ini_init): Pass a IniParseFeedback to the parser, to allow
-	progress reporting.
-	* inilex.l: Identify new symbols - operators, and multi line plain text.
-	Releases files.
-	* inilintmain.cc (show_help): Provide basic infomation on inilint.
-	* iniparse.y: Adjust for the new builder syntax, and process debian
-	Release files.
-	* io_stream_file.cc: Always include mkdir.h.
-	* list.h: Factor index location into a private routine.
-	(list::findindex): Implement this.
-	* mkdir.cc (mkdir_p): Make the use of WIN32 code conditional on mingw
-	builds. NB: This breaks cygwin build functionality still.
-	* package_meta.cc: Use the LogSingleton calls throughout.
-	(packagemeta::set_requirements): Adjust for object changes in
-	dependencies.
-	* package_meta.h (packagemeta::packagemeta): Initialise new members.
-	(packagemeta::architecture): What platform does this package run on?
-	This may need to move in the future to a per packagefile object.
-	(packagemeta::priority): What priority does this package have?
-	* package_source.h (packagesource::packagesource): Initialise new
-	members.
-	(packagesource::installedSize): How much space does the package need?
-	(packagesource::setInstalledSize): Tell the amount.
-	(packagesource::_installedSize): And store it.
-	* package_version.cc (packageversion::sourcePackage): return the
-	source package.
-	(packageversion::setSourcePackage): And set it.
-	* package_version.h: Declare the package_version.cc changes.
-	(packageversion::depends): New package specification AND list.
-	(packageversion::predepends): Ditto.
-	(packageversion::recommends): Ditto.
-	(packageversion::suggests): Ditto.
-	(packageversion::replaces): Ditto.
-	(packageversion::conflicts): Ditto.
-	(packageversion::provides): Ditto.
-	(packageversion::sourcePackage): What source package is needed?
-	* threebar.cc (ThreeBarProgressPage::SetText4): Set the label beside
-	the bottom bar.
-	* threebar.h: Declare the threebar.cc change.
-
-2002-06-27  John Marshall  <johnm@falch.net>
-
-	* res.rc (SETUPINI_MISSING): Make trailing spaces visible.
-	* site.cc (SitePage::OnMessageCmd): Ditto
-
-2002-06-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* nio-ie5.cc (NetIO_IE5::NetIO_IE): Allow cached data.
-
-2002-06-15  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (packagemeta::set_action): When installing packages
-	with no binaries, choose the source package.
-
-2002-06-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniParseFindVisitor (IniParseFindVisitor::visitFile): Apply Max
-	Bowshers fix for the crash with a root level setup.ini.
-	* README: Update todos.
-
-2002-05-26 Ralf Habacker  <ralf.habacker@freenet.de>
-
-	* archive_tar.cc (archive_tar::next_file_name()): fixed broken
-	GNU long name extension support.
-
-2002-05-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Don't
-	unescape 0 length strings.
-
-2002-05-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (packagemeta::set_action): Don't allow reinstall
-	when local with no cached file, and install the default source if the
-	default version has no binary.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilderPackage.cc (IniDBBuilderPackage::IniDBBuilderPackage): New
-	method.
-	(IniDBBuilderPackage::buildVersion): Provide a warning when a newer
-	setup version created the ini file.
-	* IniDBBuilderPackage.h (IniDBBuilderPackage::IniDBBuilderPackage): New
-	method.
-	* IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use the new
-	feedback strategy.
-	* IniParseFindVisitor.h (IniParseFindVisitor::IniParseFindVisitor):
-	Require a feedback strategy.
-	* Makefile.am (setup_SOURCES): Add IniParseFeedback sources.
-	* Makefile.in: Regenerate.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* io_stream_file.cc (io_stream_file::remove): Use the SetFileAttributes
-	trick to delete read only files.
-	* io_stream_cygfile.cc (io_stream_cygfile::remove): Use file:// to
-	remove files.
-	* Makefile.am (release): Tweak to be more helpful.
-	* Makefile.in: Regenerate.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (release): Tweak to be more helpful.
-	* Makefile.in: Regenerate.
-		
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (release): Tweak to be more helpful.
-	* Makefile.in: Regenerate.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (scan_downloaded_files): When a non-installed version
-	has neither bin nor src cached files for local installs,
-	remove the version from availability.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ini.cc (do_remote_ini): Save uncompressed ini's correctly.
-
-2002-05-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* rsync: New support library, contains librsync. This is not (yet)
-	rsync interoperable.
-	* configure.in: --with-rsync to enable rsync support. (Not complete).
-	* Makefile.am: Enable building with rsync.
-	* Makefile.in: Regenerate.
-	* configure: Ditto.
-	* IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Pass the md5 as
-	an array.
-	(IniDBBuilder::buildPackageSource): Ditto.
-	* IniDBBuilder.h: Ditto.
-	* IniDBBuilderPackage.cc: Ditto.
-	* IniDBBuilderPackage.h: Ditto.
-	* FindVisitor.cc: New file.
-	* FindVisitor.h: New file, interface for visiting a file system
-	aggregate.
-	* IniParseFindVisitor.cc: New file.
-	* IniParseFindVisitor.h: New file, concrete FindVisitor that parses
-	found setup.ini's.
-	* README: Update TODO's.
-	* String++.cc (String::String): New constructor for <string> inter-
-	operability.
-	(String::substr): New method.
-	* String++.h: Ditto.
-	* choose.cc (scan2): Remove.
-	(scan_downloaded_files): Simplify.
-	* dialog.h: Include parsing pre-requirements.
-	* download.cc (check_for_cached): Fullname was used incorrectly - fix.
-	* filemanip.cc (parse_filename): -src packages where incorrectly parsed.
-	* find.cc: Rewrite. Now uses a Visitor pattern and is re-entrant.
-	* find.h: Ditto.
-	* fromcwd.cc: Remove unneeded includes.
-	(is_test_version): Remove.
-	(found_file): Remove.
-	(SetupFindVisitor): Trivial visitor to detect setup.ini's.
-	(found_ini): Remove.
-	(do_fromcwd): Remove commented code that has be replaced elsewhere.
-	* ini.cc (local_ini): Remove.
-	(findBuilder): Remove.
-	(find_routine): Remove.
-	(do_local_ini): Use new IniParseFindVisitor.
-	* iniparse.y: Typecase MD5 arrays, as we know they are allocated as
-	unsigned char.
-	* postinstall.cc: Remove non-core includes.
-	(run_script_in_postinstall): Remove.
-	(RunFindVisitor): Trivial Visitor, runs each found script.
-	(do_postinstall): Use new find syntax.
-
-2002-05-14  Christopher Faylor  <cgf@redhat.com>
-
-	* ini.cc (find_routine): Don't clear buffer it it's NULL.
-
-2002-05-14  Christopher Faylor  <cgf@redhat.com>
-
-	* filemanip.h (trail): Declare.
-	* filemanip.cc (trail): New function.
-	(find_tar_ext): Use trail() instead of strstr().
-	* fromcwd.cc (check_ini): Ditto.
-	* ini.cc (find_routine): Ditto.  Don't tack local_dir to path since it
-	should now be fully qualified.  Set ini_filename.  Reset error_buf and
-	error_count for any subsequent ini file parsing.
-	(ini_filename): New static variable for parse error reporting.
-	(yyerror): Use full path of setup.ini in error message.  Subtract one
-	from line number if at bol.
-	* find.cc (found_part): Eliminate.
-	(find_sub): Call for_each with full path found rather than just file
-	component.
-	(find): Don't calculate found_part.
-	* inilex.l (ini_init): Flush input buffer and reset line number.
-	(yybol): New function.  Exports YY_AT_BOL.
-	* iniparse.y: Increase stack depth to allow more tokens to be processed.
-	(yyparse): Remove newline from error condition to allow subsequent
-	per-line error processing to proceed normally.
-
-2002-05-14  Christopher Faylor  <cgf@redhat.com>
-
-	* find.cc (find_sub): Be more defensive in preserving trailing parts of
-	components when doing recursive directory searches or calling user
-	supplied for_each().
-	* ini.cc (find_routine): Don't assume that any path name with
-	"setup.ini" in it is actually a setup.ini file.  Only honor trailing
-	components.  Copy path argument to temporary storage when unescaping
-	to prevent nuking of argument.
-
-2002-05-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* CONTRIBUTORS: New file.
-
-2002-04-02  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* choose.cc: Run indent.
-	(nextbutton): Remove static variable.
-	(default_trust): Remove use of nextbutton.
-	(set_view_mode): Ditto.
-	(create_listview): Add IDC_CHOOSE_PREV and IDC_CHOOSE_NEXT to ta[] so
-	rbset() sets the prev/next/curr radio buttons properly.
-	(dialog_cmd): Delete function.
-	(dialog_proc): Delete function.  Move WM_INITDIALOG functionality to
-	ChooserPage::OnInit.
-	(do_choose): Delete function.  Move pre-DialogBox() code to
-	ChooserPage::OnInit(), post-DialogBox() code to	ChooserPage::OnNext.
-	(WM_APP_START_CHOOSE): Remove define.
-	(WM_APP_CHOOSE_IS_FINISHED): Remove define.
-	(do_choose_thread): Delete function.
-	(ChooserPage::OnActivate): Delete method.
-	(ChooserPage::OnMessageApp): Delete method.
-	(ChooserPage::OnInit): New method.
-	(ChooserPage::OnNext): New method.
-	(ChooserPage::OnBack): New method.
-	(ChooserPage::OnMessageCmd): New method.
-	* choose.h: Run indent.
-	(ChooserPage::OnMessageApp): Delete declaration.
-	(ChooserPage::OnActivate): Ditto.
-	(ChooserPage::OnMessageCmd): New declaration.
-	(ChooserPage::OnInit): Ditto.
-	(ChooserPage::OnNext): Ditto.
-	(ChooserPage::OnBack): Ditto.
-	* desktop.cc (DesktopSetupPage::OnBack): Replace use of IDD_CHOOSER
-	with IDD_CHOOSE.
-	* fromcwd.cc (do_fromcwd): Replace use of IDD_CHOOSER with IDD_CHOOSE.
-	* ini.cc (do_ini_thread): Replace use of IDD_CHOOSER with IDD_CHOOSE.
-	* res.rc (IDD_CHOOSE): Remove dialog template.
-	(IDD_CHOOSER): Alter dialog template to fit wizard size and format.
-
-2002-05-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* LogFile.cc (endLog): Work around an apparent libg++-3 bug causing
-	corrupt log file entries.
-	* geturl.cc: Convert to the new LogSingleton logging.
-
-2002-05-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ini.cc (do_remote_ini): Use setup.bz2 if it exists in preference to
-	setup.ini.
-
-2002-05-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* geturl.h: Declare getUrlToStream.
-	* geturl.cc (getUrlToStream):  New function.
-	(get_url_to_membuf): Refactor to use getUrlToStream.
-
-2002-05-11  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am: Add a release target to automate some of the routine
-	work.
-	* Makefile.in: Regenerate.
-
-2002-05-11  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (scan_downloaded_files): On local installs remove all
-	mirror sites if no cached copy of a package is found.
-
-2002-05-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in: Regenerate.
-	* iniparse.y: Use left recursion, not right in the lines rule to
-	avoid stack overflows.
-	* README: Update TODO's.
-	* io_stream_file.cc: Native builds need to include sys/stat.h
-
-2002-05-06  John Marshall  <jmarshall@acm.org>
-
-	* site.cc (SitePage::OnMessageCmd): recalculate navigation
-	button activation when "Add" is pressed.
-	(SitePage::CheckControlsAndDisableAccordingly): tweak comment.
-
-2002-05-07 Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (inlint_SOURCES): Add conditional objects to inilint
-	depending on platform.
-	Add file:// support.
-	* configure.in: Set conditional MINGWTARGET if compiling against mingw
-	libraries.
-	* Makefile.in: Regenerate.
-	* configure: Ditto.
-	* io_stream_file.cc: Only use win32 calls when building for mingw.
-
-2002-05-05 Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (noinst_PROGRAMS): Make inilint configurable.
-	* configure.in: Ditto.
-	Fix incorrect header checking syntax.
-	* aclocal.m4: Regenerate.
-	* configure: Regenerate.
-	* Makefile.in: Regenerate.
-	* io_stream.cc: Remove platform specific and provider specific code.
-	(io_stream::registerProvider): New method, registers a Url provider with
-	the io_stream code.
-	Make all methods consistently throw invalid_argument exceptions when
-	a provider that is requested is not present.
-	(findProvider): New private function, finds a provider.
-	* io_stream.h: Declare io_stream::registerProvider.
-	* io_stream_cygfile.cc: Create a Provider class to register with
-	io_stream.cc.
-	* io_stream_file.cc: Ditto.
-	* archive.cc: Remove unneeded includes.
-	* archive_tar.cc: Remove unneeded includes.
-	* archive_tar.h: Add required include.
-	* archive_tar_file.cc: Remove unneded includes.
-	* choose.cc: Remove unneeded includes:
-
-2002-05-04 Robert Collins  <rbtcollins@hotmail.com>
-
-	* io_stream.cc: Use the new log interface thruout.
-
-2002-05-04 Robert Collins  <rbtcollins@hotmail.com>
-
-	* log.cc (log): Reimplement via LogSingleton.
-	(log_save): Remove.
-	(exit_setup): Remove.
-	* log.h (log_save): Remove.
-	(exit_setup): Remove.
-	* LogSingleton.cc: New file.
-	* LogSingleton.h: New file.
-	* LogFile.cc: New file.
-	* LogFile.h: New file.
-	* Makefile.am (inilint_SOURCES): Add the new log interface.
-	(setup_SOURCES): Add the new log interface and the concrete File
-	implementation.
-	* Makefile.in: Regenerate.
-	* archive.cc: Use the new log interface thruout.
-	* archive_tar.cc: Ditto.
-	* main.cc: Ditto.
-	* dialog.cc (fatal): Use the new log interface.
-	* ini.cc (do_ini_thread): Use the log interface to exit.
-	* isntall.cc (do_install_thread): Ditto.
-	* netio.cc (auth_cmd): Ditto.
-	* msg.cc (fatal): Ditto.
-	* localdir.cc (save_local_dir): Save to different files depending on
-	the mode, and if a root dir exists.
-
-2002-05-04 Robert Collins  <rbtcollins@hotmail.com>
-
-	* IniDBBuilder.cc: New file.
-	* IniDBBuilder.h: New file.
-	* IniDBBuilderPackage.cc: New file.
-	* IniDBBuilderPackage.h: New file.
-	* PackageTrust.h: New file.
-	* IniState.h: Remove, wasn't thought out well enough.
-	* Makefile.am (inilint_SOURCES): Add more requirements.
-	(setup_SOURCES): Add new Builder base and concrete classes.
-	* Makefile.in: Regenerate.
-	* String++.cc (String::String): Implement int contructor.
-	* String++.h (String): Declare int constructor.
-	* archive_tar.cc (archive_tar::next_file_name): Return String() when
-	no filename exists.
-	* archive_tar.h (archive_tar_file): Remove get_next_filename method,
-	it's not needed.
-	* ini.cc: Replace IniState wuth IniDBBuilderPacakge.
-	(find_routine): Use new IniDBBuilder to configure the parser.
-	(do_local_ini): Ditto.
-	(do_remote_ini): Ditto.
-	* ini.h: Use IniDBBuilder to initialise parsing.
-	* inilex.l (MD5): Parse the MD5 string correctly, we had the nibbles
-	swapped.
-	(ini_init): Use an IniDBBuilder rather than static variables.
-	* iniparse.y: Hand off all the object creation to a builder, rather
-	than hardcoding the behaviour. This allows run-time configured
-	behaviour.
-	* io_stream_cygfile.h (io_stream_cygfile): Remove get_next_filename
-	method, it's not needed.
-	* io_stream_file.h (io_stream_file): Ditto.
-	* mount.cc (cygpath): Return String() for missing mounts.
-	* package_meta.cc (packagemeta::SDesc): Return String() for blank
-	descriptions.
-	* package_meta.h (trusts): Remove - replaced by PackageTrust.h.
-	(packagemeta::packagemeta): Fix incorrect syntax in String constructor
-	usage.
-	* cygpackage.cc (cygpackage::cygpackage): Fix incorrect syntax in
-	String constructor usage.
-	* site.h (site_list_type): Ditto.
-
-2002-05-03 Robert Collins  <rbtcollins@hotmail.com>
-
-	* String++.h: Declare a << operator that accepts String objects.
-	* String++.cc: We need iostream for..
-	(operator <<): this. Provide a << operator that accepts String objects.
-	* ini.cc (yyerror): Remove the "C" classifier - it's not needed.
-	Change from vargs to a String parameter.
-	* inilintmail.cc: Remove the gui related headers.
-	(yyerror): Implement this for parsing.
-	* iniparse.y: Use the new yyerror syntax.
-
-2002-05-03 Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am: Add IniState.h.
-	* Makefile.in: Regenerate.
-	* IniState.h: New file.
-	* choose.cc: Don't include ini.h - it's not needed.
-	* configure: Regenerate.
-	* desktop.cc: Don't include ini.h - it's not needed.
-	* download.cc: Ditto.
-	* fromcwd.cc: Ditto.
-	* ini.cc: Use IniState.h to track each parsing calling.
-	(find_routine): Ditto.
-	(do_remote_ini): Ditto.
-	(do_ini_thread): Ditto.
-	* ini.h (ini_init): Adjust parameters to include state object.
-	* inilex.l: Declare parser state variable.
-	(ini_init): Adjust parameters to include state object.
-	* iniparse.y: Remove obsolete setup_timestamp and setup_version
-	declarations.
-	(setup_header): Use new state variable to track time and version.
-	(add_correct_version): Ditto.
-	* install.cc: Don't include ini.h - it's not needed.
-
-2002-05-03 Robert Collins  <rbtcollins@hotmail.com>
-
-	* nio-files.cc (NetIO): Use io_stream syntax for get_file_size.
-	* io_stream_file.cc: Don't include filemanip.h.
-	(io_stream_file::get_size): Implement here to remove filemanip
-	dependency.
-	* io_stream_cygfile.cc: Don't include filemanip.h.
-	(io_stream_cygfile::get_size): Implement here to remove filemanip
-	dependency.
-	Implement a stat based version for when win32 is not available.
-	* filemanip.h (get_file_size): Return size_t - it's more appropriate.
-	* filemanip.cc: Don't include win32.h - be platform independent.
-	Include strings.h and io_stream.h as part of that.
-	(get_file_size): Leverage io_streams and remove win32 implementation.
-	* download.cc (check_for_cached): Use io_stream syntax for
-	get_file_size.
-	(download_one): Ditto.
-
-2002-05-02 Robert Collins  <rbtcollins@hotmail.com>
-
-	* configure.in: Correct a typo in last change.
-	* configure: Regenerate.
-	* Makefile.in: Regenerate.
-
-2002-05-02 Robert Collins  <rbtcollins@hotmail.com>
-
-	* configure.in: Check for string.h and string.
-	* configure: Regenerate.
-	* Makefile.in: Regenerate.
-
-2002-05-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* res.rc (IDD_SPLASH): Remove white box.
-
-2002-05-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	Oops! forgot to list these in the last checkin.
-	* inilintmain.cc: New file.
-	* md5.h: New file - imported md5 source, BSD style licence.
-	* md5.cc: New file - imported md5 source, BSD style licence.
-	* Exception.cc: New file.
-	* Exception.h: New file.
-	* MD5++.cc: New file.
-	* MD5++.h: New file.
-
-2002-05-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am (AM_CFLAGS): Remove -mwindows, it's a linker flag.
-	Remove -fno-rtti, we need it for exceptions.
-	(AM_CXXFLAGS): Ditto.
-	(WARNONLY_CFLAGS): Ditto.
-	(EXTRA_PROGRAMS): Add with initial linter sources - not functional yet.
-	(setup_LDFLAGS): Add and set to -mwindows.
-	(setup_SOURCES): Add new sources.
-	* Makefile.in: Regenerate.
-	* README: Update TODO.
-	* choose.cc (scan_downloaded_files): Use ini information if it's
-	available.
-	* configure: Regenerate.
-	* download.cc (check_for_cached): Make reusable from elsewhere.
-	Throw exceptions on errors (as opposed to failures).
-	Check MD5 sum when it's known.
-	(download_one): Never force a download.
-	Handle corrupt package exceptions.
-	* ini.cc (find_routine): Reverse escape the URL to correctly identify
-	the site URL.
-	* inilex.l (MD5): Provide a parsing rule (note: lowercase is required).
-	* iniparse.y: Allow calculation of MD5 sums, and allow src only
-	packages.
-	(process_src): New helper function.
-	* isntall.cc (install_one_source): Check MD5 sums when possible.
-	Throw exceptions on errors.
-	(do_install_thread): Handle exceptions for installation calls.
-	* package_source.h: Store MD5 information.
-	* propsheet.cc (PropSheet::Create): Add a useful comment.
-	* res.rc (IDS_INSTALL_ERROR): Define.
-	(IDS_CORRUPT_PACKAGE): Define.
-	* resource.h (IDS_INSTALL_ERROR): Define.
-	(IDS_CORRUPT_PACKAGE): Define.
-	* rfc1738.cc (rfc1738_unescape_part): Implement.
-	* rfc1738.h (rfc1738_unescape_part): Declare.
-
-2002-04-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am: Remove dependecy rules that automake emits.
-	Correct badly copied dependency info for manually compiled files.
-	(setup_SOURCES): Add all used headers.
-	(EXTRA_DIST): Include non compilate but required sources.
-	(setup_LDADD): Remove mingw32, it is autodetected.
-	* Makefile.in: Regenerate.
-	* String++.h: sys/types is a system header.
-	* choose.cc (do_choose_thread): Make into a Win32 thread routine.
-	Use ExitThread.
-	(ChooserPage::OnMessageApp): Use Win32 threads. (_beginthread is not
-	portable).
-	* configure: Regenerate.
-	* configure.in: Check for mingw32/cygwin specific headers and libraries.
-	* cygpackage.h: Include the win32.h header to get correct macro
-	definitions in all situations.
-	* download.cc (do_download_reflector): Make into a Win32 thread routine.
-	Use ExitThread.
-	(do_download): Use Win32 threads.
-	* ini.cc: Ditto.
-	* install.cc: Ditto.
-	* (WinMain): Adjust to build valid command line using application
-	under both mingw32 and cygwin.
-	* mount.cc (set)cygdrive_flags): Create new system flags if the
-	user requests system and the value does not exist.
-	* nio-http.cc: Define a _strnicmp for cygwin.
-	* package_db.cc: Include <errno.h> if it exists.
-	* site.cc (do_download_site_info_thread): Make into a Win32 thread
-	routine.
-	Use ExitThread.
-	(do_download_site-Info): Use Win32 threads.
-	* state.cc: Explicity declare variables to avoid header conflicts
-	caused by '#define extern" on cygwin.
-	* win32.h: Include <alloca.h> if it exists.
-	(_MAX_PATH): Define as MAX_PATH when not defined by windows.h.
-	(_access): Define as access if not defined by windows.h.
-
-2002-04-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* compress_gz.cc (compress_gz::error): EOF is not an error condition.
-
-2002-04-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am: Add libgetopt++ to the subdirs list.
-	Search the libgetopt++ header directory.
-	Link against libgetopt++.la.
-	(setup_SOURCES): Remove GetOption.cc and getopt.c and Option.cc.
-	(setup_LDADD): Explicitly include res.o.
-	* Makefile.in: Regenerate.
-	* aclocal.m4: Regenerate.
-	* bootstrap.sh: Call libtoolize.
-	* configure: Regenerate.
-	* configure.in: Add libtool support and configure libgetopt++.
-	* desktop.cc (NoShortcutsOption): Turn into a BoolOption.
-	(DesktopSetupPage::OnInit): Use the simpler syntax.
-	* desktop.h: Remove dependency on Option.h, and remove NoShortcustOption
-	declaration.
-	* main.cc: Include getopt++/GetOption.h.
-	(main): Use simpler syntax.
-	* cdefs.h: Remove.
-	* getopt.h: Remove.
-	* getopt.c: Remove.
-	* GetOption.h: Remove.
-	* GetOption.cc: Remove.
-	* Option.h: Remove.
-	* Option.cc: Remove.
-
-2002-04-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.am: Add zlib and bz2lib to SUBDIRS.
-
-2002-04-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* aclocal.m4: New file, cached macros.
-	* bootstrap.sh: New file, calls required autotools in appropriate
-	order.
-	* Makefile.am: New file, input Makefile for automake.
-	* Makefile,in: Now a generated file - regenerate.
-	* configure: Regenerate.
-	* configure.in: Add automake support.
-	* inilex.l: Change VERSION to PACKAGEVERSION to avoid a collision with
-	automake's VERSION define.
-	* iniparse.y: Ditto.
-
-2002-04-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* cdefs.h: New file, imported to allow getopt.c to build without
-	cygwin headers.
-	* getopt.h: New file, imported to allow building without cygwin headers.
-	* getopt.c: Ditto.
-	* bz2lib: New directory, contains copy of bz2lib.
-	* cfgaux: New directory, contains autotool helper scripts.
-	* Makefile,in: Adjust library and target definitions for building
-	outside the sourceware tree.
-	* compress_bz.h: Use new bz2lib header location.
-	* mount.cc: Import key defines and enums to be independent of cygwin
-	headers.
-	* configure.in: Update to autoconf 2.53, and to be sourceware
-	independent.
-	* configure: Regenerate.
-
-2002-04-12  Robert Collins  <rbtcollins@hotmail.com>
-
-	* mklink2.cc (make_link_2): Tweak to work with current w32api
-	headers.
-		
-2002-04-10  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* version.cc (canonicalize_version): Fix a call delete[]
-	to delete the allocated address.
-
-2002-03-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.cc (PickView::set_headers): Set last_col correctly. Thanks
-	to Ton van Overbeek for locating the bug area.
-
-2003-03-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickView.cc (PickView::insert_pkg): Be more generic with
-	object use.
-	(PickView::insert_category): Ditto.
-	(PickView::~PickView): Create.
-	* PickView.h (PickView::~PickView): Declare.
-
-2003-03-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add new commandline objects.
-	* desktop.cc (NoShortCutsOption): New option code.
-	(DesktopSetupPage::OnInit): Check whether to skip shortcuts.
-	* desktop.h (NoShortCutsOption): New concrete command line option class.
-	* main.cc (WinMain): Process command line options.
-	* GetOption.h: New file, singleton command line class.
-	* GetOption.cc: New file, implementation of the above.
-	* Option.h : New file, abstract option for GetOption.
-	* Option.cc: New file, implement constructor and destructor.
-
-2002-03-26  Pavel Tsekov  <ptsekov@gmx.net>
-
-	* mkdir.cc (mkdir_p): Stop processing if the path is exhausted.
-
-2002-03-26 Ton van Overbeek  <tvoverbe@cistron.nl>
-
-	* PickPackageLine.cc (PickPackageline::paint): Adjust clipping rectangle
-	to textheight, so large fonts work.
-
-2003-03-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* io_stream_cygfile.cc (io_stream_cygfile::mklink): Don't translate
-	symlinks.
-
-2003-03-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* io_stream_cygfile.cc (cwd): New static for cwd storage.
-	(io_stream_cygfile::normalise): New method.
-	(io_stream_cygfile::io_stream_cygfile): Use it.
-	(io_stream_cygfile::exists): Ditto.
-	(io_stream_cygfile::remove): Ditto.
-	(io_stream_cygfile::mklink): And again.
-	(cygmkdir_p): Yes, again.
-	(io_stream_cygfile::move): And once more.
-	* io_stream_cygfile.h (io_stream_cygfile::normalise): Declare.
-	(io_stream_cygfile::cwd): Ditto.
-
-2003-03-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.cc (package_meta::~package_meta): Remove duplicate.
-	(CategoryPackage::~CategoryPackage): Ditto. (Thanks to Ton van
-	Overbeek for the report).
-	* mklink2.cc: Moved from mklink2.c to avoid 'not a prototype error'.
-	Make g++ compatible.
-	* mklink2.c: Remove.
-	* site.cc (site_list_type::init): Delete the correct memory addres.
-	Thanks to Pavel Tsekov for tracking this down.
-
-2002-03-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* win32.h: Only define alloca if it's not already.
-
-2002-03-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_meta.h (packamgemeta::trustp): Make 'test' choice leave
-	installed packages alone.
-	* README: Update with latest requests.
-	* Various: MTC fixes from setup200202 branch.
-
-2002-03-19  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in (setup_version.c): Add back magic which allows detection
-	of setup.exe version number.
-
-2002-03-17  Robert Collins <rbtcollins@hotmail.com>
-
-	* PickPackageLine.cc (PickPackageLine::paint): Fix incorrect clip region
-	calculation on win9x systems.
-
-2002-03-16  Robert Collins <rbtcollins@hotmail.com>
-
-	* install.cc (install_one_source): Write the correct length of a string
-	to the lst file (Thanks to Pavel Tsekov for reporting the bug).
-
-2002-03-15  Robert Collins <rbtcollins@hotmail.com>
-
-	* choose.cc (list_click): Always refresh the entire chooser, as our
-	package state change mechanism is broken with the new improved list
-	classes.
-
-2002-03-15  Robert Collins <rbtcollins@hotmail.com>
-
-	* desktop.cc (make_passwd_group): Check for .lnk suffix on /etc/passwd
-	and /etc/group.
-
-2002-03-15  Robert Collins <rbtcollins@hotmail.com>
-
-	* PickPackageLine.cc (PickPackageLine::DrawCheck): New method factored
-	out from paint().
-	(PickPackageLine::paint): Use DrawCheck to draw the src tick box, and
-	the new bin tickbox.
-	(PickPackageLine::click): Handle the new bin tickbox.
-	* PickPackageLine.h (PickPackageLine::DrawCheck): Declare this.
-	* PickView.cc (pkg_headers): Add a Bin? column.
-	(cat_headers): Ditto.
-	(PickView::set_headers): Ditto.
-	(PickView::init_headers): Ditto.
-	* PickView.h (PickView): Ditto.
-	* choose.cc (list_click): Use the new name for src_col to set the clip
-	rectangle.
-
-2002-02-24  Michael A Chase <mchase@ix.netcom.com>
-
-	* io_stream_cygfile.cc (io_stream_cygfile::mklink): Fix up Robert's
-	fixup.
-
-2002-02-24  Michael A Chase <mchase@ix.netcom.com>
-
-	* desktop.cc (make_link): Add "file://" prefix to io_stream::mkpath_p()
-	call.
-	(make_passwd_group): Ditto.
-	* localdir.cc (save_local_dir): Ditto.
-	* io_stream_cygfile.cc (io_stream_cygfile::mklink): Wrap long lines.
-	Add "cygfile://" prefix to io_stream::open() calls.
-
-2002-02-24  Robert Collins <rbtcollins@hotmail.com>
-
-	* log.cc (log_save): Fix creating /var/log.
-	* packate_meta.cc (standard_dirs): Remove duplicate '/''s.
-
-2002-02-24  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* res.rc (STRINGTABLE): Add IDS_CYGWIN_SETUP and
-	IDS_CYGWIN_SETUP_WITH_PROGRESS strings.
-	* resource.h: Add IDS_CYGWIN_SETUP and
-	IDS_CYGWIN_SETUP_WITH_PROGRESS IDs.
-
-	* splash.cc (OnInit): Qualify SetWindowText() call with global scope
-	operator (::SetWindowText()).
-
-	* threebar.cc: Run indent.
-	(cistring.h): Add include.
-	(SetText1, SetText2, SetText3): Qualify SetWindowText() call with
-	global scope operator.
-	(SetBar2): Add logic for writing percent complete into window title.
-
-	* window.h: Run indent.
-	(SetWindowText): New function.
-	(String): Add forward declaration.
-	* window.cc: Run indent.
-	(String++.h): Add include.
-	(SetWindowText): New function.
-
-2002-02-24  Robert Collins <rbtcollins@hotmail.com>
-
-	* README: Update TODO list.
-	* install.cc (install_one): Fix src package location.
-	(do_install_thread): Fix creating directories.
-		
-2002-02-19  Robert Collins <rbtcollins@hotmail.com>
-
-	* choose.cc: Include cygpackage.h for scan2 use.
-	(set_existence): Ignore setup.ini mirrors when installing from cwd.
-	(scan2): Process any valid file.
-	Add cache entries when a file matching a setup.ini listed version is
-	found.
-	* filemanip.cc (parse_filename): Remove pkgtar - not used anywhere else.
-	* filemanip.h (filemanip::pkgtar): Remove.
-	* package_meta.cc (CategoryPackage::~CategoryPackage): New method.
-	(packagemeta::~packagemeta): Move from package_meta.h
-	Remove and delete all version and category information.
-	* package_meta.h (CategoryPackage): Create a destructor.
-	(packagemeta::~packagemeta): Move to .cc file.
-
-2002-02-19  Robert Collins <rbtcollins@hotmail.com>
-
-	* install.cc (install_one_source): Make NULL cached package names cause
-	errors.
-
-2002-02-18  Michael A Chase <mchase@ix.netcom.com>
-
-	* desktop.cc (make_passwd_group): Don't create passwd-grp.bat
-	unnecessarily.
-	
-2002-02-18  Michael A Chase <mchase@ix.netcom.com>
-
-	* log.cc (log_save): Put "\n" at end of log lines instead of "'".
-
-2002-02-19  Robert Collins <rbtcollins@hotmail.com>
-
-	* mount.cc (create_mount): Avoid a const char*->char* warning.
-	(read_mounts): Ditto.
-
-2002-02-05  Jason Tishler  <jason@tishler.net>
-
-	* download.cc (do_download_thread): Fix off-by-one error.
-	
-2002-02-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* configure.in (CXXFLAGS): Substitute at configure time, not runtime.
-	* configure (CXXFLAGS): Regenerate.
-	* Makefile.in (iniparse.o): Build via default rules - no errors now.
-	* README: TODO list updates.
-
-2002-02-19  Michael A Chase  <mchase@ix.netcom.com>
-
-	* String++.cc (String::concat):: Remove.
-	(String::vconcat):: Ditto.
-	* String++.h (String::concat):: Remove.
-	(String::vconcat):: Ditto.
-	* archive_tar.cc: Don't include concat.h.
-	* archive_tar_file.cc: Don't include concat.h.
-	* compress_bz.cc (compress_bz::peek): Don't log unneeded messages.
-	(compress_bz::seek): Ditto.
-	(compress_bz::~compress_bz): Ditto.
-	* compress_gz.cc (compress_gz::peek): Ditto.
-	(compress_gz::error): Ditto.
-	(compress_gz::~compress_gz): Ditto.
-	* concat.cc (vconcat): Remove.
-	(concat): Ditto.
-	* concat.h (vconcat): Remove.
-	(concat): Ditto.
-	* desktop.cc (desktop_icon): Use new cygpath.
-	(make_etc_profile): Ditto.
-	(uexists): Ditto.
-	(make_passwd_group): Ditto.
-	(save_icon): Ditto.
-	(check_desktop): Remove concat use.
-	(check_start_menu): Ditto.
-	* download.cc (download_one): Use new mkpath_p correctly.
-	Use LOG_PLAIN.
-	* fromcwd.cc: Don't include concat.h.
-	* geturl.cc (get_url_to_membuf): Use String log() call.
-	(get_url_to_file): Ditto.
-	* install.cc: Don't include concat.h.
-	(uninstall_one): Use LOG_PLAIN.
-	(replace_one): Ditto.
-	(install_one_source): Ditto.
-	(install_one): More char to String conversion.
-	(do_install_thread): Use new cygpath.
-	Use new create_mount.
-	* io_stream.cc (io_stream::move): Use new log().
-	* io_stream_cygfile (io_stream_cygfile::io_stream_cygfile): Use new
-	cygpath.
-	(io_stream_cygfile::exists): Ditto.
-	(io_stream_cygfile::remove): Ditto.
-	(io_stream_cygfile::mklink): Ditto.
-	(io_stream_cygfile::write): Ditto.
-	(cygmkdir_p): Ditto.
-	(io_stream_cygfile::move): Ditto.
-	* io_stream_file.cc: Don't include log.h.
-	(io_stream_file::write): Don't log unneeded messages.
-	* localdir.cc: Don't include concat.h.
-	(LocalDirPage::OnNext): Use LOG_PLAIN.
-	* log.cc: Don't include log.h.
-	(exit_setup): Use new cygpath.
-	* log.h (log_level): Add new level LOG_PLAIN.
-	* main.cc (WinMain): Use new log().
-	* mount.cc (SLASH_P): New macro from concat.h.
-	(cygpath): Make String version globally visible.
-	Remove varargs version.
-	* mount,h: Ditto.
-	* msg.cc (mbox): Use LOG_PLAIN.
-	* net.cc (NetPage::OnNext): Ditto.
-	* nio-ftp.cc (ftp_line): Use new log().
-	* nio-http.cc: Don't include log.h.
-	(retry_get): Use alternative url variable.
-	* package_db.cc: Don't include concat.h.
-	(packagedb::flush): Don't use concat.
-	* package_meta.cc: Don't include concat.h.
-	(packagemeta::uninstall): Use new cygpath.
-	* postinstall.cc (do_postinstall): Ditto.
-	* root.cc (RootPage::OnNext): Use LOG_PLAIN.
-	* script.cc: Don't include concat.h.
-	(init_run_script): Use new cygpath.
-	(run_script): More char * to String conversion.
-	(try_run_script): Ditto.
-	* site.cc: Don't include concat.h.
-	(SitePage::OnNext): Use LOG_PLAIN.
-	(SitePage::OnMessageCmd): Use new log().
-	* source.cc (SourcePage::OnDeactivate): Use LOG_PLAIN.
-
-2002-02-19  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add new object.
-	* PickCategoryLine.cc (PickCategoryLine::paint): Print a "+" before the
-	name.
-	* PickCategoryLine.h (PickCategoryLine::bucket): Use the String class.
-	* PickLine.h (Pickline::key): Change to a String to help plug leaks.
-	(PickLine::Pickline): Accept a String for the key.
-	* PickPackageLine.cc (PickPackageLine::paint): Convert all char use to
-	Strings.
-	* PickPackageLine.h (PickPackageLine::PickPackageLine): The key is
-	automatically initialised now.
-	* PickView.cc (PickView::note_width): Convert all char * use to Strings.
-	(PickView::init_header): Move category length checking out of the inner
-	loop for efficiency.
-	Convert all char use to Strings.
-	* PickView.h: Include the String++ header.
-	(PickView::note_width): Update the prototype.
-	* String++.cc: New file, implements a reference counting string class.
-	* String++.h: New file, declares a reference counting string class.
-	* archive.cc: Include String++ instead of concat.
-	(archive::extract_file): Convert char * usage to Strings.
-	* archive.h: Inlude the String++ header.
-	(archive::extract_file): Update prototype.
-	(archive::next_file_name): Convert to a String.
-	(archive::linktarget): Ditto.
-	* archive_tar.cc (archive_tar::next_file_name): Convert to String usage.
-	(archive_tar::linktarget): Ditto.
-	* arhive_tar.h: Update the copyright.
-	Explicitly include the relevant headers.
-	(tar_map_result_type): Convert to String usage.
-	(archive_tar::next_file_name): Update prototype.
-	(archive_tar::linktarget): Ditto.
-	* category.cc (Category::Category): Update initialisers.
-	Convert to String usage.
-	(Categorycmp): Update to String usage.
-	* category.h: Include the String++ header.
-	(Category::Category): Update to String usage.
-	(Category::name): Ditto.
-	(Category::key): Ditto.
-	* choose.cc: Remove concat.h, it's not needed.
-	(scan2): Update to String usage.
-	(do_choose): Ditto.
-	* cygpackage.cc: Update includes for use of String class.
-	(cygpackage::cygpackage): Update for String usage.
-	(cygpackage::set_canonical_version): Ditto.
-	(cygpackage::destroy): Ditto.
-	(cygpackage::getfirstfile): Ditto.
-	(cygpackage::getnextfile): Ditto.
-	(cygpackage::Name): Ditto.
-	(cygpackage::Vendor_version): Ditto.
-	(cygpackage::Package_version): Ditto.
-	(cygpackage::Canonical_version): Ditto.
-	(cygpackage::set_sdesc): Ditto.
-	(cygpackage::set_ldesc): Ditto.
-	* cygpackage.h: Include String++.h for parsing this file.
-	(cygpackage::cygpackage): Update for String usage.
-	(cygpackage::set_canonical_version): Ditto.
-	(cygpackage::destroy): Ditto.
-	(cygpackage::getfirstfile): Ditto.
-	(cygpackage::getnextfile): Ditto.
-	(cygpackage::Name): Ditto.
-	(cygpackage::Vendor_version): Ditto.
-	(cygpackage::Package_version): Ditto.
-	(cygpackage::Canonical_version): Ditto.
-	(cygpackage::set_sdesc): Ditto.
-	(cygpackage::set_ldesc): Ditto.
-	(cygpackage::name): Ditto.
-	(cygpackage::vendor): Ditto.
-	(cygpackage::packagev): Ditto.
-	(cygpackage::canonical): Ditto.
-	(cygpackage::fn): Ditto.
-	(cygpackage::sdesc): Ditto.
-	(cygpackage::ldesc): Ditto.
-	* desktop.cc: Update includes for use of String class.
-	(batname): Update for String usage.
-	(iconname): Ditto.
-	(make_link): Ditto.
-	(start)menu): Ditto.
-	(desktop_icon): Ditto.
-	(make_cygwin_bat): Ditto.
-	(make_etc_profile): Ditto.
-	(uexists): Ditto.
-	(make_passwd_group): Ditto.
-	(save_icon): Ditto.
-	(check_desktop): Ditto.
-	(check_startmenu): Ditto.
-	* dialog.cc (eget): Update for String usage.
-	(egetString): New function.
-	(eset): New variant for Strings.
-	* dialog.h: Include String++.h for parsing this file.
-	(egetString): New function.
-	(eset): New variant for Strings.
-	* diskfull.cc (diskfull): Update for String usage.
-	* diskfull.h: Include String++.h for parsing this file.
-	(diskfull): Update for String usage.
-	* download.cc: Update includes for use of String class.
-	(check_for_cached): Update for String usage.
-	(download_one): Ditto.
-	* filemanip.cc (get_file_size): Ditto.
-	(base): Ditto.
-	(parse_filename): Ditto.
-	(backslash): Ditto.
-	* filemanip.h: Include String++.h for parsing this file.
-	(fileparse): Update for String usage.
-	(base): Ditto.
-	(parse_filename): Ditto.
-	Don't consider '_' to be a separator.
-	(backslash): Ditto.
-	* find.cc: Update includes for use of String class.
-	(find_sub): Make more flexible.
-	(find): Update for String usage.
-	* find.h (find): Use Strings.
-	* fromcwd.cc (found_file): Update for String usage.
-	* geturl.cc: Ditto.
-	(init_dialog): Ditto.
-	(get_url_to_membuf): Ditto.
-	(get_url_to_string): Ditto.
-	(get_url_to_file): Ditto.
-	* geturl.h: Ditto.
-	(get_url_to_membuf): Ditto.
-	(get_url_to_string): Ditto.
-	(get_url_to_file): Ditto.
-	* hash.h: Ditto.
-	(add_subdirs): Ditto.
-	* ini.cc: Update includes for String usage.
-	(find_routine): Update for String usage.
-	(do_remote_ini): Ditto.
-	(do_ini_thread): Ditto.
-	* ini.h (ini_init): Ditto.
-	* inilex.l: Update includes for String usage.
-	(ini_init): Update for String usage.
-	* iniparse.y: Ditto.
-	(add_correct_version): Ditto.
-	* install.cc: Update includes for String usage.
-	(install_one_source): Update for String usage.
-	(uninstall_one): Ditto.
-	(replace_one): Ditto.
-	(install_one_source): Ditto.
-	(do_install_thread): Ditto.
-	* io_stream.cc: Update includes for String usage.
-	(io_stream::open): Update for String usage.
-	(io_stream::mkpath_p): Ditto.
-	(io_stream::remove): Ditto.
-	(io_stream::mklink): Ditto.
-	(io_stream::move_copy): Ditto.
-	(io_stream::move): Ditto.
-	(io_stream::exists): Ditto.
-	* io_stream.h: Update includes to allow correct parsing.
-	(io_stream::open): Update for String usage.
-	(io_stream::mkpath_p): Ditto.
-	(io_stream::remove): Ditto.
-	(io_stream::mklink): Ditto.
-	(io_stream::move_copy): Ditto.
-	(io_stream::move): Ditto.
-	(io_stream::exists): Ditto.
-	* io_stream_cygfile.cc: Update includes for String usage.
-	(get_root_dir_now): Update for String usage.
-	(io_stream_cygfile::io_stream_cygfile): Ditto.
-	(io_stream_cygfile::~io_stream_cygfile): Ditto.
-	(io_stream_cygfile::exists): Ditto.
-	(io_stream_cygfile::remove): Ditto.
-	(io_stream_cygfile::mklink): Ditto.
-	(cygmkdir_p): Ditto.
-	(io_stream_cygfile::set_mtime): Ditto.
-	(io_stream_cygfile::move): Ditto.
-	(io_stream_cygfile::get_size): Ditto.
-	* io_stream_cygfile.h: Update includes for String usage.
-	(io_stream_cygfile::io_stream_cygfile): Update for String usage.
-	(io_stream_cygfile::~io_stream_cygfile): Ditto.
-	(io_stream_cygfile::exists): Ditto.
-	(io_stream_cygfile::remove): Ditto.
-	(io_stream_cygfile::mklink): Ditto.
-	(cygmkdir_p): Ditto.
-	(io_stream_cygfile::set_mtime): Ditto.
-	(io_stream_cygfile::move): Ditto.
-	(io_stream_cygfile::get_size): Ditto.
-	(io_stream_cygfile::fname): Ditto.
-	(io_stream_cygfile::lmode): Ditto.
-	* io_stream_file.cc: Update includes for String usage.
-	(io_stream_file::io_stream_file): Update for String usage.
-	(io_stream_file::~io_stream_file): Ditto.
-	(io_stream_file::exists): Ditto.
-	(io_stream_file::remove): Ditto.
-	(io_stream_file::mklink): Ditto.
-	(io_stream_file::set_mtime): Ditto.
-	(io_stream_file::move): Ditto.
-	(io_stream_file::get_size): Ditto.
-	* io_stream_file.h: Update includes for String usage.
-	* io_stream_file.cc: Update includes for String usage.
-	(io_stream_file::io_stream_file): Update for String usage.
-	(io_stream_file::~io_stream_file): Ditto.
-	(io_stream_file::exists): Ditto.
-	(io_stream_file::remove): Ditto.
-	(io_stream_file::mklink): Ditto.
-	(io_stream_file::set_mtime): Ditto.
-	(io_stream_file::move): Ditto.
-	(io_stream_file::get_size): Ditto.
-	(io_stream_file::fname): Ditto.
-	(io_stream_file::lmode): Ditto.
-	* localdir.cc: Update includes for String usage.
-	(save_local_dir): Update for String usage.
-	(check_if_enable_next): Ditto.
-	(load_dialog): Ditto.
-	(browse_cb): Ditto.
-	(LocalDirPage::OnInit): Ditto.
-	(LocalDirPage::OnNext): Ditto.
-	* log.cc: Update includes for String usage.
-	(struct LogEnt): Update for String usage.
-	(log): Ditto.
-	(log_save): Ditto.
-	(exit_setup): Ditto.
-	* log.h: Update includes for String usage.
-	(log_level): Update for String usage.
-	(log): Ditto.
-	(log_save): Ditto.
-	* main.cc (WinMain): Update for String usage.
-	* mklink2.c (make_link_2): Update for String usage.
-	* mklink2.h (make_link_2): Update for String usage.
-	* mount.cc: Update includes for String usage.
-	(mount_table): Update for String usage.
-	(find2): Ditto.
-	(create_mount): Ditto.
-	(remove1): Ditto.
-	(remove_mount): Ditto.
-	(read_mounts): Ditto.
-	(set_root_dir): Ditto.
-	(get_root_dir): Ditto.
-	(path_prefix_p): Ditto.
-	(cygpath): Ditto.
-	* mount.h: Update includes for String usage.
-	(create_mount): Update for String usage.
-	(remove_mount): Ditto.
-	(cygpath): Ditto.
-	(set_root_dir): Ditto.
-	(get_root_dir): Ditto.
-	* msg.cc (mbox): Ditto.
-	* net.cc (NetPage::OnNext): Ditto.
-	* package_db.cc (packagedb::flush): Ditto.
-	(packagedb::packages): Ditto.
-	(packagedb::categories): Ditto.
-	* package_db.h: Update includes for String usage.
-	(packagedb::packages): Update for String usage.
-	(packagedb::categories): Ditto.
-	* package_meta.cc: Update includes for String usage.
-	(hash::add_subdirs): Update for String usage.
-	(packagemeta::uninstall): Ditto.
-	(packagemeta::SDesc): Ditto.
-	(packagemeta::action_caption): Ditto.
-	* package_meta.h: Update includes for String usage.
-	(packagemeta::packagemeta): Update for String usage.
-	(packagemeta::~packagemeta): Ditto.
-	(packagemeta::uninstall): Ditto.
-	(packagemeta::SDesc): Ditto.
-	(packagemeta::action_caption): Ditto.
-	(package_source.cc site::site): Ditto.
-	(packagesource::set_canonical): Ditto.
-	(packagesource::set_cached): Ditto.
-	* package_source.h: Update includes for String usage.
-	(site::site): Update for String usage.
-	(packagesource::set_canonical): Ditto.
-	(packagesource::set_cached): Ditto.
-	(packagesource::packagesource): Ditto.
-	(packagesource::sites): Ditto.
-	(packagesource::cached): Ditto.
-	* package_version.h: Update includes for String usage.
-	(Dependency): Update for String usage.
-	(packageversion): Ditto.
-	* postinstall.cc: Update includes for String usage.
-	(do_postinstall): Update for String usage.
-	* res.rc (IDD_LOCAL_DIR): Fix typo again!
-	* rfc1738.cc (rfc1738_escape_part): Update for String usage.
-	* rfc1738.h: Update includes for String usage.
-	(rfc1738_escape_part): Update for String usage.
-	* root.cc: Update includes for String usage.
-	(check_if_enable_next): Update for String usage.
-	(save_dialog): Ditto.
-	(browse_cb): Ditto.
-	(directory_is_absolute): Ditto.
-	(directory_is_rootdir): Ditto.
-	(directory_has_spaces): Ditto.
-	(RootPage::OnInit): Ditto.
-	(RootPage::OnNext): Ditto.
-	* script.cc: Update includes for String usage.
-	(init_run_script): Update for String usage.
-	(run): Ditto.
-	(run_script): Ditto.
-	(try_run_script): Ditto.
-	* script.h: Update includes for String usage.
-	(run_script): Update for String usage.
-	(try_run_script): Ditto.
-	* site.cc site_list): Ditto.
-	(all_site_list): Ditto.
-	(other_url): Eliminate.
-	(site_list_type::init): Update for String usage.
-	(site_list_type::site_list_type): Ditto.
-	(get_site_list): Ditto.
-	(get_saved_sites): Ditto.
-	(do_download_site_info_thread): Ditto.
-	(SitePage::OnNext): Ditto.
-	(SitePage::OnActivate): Ditto.
-	(SitePage::PopulateListBox): Ditto.
-	(SitePage::OnMessageCmd): Handle empty url's.
-	* site.h: Update includes for String usage.
-	(site_list_type::site_list_type): Update for String usage.
-	(site_list_type::init): Ditto.
-	(site_list_type::~site_list_type): Ditto.
-	(site_list_type::url): Ditto.
-	(site_list_type::displayed_url): Ditto.
-	(site_list_type::key): Ditto.
-	* source.cc (SourcePage::OnDeactivate): Ditto.
-	* state.h: Update includes for String usage.
-	(local_dir): Update for String usage.
-	(trust_level): Remove.
-	* version.cc: Update includes for String usage.
-	(canonicalize_version): Update for String usage.
-	* version.h: Update includes for String usage.
-	(canonicalize_version): Update for String usage.
-	
-2002-02-15  Christopher Faylor  <cgf@redhat.com>
-
-	* filemanip.c (parse_filename): Revert previous change.
-
-2002-02-14  Christopher Faylor  <cgf@redhat.com>
-
-	* filemanip.c (parse_filename): Don't treat '_' as a version number
-	introducer.
-
-2002-01-29  Christopher Faylor  <cgf@redhat.com>
-
-	* configure: Regenerate.
-
-2002-01-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* res.rc (IDD_LOCAL_DIR): Fix typo reported by Rene
-	<Hoeck@extern.lrz-muenchen.de>
-
-2002-01-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* README: Update Todo's.
-	* list.h: Run indent.
-	(list): New methods checksize and insert to reduce code duplication.
-	(list::registerbykey): Use them.
-	(list::registerbyobject): Ditto.
-	(list::removebyindex): Copy each object individually - safe for non
-	trivial objects.
-	(list::checksize): Implement.
-	(list::insert): Implement.
-
-2002-01-27  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in: Remove the dlmalloc object by default.
-	* install.cc (do_install_thread): Remove the mallinfo call for 'working
-	around' the crashing issue.
-	* package_db.h: Include <string.h> - it's needed to parse this.
-	* package_source.cc (site::site): Move here from the header file.
-	* package_source.h (site): Stop the constructor being inlinable.
-
-2002-01-26  Robert Collins  <rbtcollins@hotmail.com>
-
-	* filemanip.cc (find_tar_ext): Add a descriptive comment.
-
-2002-01-25  Michael A Chase <mchase@ix.netcom.com>
-
-	* filemanip.cc (find_tar_ext): Clean up tests for .tar.gz and .tar.
-	* fromcwd.cc (do_fromcwd): Expand FIXME comment in source file check.
-	* install.cc (install_one_source): Add space between words in log()
-	call.
-
-2002-01-22  Robert Collins  <rbtcollins@hotmail.com>
-
-	* log.cc (exit_setup): When saving to the download dir, explicity
-	specify the path.
-
-2002-01-22  Robert Collins  <rbtcollins@hotmail.com>
-
-	* archive.cc (extract_file): Separate out the prefix and the URL
-	scheme.
-	* archive.h (archive::extract_file): Ditto.
-	* install.cc (install_one_source): Ditto.  Use the new
-	archive::extract_file syntax.
-	(replace_one): Use the new syntax.
-	(io_stream.cc): Add some log info for links.
-
-2002-01-22  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickCategoryLine.cc (PickCategoryLine::actiontext): Remove.
-	(PickCategoryLine::paint): Use the new action method.
-	(PickCategoryLine::click): Set the action for all children.
-	(PickCategoryLine::set_action): New method.
-	* PickCategoryLine.h (PickCategoryLine::-actions): Remove.
-	(PickCategoryLine::current_default): Use packagemeta _actions class.
-	* PickLine.h (PickLine::set_action): New abstract method that requires
-	including package_meta.h.
-	* PickPackageLine.cc (PickPackageLine::set_action): New method.
-	* PickPackageLine.h (PickPackageLine::set_action): Declare this.
-	* list.h (getbykey): A const correctness fix.
-	* package_meta.cc: Run indent.
-	(packagemeta::Default_action): New const.
-	(packagemeta::Install_action): Ditto.
-	(packagemeta::Reinstall_action): Ditto.
-	(packagemeta::Uninstall_action): Ditto.
-	(packagemeta::_actions::caption): New method.
-	(packagemeta::_actions::operator++): Ditto.
-	(packagemeta::set_action): New overload.
-	* package_meta.h (packagemeta::_actions): New class.
-	(packagemeta::set_action): Declare this.
-
-2002-01-22  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Remove supp.o - it appears accidental.
-	* choose.cc: Don't define alloca anymore, it's done in win32.h
-
-2002-01-22  Robert Collins  <rbtcollins@hotmail.com>
-
-	* PickPackageLine.cc: New file.
-	* PickPackageLine.h: New file.
-	* PickLine.cc: New file.
-	* PickLine.h: New file.
-	* PickCategoryLine.cc: New file.
-	* PickCategoryLine.h: New file.
-	* PickView.cc: New file.
-	* PickView.h: New file.
-	* Makefile.in: Add new objects to setup.exe.
-	Backout -fno-exceptions option.
-	* choose.cc: Include PickView.h.
-	Remove view related defines and static variables.
-	(_pkg_headers): Moved to PickView.cc.
-	(_cat_headers): Ditto.
-	(view::views::Unknown): Ditto.
-	(view::views::PackageFull):
-	(view::views::Package):
-	(view::views::Category):
-	(pkgtrustp): Moved to package_meta.cc.
-	(add_required): Moved to package_meta.cc.
-	(pick_category_line::empty): Moved to PickCategoryLine.cc
-	(paint): Adjust for moved static variables.
-	(view::scroll): Moved to PickView.cc.
-	(list_vscroll): Adjust for moved static variables.
-	(list_hscroll): Ditto.
-	(list_click): Ditto.
-	(note_width): Moved to PickView.cc.
-	(view::view): Ditto.
-	(view::set_view_mode): Ditto.
-	(view::mode_caption): Ditto.
-	(view::views::caption): Ditto.
-	(view::set_headers): Ditto.
-	(DoInsertItem): Ditto.
-	(view::init_headers): Ditto.
-	(view::insert_pkg): Ditto.
-	(view::insert_category): Ditto.
-	(view::clear_view): Ditto.
-	(view::views::operator++): Ditto.
-	(view::click): Ditto.
-	(default_trust): Adjust for moved statics.
-	(pick_pkg_line::paint): Moved to PickPackageLine.cc.
-	(pick_pkg_line::click): Ditto.
-	(pick_category_line::actiontext): Moved to PickCategoryLine.cc
-	(pick_category_line::paint): Ditto.
-	(pick_category_line::click): Ditto.
-	(set_view_mode): Adjust for moved statics.
-	(create_listview): Ditto.
-	* choose.h: Remove Category and packagemeta forward defines -
-	not needed.
-	Don't include unneeded headers list and package_meta.
-	(_header): Move to PickView.h.
-	(pick_line): Move to PickLine.h.
-	(pick_pkg_line): Move to PickPackageLine.h.
-	(pick_category_line): Move to PickCategoryLine.h.
-	(view): Move to PickView.h.
-	* ini.h (trusts): Move to package_meta.h.
-	* package_meta.h (trusts): New enum.
-	(packagemeta::set_requirements): New helper method.
-	(packagemeta::trustp): Ditto.
-
-2002-01-21  Christopher Faylor  <cgf@redhat.com>
-
-	* choose.h (view): Move forward declaration of views into public area
-	or g++ v3 will complain.
-
-2002-01-21  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in (CXXFLAGS): Add -fno-exceptions.
-	* win32.h (alloca): Define as __builtin_alloca.
-	* io_stream_memory.cc: Add include file.
-
-2002-01-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* archive_tar.cc (archive_tar::~archive_tar): Mark the stream as
-	destroyed.
-	* archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
-	* compress.cc (compress::~compress): Be less verbose.
-	* compress_bz.cc (compress_bz::~compress_bz): Ditto.
-	Mark the stream as destroyed.
-	* compress_gz.cc (compress_gz::~compress_gz): Mark the stream as
-	destroyed.
-	* io_stream.cc (io_stream::~io_stream): Only warn when the stream is not
-	marked as destroyed.
-	* io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Mark the
-	stream as destroyed.
-	* io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
-	* io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
-
-2002-01-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (CFLAGS): Allow customisable malloc debug flags.
-	(OBJS): Link in malloc objects.
-	* category.cc (category): Use new char, not strdup.
-	* choose.cc (pick_pkg_line::paint): Allow for the regionsize to shrink.
-	(do_choose): Use new char, not malloc.
-	* concat.cc (vconcat): Ditto.
-	* cygpackage.cc (cygpackage): Use new char, not strdup.
-	(set_canonical_version): Ditto.
-	(cygpackage::destroy): Use delete[], not free.
-	* desktop.cc (uexists): Ditto.
-	* dialog.cc (egest): Use new char, not strdup.
-	* dlmalloc.c: New file - Doug Lea's malloc 2.7.0
-	* hash.cc (hash::hash): Use delete instead of free.
-	(hash::add): Use new char, not strdup.
-	* ini.cc (do_remote_ini): Use delete[] not free.
-	* inilex.l: Use new char, not strdup.
-	(ini_init): Ditto.
-	* iniparse.y: Ditto.
-	Use a local package_db rather than a static one.
-	* install.cc (struct mallinfo): Workaround an apparent dlmalloc bug.
-	(do_install_thread): Call mallinfo to force a consistency check. Appears
-	to fix a 'inuse' error in -DDEBUG builds.
-	Use delete[] for strings.
-	* io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Use new
-	char, not strdup.
-	(io_stream_cygfile::~io_stream_cygfile): Use delete[], not free.
-	(io_stream_cygfile::remove): Use new char, not strdup.
-	* io_stream_file.cc (io_stream_file::io_stream_file): Use new char, not
-	strdup.
-	(io_stream_file::io_stream_file): Use delete[], not free.
-	(io_stream_file::remove): Use new char, not strdup.
-	* io_stream_memory.cc (memblock::~memblock): Use delete[], not free.
-	* io_stream_memory.h (memblock): Use new char, not malloc.
-	* localdir.cc (LocalDirPage::OnInit): Use new char, not strdup.
-	* main.cc (WinMain): Use new char, not strdup.
-	* mount.cc (find2): Use new char, not malloc.
-	(read_mounts): Ditto.
-	(cygpath): Use new char, not strdup.
-	* netio.cc (NetIO::~NetIO): Use delete[], not free.
-	(NetIO::set_url): Use new char, not strdup.
-	(NetIO::get_ftp_auth): Use delete[], not free.
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
-	Use new char instead of strdup.
-	* nio-http.cc (base64_encode): Use new char, not malloc.
-	* package_meta.cc (hash::add_subdirs): Use new char instead of strdup.
-	* package_source.h (~ packagesource): Use delete[] instead of delete.
-	* port.h (strdup): Deprecate the use of strdup.
-	* rfc1738.cc (rfc1738_do_escape): Use new char, not calloc.
-	* script.cc (init_run_script): Us delete[], not free.
-	(run_script): Ditto.
-	* simpsock.cc (SimpleSocket::fill): Use new char, not malloc.
-	(SimpleSocket::invalidate): Use delete[], not free.
-	* site.cc (site_list_type::init): Use new char instead of strdup.
-	* site.h (~site_list_type): Use delete[], not free.
-
-2002-01-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add win32.o - win32 support functions.
-	* README: Update todos.
-	* archive.cc (extract_file): Support a suffix for appending to extracted
-	files.
-	* archive.h: Ditto.
-	* choose.cc (set_view_mode): Use the new view::views class.
-	(view::views::Unknown): New static for defaulting view::views variables.
-	(view::views::PackageFull): New static for the current view.
-	(view::views::Package): Ditto.
-	(view::views::Category): Ditto.
-	(topbucket::paint): Remove.
-	(topbucket::empty): Rename to pick_category_line::empty.
-	(topbucket::~topbucket): Remove.
-	(paint): Use the new view::views class.
-	Don't paint 'all' as a category when showing package categoies.
-	(pick_category_line::actiontext): New method.
-	(pick_category_line::paint): Make showing the category optional, and
-	show the 'category action'.
-	(pick_category_line::click): Make showing the category optional, and
-	differentiate between the name being clicked, and the action
-	description.
-	(view::view): Use the new view::views class.
-	(view::set_view_mode): Ditto.
-	(view::mode_caption): Ditto.
-	(view::views::caption): New method.
-	(view::set_headers): Use the new view::views class.
-	(view::clear_view): Ditto.
-	(viewsplusplus): Replaced by
-	(view::views::operator++): New operator.
-	(set_view_mode): Use the new view::views class.
-	(create_listview): Ditto.
-	(dialog_cmd): Ditto.
-	* choose.h (actions): Remove.
-	(views): Remove.
-	(pick_line): Add a new convenience constructor.
-	(top_bucket): Remove.
-	(pick_category_line): Reparent under pick_line, and adsorb top_bucket.
-	(view::views): New class.
-	* ini.h: Don't include choose.h
-	(is_download_action): Remove.
-	(is_upgrade_action): Remove.
-	(is_uninstall_action): Remove.
-	(is_full_action): Remove.
-	* install.cc (num_replacements): New static.
-	(rebootneeded): Ditto.
-	(replace_one): Handle upgrades separate from removal or new installs.
-	(install_one_source): Handle in use files.
-	(install_one): Don't repeat upgrades.
-	(do_install_thread): Initialize new statics.
-	Order actions as uninstall, replace, install.
-	Warn about rebooting if needed.
-	* res.rc (IDS_REBOOT_REQUIRED): New string.
-	* resource.h (IDS_REBOOT_REQUIRED): Give value.
-	* win32.h: Declare class Win32, and update copyright and intent message.
-	* win32.cc: New file.
-
-2002-01-15  Corinna Vinschen  <corinna@vinschen.de>
-
-	* io_stream.cc (io_stream::gets): Eliminate trailing new line chars.
-	* package_meta.cc (packagemeta::uninstall): Check for additional
-	Windows shortcut.  Unset R/O file attribute before trying to delete
-	file.
-
-2002-01-09  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (pkgtrustp): Fall back to installed if a package is not
-	present in the current trust level. For prev, fall back via curr.
-	(set_existence): Allow sources with no sites, but cached files to be
-	kept.
-	(pick_category_line::paint): Start drawing clickable categories.
-	* fromcwd.cc (found_file): Reinstate local file scanning.
-
-2002-01-07  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* fromcwd.cc: Run indent.
-	(do_fromcwd): Reverse sense of comment.  Set next_dialog
-	to IDD_CHOOSER instead of IDD_CHOOSE.
-	* ini.cc (find_routine): Remove "/" from "/setup.ini".
-
-2001-01-07  Robert Collins  <rbtcollins@hotmail.com>
-
-	* category.cc (Categorycmp): Add a const safe version.
-	* category.h (Categorycmp): Add a const safe version.
-	(Category): Add operator ==.
-	* choose.cc (fill_missing_category): Add every package to "All".
-	(pick_category_line::paint): Add support for hidden labels, and a tree
-	depth.
-	(pick_category_line::click): Ditto.
-	(view::view): Pass in a top level category to use.
-	(view::insert_pkg): Special case - skip category "All".
-	(view::insert_category): Ditto.
-	(view::clear_view): Set the contents label state.
-	(create_listview): Pass in a top level category to view().
-	* choose.h (topbucket): Make bucket available to derived classes.
-	(pick_category_line):  Add support for hidden labels, and a tree depth.
-	Remove our second copy of bucket.
-	(view): Pass in a top level category to the constructor.
-	Use pick_category_line to allow three level display.
-
-2001-01-06  Robert Collins  <rbtcollins@hotmail.com>
-
-	* cygpackage.h (cygpackage): Make set_[s|l]desc virtual.
-	* iniparse.y (add_correct_version): Copy descriptions across.
-	* package_meta.cc (SDesc): Iterate through versions, return the first
-	with a description.
-	* package_version.h (packageversion): Add new virtuals set_[l|s]desc.
-
-2001-01-04  Robert Collins  <rbtcollins@hotmail.com>
-
-	* script.cc (run_script): Change cygpath:// to cygfile://.
-	* install.cc (do_install_thread): Fix off-by-one errors.
-
-2001-01-04  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_db.cc (packagedb::flush): Fix an off-by-one error.
-
-2002-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-	* Makefile.in (realclean): more clean.
-	(OBJS): Add script.o.
-	* postinstall.cc (run_script_in_etc_postinstall): New function.
-	(do_postinstall): Split off new funtion init_run_script ().
-	(init_run_script):
-	(run):
-	(run_script): Move to script.cc.  Replace some deprecated remove
-	and move calls.
-	* script.h:
-	* script.cc: New file.
-	* Forward port cygwin-20010707.jcn3.patch.
-	* package_meta.cc (uninstall): Run pre- and postremove scripts.
-	* install.cc: Typo fix.
-	(do_install): Run script initialisation.
-
-2001-01-04  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* cistring.cc: Run d2u.
-	* cistring.h: Run d2u.
-
-	* desktop.cc (etc_profile): Remove "test -f ./.bashrc && . ./.bashrc"
-	from the generated /etc/profile.  Bash will source this file
-	automatically, and having this here merely results in .bashrc being
-	executed twice. Run d2u.
-	* desktop.h: Run d2u.
-
-	* propsheet.cc: Run d2u.
-	(PropSheetProc): New function.  Add minimize box here instead of in
-	PropertyPage::DialogProc.
-	(PropSheet::Create): Change to use creation callback PropSheetProc.
-	(DLGTEMPLATEEX): Add 'hidden' Windows struct definition.
-
-	* propsheet.h: Run indent, d2u.
-	* proppage.h: Run indent, d2u.
-
-	* proppage.cc: Run d2u.
-	(PropertyPage::DialogProc): Remove minimize-box-adding
-	functionality.  Remove commented-out "PropSheet_SetWizButtons" calls.
-	Add support for calling virtual OnMessageCmd.  Add setting of fonts in
-	WM_INITDIALOG handler.
-	(resource.h): New include for resource IDs.
-
-	* res.rc: Resize and rearrange property page dialog templates
-	to bring them in line with "Microsoft's Backward Compatible Wizard 97"
-	specification.  Run d2u.
-	(IDD_SITE): Add an edit control and an "Add" button in order to
-	combine the IDD_SITE and IDD_OTHER_URL functionality onto one page.
-	(IDD_OTHER_URL): Remove dialog template.
-	(IDD_DLSTATUS): Remove dialog template.
-
-	* site.cc: Run d2u.
-	(SitePage::OnBack): Remove NEXT() macro invocation.
-	(SitePage::OnActivate): New member function.
-	(load_dialog): Remove.  Functionality subsumed into
-	SitePage::OnActivate.
-	(save_dialog): Change to support both list and user URLs.  Remove
-	OTHER_IDX and mirror_idx logic.
-	(SitePage::PopulateListBox): New member function.
-	(SitePage::CheckControlsAndDisableAccordingly): New member function.
-	(SitePage::OnMessageCmd): New override.
-	(check_if_enable_next): Remove.
-	(dialog_cmd): Remove.
-	(do_download_site_info_thread): Remove calls to NEXT() macro.
-	(SitePage::Create): Call the single-param PropertyPage::Create
-	overload.
-	(other_url): New static taken from other.cc.
-	(SitePage::OnNext): Remove mirror_idx logic.
-	(SitePage::OnInit): Remove "Other URL" entry from list box.  Remove
-	list box populating code, now handled in SitePage::PopulateListBox.
-	(mirror_idx, NO_IDX, OTHER_IDX): Remove.
-	(save_site_url): Fix potential buffer overflow problem.  Switched to
-	TCHAR in grossly premature preparation for multilingual support.
-	* site.h: Run d2u.
-	(SitePage::OnActivate): New member function.
-	(SitePage::CheckControlsAndDisableAccordingly) New member.
-	(SitePage::OnMessageCmd): New override.
-	(do_download_site_info_thread): Add MessageBox call on failure to
-	download site list.
-
-	* splash.cc: Run d2u.
-	(SplashPage::OnInit): Set the font for the title.
-	* splash.h: Run d2u.
-
-	* threebar.cc: Run d2u.
-	* threebar.h: Run d2u.
-
-	* window.h: Run d2u.
-	(Window::IsButtonChecked): New member function declaration.
-	(Window::OnMessageCmd): New member function.
-	(Window::SetDlgItemFont): New member function declaration.
-	(Window::MAXFONTS, Window::Fonts, Window::FontCounter): New data
-	members.
-	* window.cc: Run d2u.
-	(Window::IsButtonChecked): New member function definition.
-	(Window::SetDlgItemFont): New member function definition.
-	(Window::Window): Add initialization for FontCounter.
-	(Window::~Window): Delete any fonts we created.
-
-	* geturl.cc: Run d2u.
-	(progress): Remove the "3" field width from the "%3d"
-	percent-complete format indicator.  Causes line to not start at
-	beginning of text box, and does little to help with "jumping", since
-	the "bytes downloaded so far" field is variable-width anyway.  Change
-	kb/s format field to "%03.1" to 0-pad the kb/s number in the event of
-	painfully slow connections, or temporary slowdowns in faster
-	connections should such more-instantaneous functionality become
-	available.
-
-	* net.h: Run d2u.
-	(NetPage::OnMessageCmd): New member function declaration.
-	(NetPage::CheckIfEnableNext): New member function declaration.
-	* net.cc: Run d2u.
-	(NetPage::OnMessageCmd): New member function definition.
-	(dialog_cmd): Remove, subsumed into NetPage::OnMessageCmd.
-	(check_if_enable_next): Remove.
-	(NetPage::CheckIfEnableNext): New member function, subsumes
-	check_if_enable_next.
-	(propsheet.h): Add include.
-	(NetPage::Init): Add call to CheckIfEnableNext.
-	(load_dialog): Remove call to check_if_enable_next.
-	(NetPage::Create): Call single-template-ID-parameter overload of
-	PropertyPage::Create instead of three-parameter one.
-
-	* Makefile.in (OBJS): Remove other.o.
-	* other.cc: Remove file.
-
-2002-01-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* README: Update TODO's.
-	* choose.cc (set_existence): Delete non installed packages with no
-	mirrors.
-	(fill_missing_category): Fix an off-by-one error.
-	(default_trust): Ditto. Also delete any unused categories.
-	(view::init_headers): Fix an off-by-one error.
-	(set_view_mode): Ditto.
-	(set_view_mode): Ditto.
-	(create_listview): Ditto.
-	(dialog_cmd): Ditto.
-	(do_choose): Ditto.
-	* io_stream.cc: Indent.
-	* io_stream.h: Ditto.
-	* package_db.cc: Ditto.
-	* package_meta.h: Const correctness for SDesc ();
-	* proppage.cc: Run d2u and indent.
-	* propsheet.cc: Run d2u and indent.
-	* window.cc: Run d2u and indent.
-	* window.h: Run d2u and indent.
-
-2001-12-28  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in (iniparse.o): Accommodate newer bisons.
-
-2001-12-23  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* window.h (Window): New file, new class.
-	* window.cc (Window): New file, new class.
-
-	* threebar.h (ThreeBarProgressPage): New file, new class.
-	* threebar.cc (ThreeBarProgressPage): New file, new class.
-
-	* splash.h (SplashPage): New file, new class.
-	* splash.cc (SplashPage): Replace file with implementation of new
-	class.
-
-	* source.h (SourcePage): New file, new class.
-	* source.cc: Run indent.
-	(SourcePage): Add class implementation to this file.
-	(do_source): Remove, functionality subsumed by SourcePage::Create()
-	and SourcePage::OnDeactivate().
-	(dialog_proc): Remove, functionality subsumed by
-	SourcePage::OnActivate().
-
-	* site.h: Run indent.
-	(SitePage): Add class declaration.
-	* site.cc: Run indent.
-	(SitePage): Add class implementation.
-	(do_download_site_info_thread): New function.
-	(context): New var.  Context info for do_download_site_info_thread().
-	(do_download_site_info): New function.
-	(SitePage::Create, SitePage::OnInit SitePage::OnNext)
-	(SitePage::OnBack): SitePage class implementation..
-	(dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers, now handled
-	by SitePage members.
-	(dialog_proc): Remove, now handled by SitePage::OnInit and base class
-	functionality.
-	(do_site): Remove, now handled by do_download_site_info_thread() and
-	SitePage::OnNext functionality.
-	(get_site_list): Remove dismiss_url_status_dialog() call.
-
-	* root.h (RootPage): New file, new class.
-	* root.cc: Run indent.
-	(dialog_cmd): Pass parent HWND parameter to note(), yesno().
-	(dialog_proc): Remove.
-	(do_root): Remove
-	(dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL clauses from switch.
-	(RootPage::OnInit): New member function.  Move get_root_dir() logic to
-	here from do_root().
-	(RootPage::Create): New member function.
-	(RootPage::OnNext): New member function.  Move IDOK logic from
-	dialog_cmd() to here.
-	(RootPage::OnBack): New member function.
-
-	* propsheet.h (PropSheet): New file, new class.
-	* propsheet.cc (PropSheet): New file, new class.
-
-	* proppage.h (PropertyPage): New file, new class.
-	* proppage.cc (PropertyPage): New file, new class.
-
-	* postinstall.cc (do_postinstall): Add owner parameter.
-
-	* other.cc (do_other): Add owner parameter.
-
-	* nio-file.cc (NetIO::Purl): Pass NULL parent param to note().
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Pass NULL parent param to
-	get_ftp_auth().
-	* nio-http.cc (retry_get): Pass NULL parent param to get_auth(),
-	get_proxy_auth(),
-	and get_ftp_auth().
-	* nio-ie5.cc (NetIO::_url): Pass NULL parent param to note(),
-	get_auth(), get_proxy_auth().
-
-	* netio.h (get_auth, get_proxy_auth, get_ftp_auth): Add owner param.
-	* netio.cc (auth_common, NetIO::get_auth, NetIO::get_proxy_auth,
-	NetIO::get_ftp_auth)
-	(auth_common): Add owner param.  Pass owner param to DialogBox.
-	(NetIO::get_auth, NetIO::get_proxy_auth, NetIO::get_ftp_auth): Pass
-	owner param to auth_common().
-
-	* net.h (NetPage): New file, new class.
-	* net.cc: Run indent.
-	(net.h, threebar.h): Add includes.
-	(Progress): Add extern.
-	(dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, now handled by
-	property sheet logic.  Saved temporarily for reference.
-	(NetPage::Create, NetPage::OnInit, NetPage::OnDeactivate,
-	NetPage::OnNext, NetPage::OnBack):
-	New implementation of NetPage class members.
-	(do_net): Remove.
-	(dialog_proc): Remove.
-
-	* msg.h (fatal, note, yesno): Add owner param.
-	* msg.c (fatal, note, yesno, mbox): Add owner param.
-	(mbox): Remove MB_TOPMOST from MessageBox call.  Unnecessary and wrong
-	now that we have a parent.
-
-	* main.cc: Run indent.
-	(commctrl.h, proppage.h, propsheet.h, splash.h, source.h)
-	(localdir.h, net.h, site.h, choose.h, threebar.h, desktop.h): Include
-	headers.
-	(root_dialog_proc): extern into this file.
-	(Progress): Progress dialog defined here, used in several other files.
-	(WinMain): Instantiate and create Splash, Source, Root, LocalDir, Net,
-	Site, Chooser, Desktop pages and MainWindow sheet.  Call
-	InitCommonControls() to make sure Windows is set up for our use of
-	property sheets. Add pages to sheet.
-	Call MainWindow.Create() to "DoModal".  Remove main loop, that logic is
-	now handled by the PropSheet class.
-	(root.h): Add include.
-
-	* log.cc (log_save): Pass NULL parent to fatal().
-	(exit_setup): Pass NULL parent to note().
-
-	* localdir.h (LocalDirPage): New file, new class.
-	* localdir.cc:  Run indent.
-	(localdir.h): New include.
-	(threebar.h): New include.
-	(Progress): extern into this file.
-	(LocalDirPage::Create, LocalDirPage::OnInit, LocalDirPage::OnActivate)
-	(LocalDirPage::OnNext, LocalDirPage::OnBack): Implementation of
-	LocalDirPage.
-	(LocalDirPage::OnNext): Move log() call from do_local_dir() to here.
-	(dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers.
-	(do_local_dir): Remove.
-	(dialog_proc): Remove.
-	(cwd): Remove, not used by anything.
-
-	* install.cc: Run indent.
-	(process.h, threebar.h): New includes.
-	(Progress): extern into this file.
-	(ins_dialog, ins_action, ins_pkgname, ins_filename, ins_pprogress)
-	(ins_iprogress, ins_diskfull, init_event): Remove, now handled by
-	ThreeBarProgressPage.
-	(dialog_cmd, dialog_proc, dialog): Removed, handled in
-	ThreeBarProgressPage.
-	(init_dialog): Remove all mention of the above ins_* handles.  Now
-	handled in ThreeBarProgressPage.  Altered SetWindowText()s to call
-	ThreeBarProgressPage instance Progress directly.
-	(progress): Alter bar update logic to call ThreeBarProgressPage
-	instance Progress directly.
-	(uninstall_one): Alter SetWindowText()s to call ThreeBarProgressPage
-	instance Progress directly.
-	(install_one_source): Alter SetWindowText()s to call
-	ThreeBarProgressPage
-	instance Progress directly. Pass NULL parent to note().
-	(do_install_thread): Rename from do_install(), added owner param.
-	Alter SetWindowText()s to call ThreeBarProgressPage instance Progress
-	directly.
-	Remove dismiss_url_status_dialog() call, no longer necessary.  Remove
-	ShowWindow(<hide>) call, also unnecessary now.  Pass owner handle to
-	fatal().
-	(do_install_reflector): New function.
-	(do_install): New function.
-
-	* ini.cc (process.h, threebar.h): New includes.
-	(Progress): externed into this file.
-	(find_routine): Pass NULL parent to note().
-	(do_local_ini): Add owner param.
-	(do_remote_ini): Add owner param.  Pass owner to get_url_to_membuf()
-	and note().  Remove call to dismiss_url_status_dialog().
-	(do_ini_thread): Rename from do_ini().  Add owner param.  Pass owner to
-	do_local_ini(), do_remote_ini(), yesno(), and note().  Set next_dialog
-	to IDD_CHOOSER on exit.
-	(do_ini_thread_reflector): New function.
-	(context): New var.  Context for do_ini_thread.
-	(do_ini): New function.
-
-	* geturl.h (get_url_to_membuf, get_url_to_string, get_url_to_file): Add
-	owner param.
-	* geturl.cc (gw_dialog, gw_url, gw_rate, gw_progress, gw_pprogress,
-	gw_iprogress)
-	(gw_progress_text, gw_pprogress_text, gw_iprogress_text, init_event):
-	Removed.
-	(threebar.h): New include.
-	(Progress): externed into this file.
-	(dialog_cmd, dialog_proc, dialog): Removed, handled by
-	ThreeBarProgressPage now.
-	(init_dialog): Remove "if (gw_dialog == 0)" clause.  Alter
-	SetWindowText()s
-	and bar setting SendMessage()s to call ThreeBarProgressPage instance
-	Progress directly.  Remove "one bar only" logic, this is now handled
-	explicitly in the ThreeBarProgressPage class.
-	(progress): Altered bar and text update logic to call
-	ThreeBarProgressPage instance Progress directly.  Changed kbps
-	calculation to floating point and now print out a single decimal
-	place.
-	(get_url_to_membuf): Add owner param.  Pass it to init_dialog.
-	(get_url_to_string): Add owner param.  Pass it to get_url_to_membuf.
-	(get_url_to_file): Add owner param.  Pass it to init_dialog. Alter bar
-	update logic to call ThreeBarProgressPage instance Progress directly.
-	(dismiss_url_status_dialog):  Remove.
-
-	* fromcwd.cc (do_fromcwd): Add owner param.  Initialize found_ini to
-	false, was true.
-
-	* download.cc: Run indent.
-	(process.h, threebar.h): New includes.
-	(Progress): externed into this file.
-	(download_one): Add owner param.  Pass it to get_url_to_file().
-	(do_download_thread): Renamed from do_download.  Add owner param. When
-	calculating total_download_bytes, take binpicked and srcpicked into
-	account.  Remove call to dismiss_url_status_dialog(), no longer needed.
-	Pass owner handle to download_one() and yesno().
-	(do_download_reflector, do_download): New functions.
-	(context): New var.  Context for do_download_thread().
-
-	* dialog.h (D(x)): Add owner param.
-
-	* desktop.h (DesktopSetupPage): New file, new class.
-	* desktop.cc: Run indent.
-	(desktop.h): Add include.
-	(dialog_proc, do_desktop): Remove, now handled in
-	DesktopSetupPage::OnInit().
-	(dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, handled in
-	DesktopSetupPage::OnFinish(), DesktopSetupPage::OnBack(), and PropSheet
-	resp.
-	(DesktopSetupPage::Create, DesktopSetupPage::OnInit)
-	(DesktopSetupPage::OnBack, DesktopSetupPage::OnFinish): Implementation
-	of DesktopSetupPage.
-
-	* cistring.h: New file, new class.
-	* cistring.cc: New file, new class.
-
-	* choose.h: Run indent.
-	(Chooser): New class declaration.
-	* choose.cc: Run indent.
-	(do_choose): Add owner param.  Pass it to DialogBox() and
-	fatal().
-	(Chooser): New class implementation.
-
-	* res.rc (IDS_VERSION_INFO): New string.
-	(IDD_SOURCE, IDD_LOCAL_DIR, IDD_ROOT, IDD_SITE, IDD_OTHER_URL)
-	(IDD_DLSTATUS, IDD_INSTATUS, IDD_SPLASH, IDD_CHOOSE, IDD_DESKTOP):
-	Change WS_POPUP to WS_CHILD.  Numerous positioning/size changes
-	throughout.
-	(IDD_CHOOSE): Give template the WS_EX_CONTROLPARENT style to enable
-	TAB control navigation etc.  Give the controls a reasonable tab order.
-	Grouped radio buttons.  Something's still not right, can't tab away
-	from back/next/cancel group reliably.
-	* resource.h (IDD_CHOOSER): New dialog ID.
-
-	* Makefile.in (OBJS): Add cistring.o, proppage.o, propsheet.o,
-	threebar.o, and window.o.
-
-2001-12-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (listview_proc): Update the scrollbar when the headers are
-	dragged.
-	(pick_pkg_line::paint): Clip columns to prevent overlap.
-
-2001-12-20  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in: Add libcomctl32.a for setup.exe.
-	* archive.h (archive): Prevent non-child direct creation of the class.
-	* archive_tar.h (archive_tar): Prevent inaccurate synthetic copy and
-	assignment.
-	* choose.cc: Include commctrl for the choose header.
-	(NEW_COL_SIZE_SLOP): Define without magic numbers.
-	(pkgtrustp): Convert to function.
-	(set_action): Remove.
-	(add_required, fill_missing_category,default_trust): Use list syntax for
-	package list.
-	Use new set_action.
-	(choose_caption): Remove.
-	(topbucket::paint): New method.
-	(topbucket::empty): Ditto.
-	(topbucket::click): Ditto.
-	(topbucket::~topbucket): Ditto.
-	(paint): Remove i,ii and p as they are obsolete.
-	Remove header drawing code.
-	Use new chooser method to paint the chooser.
-	Use new chooser itemcount method.
-	(scroll_common): Rename to view::scroll.
-	Scroll the header window separately.
-	(list_vscroll, list_hscroll, list_click): Update for new chooser
-	methods.
-	(listview_proc): Look for header messages.
-	(note_width): Accept stringless calls.
-	(pick_line::set_line): Remove.
-	(pick_line::paint): Remove.
-	(pick_pkg_line::paint): Paint this one line, using the header column
-	widths.
-	(pick_category_line::paint): Paint this category, and anything in the
-	bucket.
-	(pick_line::click): Remove.
-	(pick_pkg_line::click): Handle a click.
-	(pick_category_line::click): Handle a click.
-	(_view): Rename all to view.
-	(view::view): Initialise the control contents.
-	(view::set_headers): Work with the header control.
-	(view::init_headers): Use list syntax for package list.
-	Rearrange the width logic a little.
-	(view::insert_pkg): Update to use the hierarchy.
-	(view::insert_category): Ditto.
-	(view::insert_at, view::insert_under): Remove.
-	(view::clear_view): Update to use the hierarchy.
-	(view::click): Update to use the hierarchy.
-	(set_view_mode): Use list syntax for package list.
-	Update for new chooser methods.
-	(DoInsertItem): New helper function. (Needs a home somewhere).
-	(create_listview): Remove choose control code and use the constructor
-	instead.
-	(dialog_cmd,scan2,do_choose): Use list syntax for package list.
-	* choose.h: Include newly required headers list and package_meta.
-	(_voew): Rename to view.
-	(pick_line): Convert to an ABC.
-	(pick_pkg_line): New class.
-	(pick_catgory_line): New class.
-	(topbucket): New class.
-	(view::scroll): New method created from listview_scroll function.
-	* desktop.cc (make_passwd_group): Use list syntax for package list.
-	* download.cc (do_download): Use list syntax for package list.
-	* fromcwd.cc (found_file): Use list syntax for package list.
-	* iniparse.y (pacakges): Use list syntax for package list.
-	* install.cc (uninstall_one): Use list syntax for package list.
-	(do_install): Use list syntax for package list.
-	* io_stream.h (io_stream): Prevent non-child direct creation of the
-	class.
-	Prevent inaccurate synthetic copy and assignment.
-	* list.h: Include required header stdlib.
-	Work on const correctness.
-	* package_db.cc (packagedb::getpackagebyname): Remove.
-	(packagedb::packagedb): Remove custom list code, and make db a local.
-	(packagedb::getfirstpackage): Remove.
-	(packagedb::getnextpackage): Remove.
-	(packagedb::addpackage): Remove.
-	(flush): Remove custom list code.
-	(packagedb::registerpackage): Remove.
-	(packagedb::packages): New static member.
-	(packagedb::task): New static member.
-	* package_db.h (PackageDBActions): New enum.
-	(packagedb): Remove getfirstpackage, getnextpackage, getpackagebyname,
-	addpackage, registerpackage, packages, packagecount, curr_package, db.
-	Add packages, task.
-	* pacakge_meta.cc: Include package_db.h.
-	(packagemeta::action_caption): New method.
-	(packagemeta::set_action): New method.
-	* package_meta.h (CategoryPackage): Initialise key.
-	(packagemeta): Initialise key.
-	Add set_action and action_caption methods.
-	Prevent inaccurate synthetic copy and assignment.
-	* resource.h (IDC_CHOOSE_LISTHEADER): New ID.
-	* source.cc: Include package_db for db manipulation.
-	(save_dialog): Set the db task.
-	* win32.h: Tell the w32 include headers what IE version to
-	expect/require.
-
-2001-12-06  Robert Collins  <rbtcollins@hotmail.com>
-
-	* README: Wishlist updates.
-
-2001-12-04  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_db.cc (getnextpackage): Don't overrun the array.
-
-2001-12-04  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add setup_version.o.
-	(version.c): Rename to setup_version.
-	* choose.cc (set_action): Prevent NULL pointer dereference.
-	(package_sort): Remove.
-	* fromcwd.cc (canonicalize_version): Moved to version.cc.
-	(check_ini): New function for use with find to see if there is a cached
-	setup.ini.
-	(do_fromcwd): Check for a cached setup.ini from any mirror site.
-	* ini.cc (find_routine): New function, for finding cached setup.ini's.
-	(do_local_ini): New function, drives parsing of local ini's.
-	(do_remote_ini): New function, drives parsing and caching of remote
-	ini's.
-	(do_ini): Move guts to do_remote_ini and do_local_ini.
-	* list.h (removebyindex): New method.
-	* other.cc (save_dialog): Use new site_list and all_site_list to add the
-	new site to the site picklist.
-	(dialog_cmd): Only save the dialog when exiting the dialog.
-	* res.rc (IDD_SITE): Make IDC_URL_LIST a multiple-selection control.
-	* site.cc (site_list_type): Move to site.h
-	(site_list): New global, sites chosen by the user.
-	(all_site_list): New global, all potential sites.
-	(site_list_type::init): New method, parses a mirror.lst URL string into
-	a site_list_type object.
-	(site_list_type::site_list_type): New method.
-	(check_if_enable_next): Examine the control, not a local variable.
-	(load_dialog): Select all the user chosen sites by default.
-	(save_dialog): Adjust for multiple selection semantics.
-	(save_site_url): Save all user chosen sites.
-	(dialog_cmd): Don't save the dialog when the listbox recieves a message
-	- thats not needed.
-	Remove obsolete other_url reference.
-	(dialog_proc): Use all_site_list instead of site_list.
-	(site_sort): Remove.
-	(get_site_list): Remove malloc use - use list template instead.
-	Move site_list_type initialisation to site_list_type::init().
-	(get_initial_list_idx): Renamed to ...
-	(get_saved_sites): this. Also read in multiple sites to the site_list.
-	(do_site): Use all_site_list not site_list.
-	Log all chosen sites.
-	* site.h: New file, defines site related class, functions and variables.
-	* state.h: Add comment about use of state.h
-	(mirror_site): Remove.
-	(other_url): Remove.
-	(MIRROR_SITE): Remove.
-	* version.cc: New file, for version-handling and related functions.
-
-2001-12-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in: Add filemanip.o to setup.
-	* archive.cc (archive::extract_file): Use new io_stream method 'copy'.
-	* archive_tar.h (archive_tar_file): Implement get_size virtual.
-	(archive_tar): Ditto.
-	* choose.cc (set_action): Use [] operator instead of getnth - its more
-	readable.
-	(paint): Ditto.
-	(_view::init_headers): Ditto.
-	(_view::insert_pkg): Ditto.
-	(set_view_mode): Ditto.
-	(scan2): Ditto.
-	(do_choose): Ditto.
-	(base): Moved to filemanip.cc.
-	(find_tar_ext): Ditto.
-	(parse_filename): Ditto.
-	(_Info::_Info): Remove.
-	* compress_bz.h (compress_bz): Implement get_size virtual.
-	* compress_gz.h (compress_gz): Implement get_size virtual.
-	* cygpackage.cc (cygpackage::destroy): Use array delete for char *
-	objects.
-	* download.cc (get_file_size): Move to filemanip.cc.
-	(check_for_cached): Use [] operator instead of getnth - its more
-	readable.
-	(download_one): Ditto.
-	* filemanip.cc: New file.
-	* geturl.cc (init_dialog): Make url a pointer to const as it is not
-	modified.
-	(get_url_to_membuf): New function - contains get_url_to_string worker
-	code.
-	(get_url_to_string): Becomes a trivial wrapper to get_url_to_membuf.
-	* geturl.h: Declare new prototype.
-	* ini.cc (do_ini): Use get_url_to_membuf and pass ini_init an io_stream.
-	Tidy up the error code a little.
-	* ini.h: Remove __cplusplus protection for ini_init.
-	(_Info): Remove.
-	* inilex.l: Remove old globals.
-	(ini_init): Use an io_stream for getting the characters.
-	(ini_getchar): Ditto.
-	* iniparse.y: Declare yylex as a C++ function.
-	(add_correct_version): Use [] operator instead of getnth - its more
-	readable.
-	* io_stream.cc (io_stream::move_copy): Use the copy method.
-	(io_stream::copy): New method to simply copy from one stream to another.
-	* io_stream.h (io_stream): New static method copy, and virtual method
-	get_size.
-	* io_stream_cygfile.cc (io_stream_cygfile::get_size): Implement this.
-	* io_stream_cygfile.h (io_stream_cygfile::get_size): Declare this.
-	* io_stream_file.cc (io_stream_file::get_size): Implement this.
-	* io_stream_file.h (io_stream_file::get_size): Declare this.
-	* io_stream_memory.h: Include errno as it's neded to parse the header.
-	(io_stream_memory::get_size): Implement this.
-	(io_stream_memory::st_size): Delete this.
-	* list.h: Change getnth into the [] operator.
-	* netio.cc (NetIO::NetIO): Change prototype to reflect Purl not being
-	modified.
-	(NetIO::set_url): Ditto.
-	(NetIO::open): Ditto.
-	* netio.h: As for netio.cc.
-	* nio-file.cc (NetIO_File::NetIO_File): Change prototype to reflect
-	Purl not being modified.
-	* nio-file.h: Ditto.
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
-	* nio-ftp.h (NetIO_FTP::NetIO_FTP): Ditto.
-	* nio-http.cc (NetIO_HTTP::NetIO_HTTP): Ditto.
-	* nio-http.h (NetIO_HTTP::NetIO_HTTP): Ditto.
-	* nio-i5.cc (NetIO_IE5::NetIO_IE5): Ditto.
-	* nio-i5.h (NetIO_IE5::NetIO_IE5): Ditto.
-	* package_meta.cc (packagemeta::~packagemeta): Bugfix: use array delete.
-	* package_source.cc (packagesource::set_canonical): Ditto.
-	(packagesource::set_cached): Ditto.
-	* package_source.h (site::~site): Ditto.
-	* site.cc: Change site_list_type to a class, and search and replace
-	sort_key to key globally.
-
-2001-12-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_source.cc (packagesource::set_canonical): Filename was out by
-	one.
-
-2001-11-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Remove category_list - it's not needed.
-	* README: More wishlist updates.
-	* category.cc (Category::Category): Initialise new members.
-	(Categorycmp): New function.
-	* category.h (Category): New member key for template use.
-	* category_list.cc: Remove.
-	* category_list.h: Remove.
-	(Categorycmp): New function prototype.
-	* choose.cc: Remove category_list - not needed.
-	(set_action): Only show the 'source' option when the source is actually
-	available.
-	(add_required): Fix recursion limiter to 5.
-	(fill_missing_category): Use list access.
-	(default_trust): Ditto.
-	(pick_line::paint): Ditto.
-	(_view::init_headers): Ditto.
-	(_view::insert_pkg): Ditto.
-	(_view::insert_category): Ditto.
-	(_view::click): Ditto.
-	(set_view_mode): Ditto.
-	(do_choose): Ditto.
-	* cygpackage.h: Remove category_list - not needed.
-	* geturl.cc (get_url_to_string): Fix null byte insertion.
-	* inipatse.y: Remove category_list - not needed.
-	(categories): Use list access.
-	* package_db.cc: Ditto.
-	* package_db.h: Remove category_list - not needed.
-	(packagedb): Use the list template for categories.
-	* package_meta.cc (add_category): Ditto.
-	* package_meta.h (CategoryPackage): Link to the category as well.
-	(packagemeta): Use a list of CategoryPackages instead of Categories
-	for more memory efficient cross-referencing.
-
-2001-11-30  Robert Collins  <rbtcollins@hotmail.com>
-
-	* package_db.cc (packagedb::flush): Write a canonical version for all
-	packages irrespective of the media they were installed from.
-
-2001-11-29  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add package_source and rfc1738.
-	* README: Wishlist update.
-	* category_list.cc (register_category): Use references.
-	* category_list.h (CategoryList): Ditto.
-	* choose.cc (isinstalled): Remove.
-	(pkgtrustp): New macro.
-	(set_action): Use packagemeta.
-	(add_required): Ditto.
-	(choose_caption): Example package to choose caption, rather than state
-	flags.
-	(check_existence): Remove.
-	(set_existence): Remove old code.
-	(fill_missing_category): Use packagemeta.
-	(keep_or_skip): Remove.
-	(default_trust): Use packagemeta and set trust values directly.
-	(pick_line::set_line): Use packagemeta.
-	(_view::insert_pkg): Ditto.
-	(_view::insert_category): Ditto.
-	(_view::click): Ditto.
-	(set_view_mode): Ditto. Also remove "exclude" code.
-	(create_listview): Use packagemeta.
-	(dialog_cmd): Ditto.
-	(getpkgbyname): Remove
-	(scan2): Use packagemeta. Temporarily comment out the holefinding code.
-	(read_installed_db): Remove.
-	(package_sort): Use packagemeta.
-	(do_choose): Use packagemeta. Don't sort the packages - the db does
-	that.
-	* choose.h: Use packagemeta.
-	* cygpackage.cc (cygpackage::cygpackage): Initialise all variables.
-	(cygpackage::cygpackage): Ditto.
-	(cygpackage::set_canonical_version): Copy the passed string.
-	(cygpackage::~cygpackage): Move cleanup code to destroy().
-	(cygpackage::destroy): New function.
-	(cygpackage::getfirstfile): Use a separate buffer.
-	(cygpackage::getnextfile): Ditto.
-	(cygpackage::Canonical_version): New function.
-	(cygpackage::set_sdesc): Ditto.
-	(cygpackage::set_ldesc): Ditto.
-	* cygpackage.h (cygpackage::Canonical_version): New method.
-	(cygpackage::set_sdesc): New method.
-	(cygpackage::set_ldesc): New method.
-	(cygpackage::SDesc): New method.
-	(cygpackage::LDesc): New method.
-	(cygpackage::set_canonical_version): New method.
-	* desktop.cc: Include packagedb headers.
-	(make_password_group): Use packagemeta.
-	* download.cc: Include packagedb headers.
-	(check_for_cached): New method to find any cached file and fill out the
-	database info.
-	(download_one): Take a packagesource, support multiple mirrors.
-	(do_download): Use packagemeta.
-	* from cwd.cc: Include packagedb headers.
-	(found_file): Use packagemeta.
-	* ini.cc (do_ini): Beginning of multiple-mirror support.
-	* ini.h (CategoryPackage): Remove.
-	(Dependency): Remove.
-	(Package): Remove.
-	(new_package,getpkgbyname,getpackagecategorybyname,add_category):
-	Remove.
-	* inilex.l: Support multiple mirrors.
-	* iniparse.y: Include packagedb headers.
-	(parser): Use packagemeta.
-	(new_package): Remove.
-	(add_correct_version): New function.
-	(new_requirement): Remove.
-	(add_category): Remove.
-	* install.cc (uninstall_one): Use packagemeta.
-	(install_one_source): New function.
-	(install_one): Use packagemeta.
-	(do_install): Use packagemeta.
-	* io_stream.cc (io_stream::move): Bugfix on move/copy case.
-	* io_stream_cygfile.cc (io-stream_cygfile::set_mtime): Do not reopen the
-	file after setting the mtime, it makes no sense, and results in 0 length
-	files.
-	* io_stream_file.cc (io-stream_file::set_mtime): Ditto.
-	* list.h: New file, template class for a form of list.
-	* package_db.cc (packagedb::registerpackage): New function.
-	* package_db.h (packagedb::npackages ()): New method.
-	* package_meta.cc (packagemeta::add_version): Use list template.
-	(packagemeta::set_installed): Ditto.
-	(packagemeta::add_category): New method.
-	* package_meta.h: Include necessary headers to parse the class.
-	(CategoryPackage): New class.
-	(packagemeta): Initialise all members.
-	(packagemeta::SDesc): New method.
-	(packagemeta::Categories): New method.
-	(packagemeta::add_category): Ditto.
-	(packagemeta::versions): Change to be a list instance.
-	* package_source.cc (packagesource::set_canonical): New method.
-	(packagesource::set_cached): New method.
-	* package_source.h: Include necessary headers to parse the class.
-	(site): New class.
-	(packagesource::packagesource): Initialize all members.
-	(packagesource): Make this class non-abstract.
-	* package_version.cc (packageversion::packageversion): New method.
-	* package_version.h (Dependency): New class.
-	(packageversion::Canonical_vesion): New method.
-	(packageversion::SDesc): New method.
-	(packageversion::LDesc): New method.
-	(packageversion::new_requirement): Ditto.
-	(packageversion::srcpicked, binpicked): What to install.
-	(packageversion::src, bin): Installation source data.
-	* rfc1738.cc: New file. Escapes special characters in URL's.
-	* rfc1738.h: Ditto.
-
-2001-11-26  Gary R. Van Sickle  <g.r.vansickle@worldnet.att.net>
-
-	* nio-http.cc (NetIO_HTTP::NetIO_HTTP): Stop header parsing when
-	SimpleSocket::gets() returns a zero-length string, so that we
-	don't end up eating the entire stream thinking it's all header info.
-
-2001-11-23  Robert Collins  <rbtcollins@hotmail.com>
-
-	* install.cc (badrename): Remove.
-	(do_install): Use packagedb flush method to write
-	/etc/setup/installed.db.
-	* io_stream.cc (io_stream::move_copy): New method.
-	(io_stream::move): New method.
-	* io_stream.h (io_stream): New methods move and move_copy.
-	* io_stream_cygfile.cc (io_stream_cygfile::move): New method.
-	* io_stream_cygfile.h (io_stream_cygfile): New method move.
-	* io_stream_file.cc (io_stream_file::move): New method.
-	* io_stream_file.h (io_stream_file): New method move.
-	* package_db.cc (packagedb::flush): New method.
-	* package_db.h (packagedb): New method flush.
-
-2001-11-23  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add package_version.
-	* ategory.cc (Category::Category): Update constructors.
-	* category_list.cc (CategoryList::register_category): Insert correctly.
-	* choose.cc: Include package_version.h, not package.h.
-	* cygpackage.cc: Ditto.
-	(cygpackage::uninstall): New method.
-	* cygpackage.h (cygpackage): Rename genericpackage to packageversion.
-	New method uninstall.
-	* hash.cc (add, has, enumerate): Change prototype to be accurate.
-	* hash.h (hash): Change prototypes to be accurate.
-	* ini.h (_Info): New parameterless constructor.
-	(CategoryPackage): New constructor.
-	(Package): Ditto.
-	* install.cc: Don't include unneeded headers.
-	Include package database headers.
-	(hash::add_subdirs): Remove.
-	(uninstall_one): Use packagemeta->uninstall to perform the
-	uninstallation. Don't uninstall source packages.
-	(do_install): Just can uninstall_one once as we ignore source packages
-	now.  Don't copy the installed.old database accross, instead iterate
-	through the packagedb packages list and write the installed packages
-	out.
-	* package_db.cc: Include package_version.h, not package.h.
-	(packagedb::packagedb): Never let db be undefined.
-	Record the installation filename, so we can reconstruct installed.db.
-	(packagedb::addpackage): Insert packages in alpha sorted order.
-	(packagedb::categories): Initialise correctly.
-	* package_meta.cc: Include win32 and mount headers as a workaround to
-	current io_stream limitations. Include a TODO about that.
-	(standard_dirs): New, from install.cc.
-	(hash::add_subdirs): New, from install.cc.
-	(packagemeta::set_installed): Rename genericpackage to packageversion.
-	(packagemeta::uninstall): New method.
-	* package_meta.h: Rename genericpackage to packageversion.
-	(packagemeta): Update constructor.
-	(add_version, set_installed): Rename genericpackage to packageversion.
-	(uninstall): New method.
-	(installed_from): New member.
-	* package_source.cc: New file.
-	* package_source.h: New file.
-	* package_version.cc: New file.
-	* package_version.h: New file.
-	* package.cc: Removed.
-	* package.h: Removed.
-
-2001-11-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add category.o and category_list.o.
-	* category.h: New file.
-	* category.cc: New file.
-	* category_list.h: New file.
-	* category_list.cc: New file.
-	* choose.cc: Include category headers.
-	(fill_missing_category): Use package_db to access global categories.
-	(_view::insert_pkg): Ditto.
-	(_view::insert_category): Ditto.
-	(set_view_mode): Ditto.
-	(getcategorybyname): Remove.
-	* cygpackage.h: Include category_list.h to parse this correctly.
-	(cygpackage): New virtual &Categories.
-	* ini.h (_CategoryPackage): More C to C++ conversion.
-	(Category): Remove.
-	(getcategorybyname): Remove.
-	(register_category): Remove.
-	* iniparse.y: Include package db and category headers.
-	(categories): Use package_db to access global categories.
-	(category): Remove.
-	(ncategories): Remove.
-	(register_category): Remove.
-	* package.h: New virtual &Categories.
-	* package_db.cc (packagedb::packagedb): Don't read the installed db
-	twice.
-	(packagedb::categories): Declare.
-	* package_db.h (packagedb): New member categories for global categories
-	list.
-
-2001-11-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.h: Don't include ini.h
-	* ini.h: Allow pure c++ in the header file.
-
-2001-11-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* install.cc (do_install): Write a version 2 installed.db file.
-	* package_db.cc (packagedb::packagedb): Read version 1 and 2
-	installed.db files.
-
-2001-11-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Add package abstraction objects.
-	* choose.cc: Include package abstraction headers.
-	(read_installed_db): Use packagedb class and ignore installed sources.
-	* cygpackage.cc: New file.
-	* cygpackage.h: New file.
-	* filemanip.h (get_file_size): Use unixy types.
-	* package.h: New file.
-	* package.cc: New file.
-	* package_db.cc: New file.
-	* package_db.h: New file.
-	* package_meta.cc: New file.
-	* package_meta.h: New file.
-
-2001-11-21  Robert Collins  <rbtcollins@hotmail.com>
-
-	* REAME: Updates to wishlist.
-
-2001-11-16  Robert Collins  <rbtcollins@hotmail.com>
-
-	* README: Updated and added my list of wishlist and todo items.
-
-2001-11-14  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (OBJS): Include io_stream_memory in setup.exe.
-	* archive_tar.cc (archive_tar::write): New prototype.
-	(archive_tar::seek): New method.
-	* archive.h (archive_tar_file): Update write() and add seek().
-	(archive_tar): Ditto.
-	* archive_tar_file.cc (archive_tar_file::write): New prototype.
-	(archive_tar_file::seek): New method.
-	* compress_bz.cc (compress_bz::write): New prototype.
-	(compress_bz::seek): New function.
-	* compress_bz.h (compress_bz): Update write() and add seek().
-	* compress_gz.cc (compress_gz::write): New prototype.
-	(compress_gz::seek): New function.
-	* compress_gz.h (compress_gz): Update write() and add seek().
-	* geturl.cc: Include io_stream headers.
-	(GUBuf): Remove.
-	(get_url_to_string): Use a io_stream_memory buffer instead of GUBuf.
-	* io_stream.h (io_stream_seek_t): New enum.
-	(io_stream): Update write() and add seek().
-	* io_stream_cygfile.cc (io_stream_cygfile::write): New prototype.
-	(io_stream_cygfile::seek): New function.
-	* io_stream_cygfile.h (io_stream_cygfile): Update write() and add
-	seek().
-	* io_stream_file.cc (io_stream_file::write): New prototype.
-	(io_stream_file::seek): New function.
-	* io_stream_file.h (io_stream_file): Update write() and add seek().
-
-2001-11-13  Brian Keener  <bkeener@thesoftwaresource.com>
-
-	* localdir.cc: Add headers unistd.h and port.h.
-	(save_local_dir): Expand search logic to include local directory for
-	location of file last-cache.
-	(dialog_cmd): Skip IDD_ROOT when downloading and use Back button.
-	(do_local_dir): Expand search logic to include local directory for file
-	last-cache.
-	* res.rc (IDD_CHOOSE_DIALOG): Add hotkey to View button.
-	* Source.cc (dialog_cmd): Skip IDD_ROOT if select Download from
-	Internet.
-	(do_source): Default to Install from Internet on first entry or
-	previous selection if backing up from IDD_ROOT or IDD_LOCAL_DIR.
-
-2001-11-13  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (find_tar_ext): Only match at the end of the string.
-	(getpkgbyname): Prevent NULL pointer dereference.
-
-2001-11-13  Robert Collins  <rbtcollins@hotmail.com>
-
-	* Makefile.in (CFLAGS): Add warnings and -Werr.
-	(WARNONLY_FLAGS): For sources that produce (harmless) errors no matter
-	what.
-	(OBJS): Add io_stream class' objects.
-	(autoload.o): Use WARNONLY_FLAGS.
-	(inilex.o): Ditto.
-	(iniparse.o): Ditto.
-	* archive.cc: New file.
-	* archive.h: New file.
-	* archive_tar.cc: New file.
-	* archive_tar.h: New file.
-	* archive_tar_file.cc: New file.
-	* autoload.c: Fix compiler warnings (unused, deprecated conversion).
-	* choose.cc: Use io_stream.h, not mount.h.
-	Run indent.
-	(find_tar_ext): Rewritten to use strstr, and to accept .tar as an
-	extension.
-	(read_installed_db): Use io_streams.
-	* choose.h: Run indent.
-	* compress.cc: New file.
-	* compress.h: New file.
-	* compress_bz.cc: New file.
-	* compress_bz.h: New file.
-	* compress_gz.cc: New file.
-	* compress_gz.h: New file.
-	* concat.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* concat.h: Run indent.
-	* desktop.cc: Run indent.
-	Include mklink2.h rather than redefining by hand.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(etc_profile): Fix compiler warning (deprecated conversion).
-	(make_link): Fix compiler warning (deprecated conversion).
-	Tidy up use of args variable - consolidate into argbuf.
-	(start_menu): Fix compiler warning (deprecated conversion).
-	(desktop_icon): Fix compiler warning (deprecated conversion).
-	(make_etc_profile): Fix compiler warning (deprecated conversion).
-	(uexists): Fix compiler warning (deprecated conversion).
-	(check_desktop): Fix compiler warning (deprecated conversion).
-	(check_startmenu): Fix compiler warning (deprecated conversion).
-	* dialog.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(fatal): Fix compiler warning (deprecated conversion).
-	* dialog.h: Run indent.
-	* diskfull.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* download.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(download_one): Fix compiler warning (signed vs unsigned comparison).
-	* filemanip.h: Run indent.
-	* find.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(find): Fix compiler warning (deprecated conversion).
-	* find.h: Run indent.
-	* fromcwd.cc: Run indent.
-	* geturl.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(dialog_cmd): Return a value.
-	(dialog_proc): Remove unused variables.
-	Return a value.
-	(get_url_to_file): Fix compiler warning (deprecated conversion).
-	* geturl.h: Run indent.
-	* hash.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* hash.h: Run indent.
-	* ini.cc: Run indent.
-	Use io_streams.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(do_ini): Use io_streams for local io.
-	* ini.h: Run indent.
-	* inilex.l (ignore_line): Fix compiler warning (is not a prototype).
-	Fix compiler warning (brackets for truth assignment).
-	* install.cc: Run indent.
-	Fix compiler warning (/* in comment).
-	Use io_streams.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(dialog_cmd): Return a value.
-	(dialog_proc): Return a value.
-	(start_tics): Deleted - was unused.
-	(badrename): Fix compiler warnings (unused, deprecated conversion).
-	(standard_dirs): Fix compiler warning (deprecated conversion).
-	(exists): Remove.
-	(uninstall_one): Convert to io_streams.
-	(install_one): Convert to io_streams.
-	(do_install): Convert to io_streans.
-	Fix compiler warning (deprecated conversion).
-	* io_stream.cc: New file.
-	* io_stream.h: New file.
-	* io_stream_cygfile.cc: New file.
-	* io_stream_cygfile.h: New file.
-	* io_stream_file.cc: New file.
-	* io_stream_file.h: New file.
-	* localdir.cc: Run indent.
-	Use io_streams.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(get_root_dir_now): Remove.
-	(save_local_dir): Convert to io_streams.
-	(dialog_cmd): Return a value.
-	(do_local_dir): Convert to io_streams.
-	(log.cc): Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(log): Fix compiler warning (deprecated conversion).
-	(log_save): Fix compiler warning (deprecated conversion).
-	* log.h: Run indent.
-	(log): Fix compiler warning (deprecated conversion).
-	(log_save): Fix compiler warning (deprecated conversion).
-	* main.cc: Run indent.
-	Don't include "netio.h".
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(netio_test): Remove.
-	(sid_auth): Fix compiler warning (partially bracketed initialiser).
-	(WinMain): Return a value.
-	* mkdir.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* mklink2.c: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(mkcygsymlink): New function.
-	* mklink2.h: New file.
-	* mount.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(create_mount): Remove unused variables.
-	(cygpath): Fix compiler warning (signed vs unsigned comparison).
-	* mount.h: Run indent.
-	* msg.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(msg): Fix compiler warning (deprecated conversion).
-	(mbox): Fix compiler warning (deprecated conversion).
-	* msg.h: Run indent.
-	(msg): Fix compiler warning (deprecated conversion).
-	* net.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(dialog_cmd): Return a value.
-	* netio.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(auth_cmd): Return a value.
-	* netio.h: Run indent.
-	* nio-file.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(NetIO_File::NetIO_File): Fix compiler warning (deprecated conversion).
-	* nio-file.h: Run indent.
-	* nio-ftp.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* nio-ftp.h: Run indent.
-	* nio-http.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* nio-http.h: Run indent.
-	* nio-ie5.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* nio-ie5.h: Run indent.
-	* other.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(dialog_cmd): Return a value.
-	* port.h: Run indent.
-	* postinstall.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(cmd): Fix compiler warning (deprecated conversion).
-	(eun): Fix compiler warning (deprecated conversion).
-	* root.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* simpsock.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* simpsock.h: Run indent.
-	* site.cc: Run indent.
-	Use io_streams.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(get_root_dir_now): Remove.
-	(save_site_url): Convert to io_streams.
-	(dialog_cmd): Return 0.
-	(get_initial_list_idx): Convert to io_streans.
-	* source.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(check_if_enable_next): Remove.
-	(load_dialog): Remove unused variables.
-	(save_dialog): Ditto.
-	(dialog_cmd): Return a value.
-	* splash.cc: Return a value.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	(dialog_cmd): Return a value.
-	* state.cc: Run indent.
-	(cvsid): Fix compiler warnings (unused, deprecated conversion).
-	* state.h: Run indent.
-	* tar.h: Remove.
-	* tar.cc: Remove.
-
-2001-11-12  Christopher Faylor  <cgf@redhat.com>
-
-	* desktop.cc (start_menu): Change start menu name to "Cygwin".
-	(check_startmenu): Ditto.
-
-2001-11-11  Christopher Faylor  <cgf@redhat.com>
-
-	* choose.cc (parse_filename): Finish reorganization by correctly
-	decrementing p in memmove.
-
-2001-11-11  Christopher Faylor  <cgf@redhat.com>
-
-	* choose.cc (parse_filename): Reorganize code to work around gcc
-	optimization problem.
-
-2001-11-09  Gareth Pearce  <tilps@hotmail.com>
-
-	* choose.cc (set_action): Allow skip as an option for installed
-	packages that have version number not listed in setup.ini.
-
-2001-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (set_cation): Backout last change.
-	(choose_caption): Ditto.
-
-2001-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ini.h (actions): Remove - transferred to choose.h.
-	(views): Ditto.
-	* choose.h: Protect class's from "C" compilers.
-	 (actions): New enum, from ini.h. This may not be the 'right' place
-	but that place doesn't exist yet.
-	(_views): New enum, from ini.h.
-	* choose.cc (set_action): Handle installed packages with a version not
-	in setup.ini.
-	(choose_caption): Ditto.
-	* iniparse.y: Rearrange header order to handle new ini.h.
-
-2001-11-10  Robert Collins  <rbtcollins@hotmail.com>
-
-	* ini.h (_Info): Fix compiler warnings (signed vs unsigned comparison).
-	(registry_category): Fix compiler warning (deprecated conversion).
-	* iniparse.y (registry_category): Ditto.
-	* choose.cc (cvsid): Fix compiler warnings (unused, deprecated
-	conversion).
-	(add_requried): Remove unused variable.
-	(choose_caption): Handle all enumeration values via a default.
-	(paint): Fix compiler warnings (unused, deprecated conversion).
-	(scroll_common): Fix compiler warnings (unused, signed vs unsigned
-	comparison).
-	(list_clicK): Fix compiler warnings (signed vs unsigned comparison).
-	(note_width): Fix compiler warnings (deprecated conversion).
-	(keep_or_skip): Fix compiler warnings (unused).
-	(_view::mode_caption): Fix compiler warnings (deprecated conversion).
-	(set_view_mode): Fix compiler warnings (unused).
-	(create_listview): Fix compiler warnings (unused, incorrect format,
-	reaches end of function).
-	(dialog_proc): Fix compiler warnings (unused).
-	(read_installed_db): Fix compiler warnings (unused, deprecated
-	conversion).
-	* choose.h (_header): Fix compiler warnings (deprecated conversion).
-	(_view): Ditto.
-
-2001-11-08  Pavel Tsekov  <ptsekov@syntrex.com>
-
-	* simpsock.h (SimpleSocket::invalidate): Declare new method.
-	* simpsock.cc (SimpleSocket::invalidate): Implement new method.
-	(SimpleSocket::SimpleSocket): Initialize buf to zero. Do not allocate
-	memory for buf in the constructor.
-	(SimpleSocket::~SimpleSocket): Use SimpleSocket::invalidate().
-	(SimpleSocket::printf): Use SimpleSocket::write() instead of send().
-	(SimpleSocket::write): Check object consistency - return -1 on error.
-	invalidate() the object on socket write error.
-	(SimpleSocket::fill): Check object consistency - return -1 on error.
-	invalidate() the object if socket read error is encountered and there
-	is no more data available in the internal read buffer.
-	Allocate memory for the internal read buffer.
-	(SimpleSocket::gets): Return zero (NULL pointer) if error is encountered
-	during fill() and no more data is available in the internal read buffer.
-	(SimpleSocket::read): Check object consistency - return -1 on error.
-	invalidate() the object if socket read error is encountered.
-	* nio-ftp.cc (NetIO_FTP:NetIO_FTP): Allow 125 as valid response code to
-	the RETR command (fix for MS IIS ftp server 5 - possibly others too).
-	(NetIO_FTP::ok): Check if the SimpleSocket object is ok().
-	(NetIO_FTP::read): Use NetIO_FTP::ok().
-	* nio-http.cc: Check for valid return value of SimpleSocket::gets().
-	(NetIO_HTTP::ok): Check if the SimpleSocket object is ok().
-
-2001-11-09  Robert Collins  <rbtcollins@hotmail.com>
-
-	* simpsock.cc (cvsid): Avoid compiler warnings (not used, deprecated
-	conversion).
-	(SimpleSocket::SimpleSocket): Avoid compiler warnings (deprecated
-	conversion).
-	(SimpleSocket::printf): Ditto.
-	(SimpleSocket::write): Ditto.
-	* simpsock.h (SimpleSocket): Avoid compiler warnings for constructor,
-	printf and write.
-	* nio-ftp.cc (cvsid): Avoid compiler warnings (not used, deprecated
-	conversion).
-	(NetIO_FTP::NetIO_FTP): Remove unused variable done.
-	* nio-http.cc (cvsid): Avoid compiler warnings (not used, deprecated
-	conversion).
-
-2001-11-07  Charles Wilson  <cwilson@ece.gatech.edu>
-
-	* geturl.cc (get_url_to_string): clean up memory leak
-	(get_url_to_file): ditto
-
-2001-11-06  Robert Collins  <rbtcollins@hotmail.com>
-
-	* localdir.cc (dialog_cmd): Go back to IDD_ROOT in every case.
-	* source.cc (dialog_cmd): Go forward to IDD_ROOT in every case.
-
-2001-11-06  Pavel Tsekov  <ptsekov@syntrex.com>
-
-	* fromcwd.cc (found_file): Free() memory containing the version and
-	filepath information for a given package, before replacing the pointers
-	which reference this memory.
-
-2001-11-06  Robert Collins  <rbtcollins@hotmail.com>
-
-	* fromcwd: Fix compiler warnings for cvsid.
-	(canonicalize_version): Fix compilter warnings.
-	(do_fromcwd): Ditto.
-	* version.h: Fix compiler warnings for canonicalize_version.
-
-2001-11-03  Robert Collins  <rbtcollins@hotmail.com>
-
-	* res.rc (IDD_CHOOSE): Move the view caption to the right hand side.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* res.rc (IDD_CHOOSE): Tweak for use on a 640x480 screen.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (set_action): Correctly allow skip for any uninstalled
-	package.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (default_trust): Change the "Required" forced install
-	category to "Base".
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc: Ran indent.
-	(set_action): When the requested trust level is missing and the level
-	was not user requested, set the action to ACTION_SAME_CURR.
-
-2001-11-01  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in (mingw_getopt.o): Fix typo in non-verbose compilation.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (_view::init_headers): Resync with the paint logic.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (add_required): Allow SKIP and SRC_ONLY for currently
-	installed packages.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (default_trust): Autoset currently installed packages per
-	the user's selection of prev/curr/exp.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* splash.cc (dialog_proc): Return TRUE as specified in the WIN32 API.
-
-2001-11-02  Pavel Tsekov  <ptsekov@syntrex.com>
-
-	* geturl.cc (is_showing): Remove.
-	(is_local_install): New static variable. Controls whether the
-	progress dialog and the supporting thread will be created.
-	(dialog_proc): Return TRUE to WM_INITDIALOG as specified by the WIN32
-	API.
-	(init_dialog): Remove usage of SetForegroundWindow and is_showing.
-	This prevents the progress dialog to gain control over the
-	application and fixes the "setup.exe going to background" problem.
-	(progress): Use is_local_install.
-	(get_url_to_string): Set is_local_install.
-	(dismiss_url_status_dialog): Use is_local_install.
-	* install.cc (dialog_proc): Return TRUE as specified in WIN32 API.
-	(init_dialog): Remove usage of SetForegroundWindow.
-	This prevents the progress dialog to gain control over the
-	application and fixes the "setup.exe going to background" problem.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (list_click): Change r to row for clarity.
-	When we shrink the list below 1 page, scroll to the top of the list.
-	(_view::click): Return the actual change for contractions.
-	(dialog_proc): Return TRUE to WM_INITDIALOG as specified by the Win32
-	API.
-
-2001-11-02  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc (dialog_cmd): Swap cygwin root selection and local dir
-	selection order.
-	* localdir.cc: Ran indent.
-	(get_root_dir_now): New function.
-	(save_local_dir): New function.
-	(dialog_cmd): Use it and swap cygwin root selection and local dir
-	selection order.
-	(do_local_dir): If there is a saved local dir, read it in.
-	* net.cc (dialog_cmd): Swap cygwin root selection and local dir
-	selection order.
-	* root.cc (dialog_cmd): Ditto.
-	* source.cc (dialog_cmd): Ditto.
-
-2001-11-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc(list_vscroll): Return 0 as required by win32.
-	(list_hscroll): Ditto.
-	(list_click): Ditto.
-
-2001-11-01  Robert Collins  <rbtcollins@hotmail.com>
-
-	* argv.cc: Remove.
-	* argv.h: Remove.
-	* main.cc(WinMain): Use __argv to retrieve command line parameters.
-	* Makefile,in: Remove argv.o.
-
-2001-11-01  Matt Hargett  <matt@use.net>
-
-	* geturl.cc (progress): Change int to unsigned int to eliminate
-	lint warnings.
-	* (get_url_to_string): Check for NULL pointer.
-	* mount.cc (find2): Use free instead of delete for malloc'd
-	memory.
-	* nio-http.cc (NetIO_HTTP::NetIO_HTTP): Fix memory leak.
-
-2001-10-31  Robert Collins  <rbtcollins@hotmail.com>
-
-	* choose.cc(_view::insert_under): Handle linen > nlines and lines[linen]
-	with neither a package nor a category. The lines[linen] bug was reported
-	by Matt (matt@usa.net).
-	(read_installed_db): Bugfix for testing whether a package has a source
-	tarball.  Reported by Matt (matt@usa.net).
-	* geturl.cc(dialog): Rename gw_dialog to local_gw_dialog to avoid
-	programmer confusion and lint errors. Reported by Matt (matt@usa.net).
-
-2001-10-31  Robert Collins  <rbtcollins@hotmail.com>
-
-	* argv.cc: New file, converts arguments for -mwindows
-	programs. (Simplified derivation from dcrt0.cc.)
-	* argv.h: New file.
-	* Makefile,in: Add argv.o and mingw_getopt.o to setup.exe object list.
-	Add mingw_getopt.o build rule.
-	* main.cc(WinMain): Initialise argv and argc for use by getopt.
-
-2001-10-27  Christopher Faylor  <cgf@redhat.com>
-
-	* res.rc: Rearrange info on top line slightly.
-
-2001-10-27  Christopher Faylor  <cgf@redhat.com>
-
-	* desktop.cc (make_passwd_group): Move file creation earlier in the
-	process to ensure that passwd-grp.bat reflects desired operation.
-
-2001-27-10  Trevor Forbes  <t4bs@hotmail.com>
-
-	* postinstall.cc (each): Remove "*.done" file else rename will fail.
-
-2001-10-16  Christopher Faylor  <cgf@redhat.com>
-
-	* res.rc: Oops.  Take 640x480 screen size into account.
-
-2001-10-16  Christopher Faylor  <cgf@redhat.com>
-
-	* res.rc: Enlarge chooser screen.
-
-2001-10-12  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in: Accomodate changes to w32api_include macro.
-
-2001-10-12  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in: Use correct flags for windres.
-
-2001-10-12  Christopher Faylor  <cgf@redhat.com>
-
-	* Makefile.in (CFLAGS): Remove -nostdinc from CFLAGS.
-
-2001-10-12  Christopher Faylor  <cgf@redhat.com>
-
-	* choose.cc (pick_line::paint): Reorganize after botched patch.
-
-2001-10-12  Christopher Faylor  <cgf@redhat.com>
-
-	* choose.cc (pick_line::paint): Add missing declaration.
-
-2001-10-10  Ralf Habacker <Ralf.Habacker@freenet.de>
-
-	* choose.cc (pick_line::paint): Add package name to sdesc for display.
-
-Wed Sep 26 21:39:00  Robert Collins rbtcollins@hotmail.com
-
-	* choose.cc (_view::insert_pkg): Correctly exit loop.
-	* iniparse.y (register_category): Always insert new categories.
-
-Fri Sep 21 13:56:32 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* inilex.l (yylex): For comments, eat all characters up to, but not
-	including newline.
-
-Sun Aug 26 12:50:01 2001  John Marshall  <jmarshall@acm.org>
-
-	* fromcwd.cc (found_file): Use correct package name when adding an
-	unknown package rather than random stack garbage.
-
-Sun Aug 12 14:25:21 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* desktop.cc (make_passwd_group): .bat files need \r\n endings.
-
-Wed Aug  8 13:53:47 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* desktop.cc (etc_profile): Leave environment variables untouched.
-
-2001-08-07  Corinna Vinschen  <corinna@vinschen.de>
-
-	* autoload.c: Add dynamic load statements for NT/W2K
-	advapi32 functions not available in 9x/ME.
-	* main.cc (set_default_dacl): New function.
-	(WinMain): Call `set_default_dacl' if running on NT/W2K.
-
-Sat Aug  4 21:35:53 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* ini.h (_CategoryPackage): Change pkg field to pkgname for
-	consistency.
-	* choose.cc: Use pkgname field when referencing _CategoryPackage
-	throughout.
-	(fill_missing_category): Don't add excluded packages.
-	(default_trust): Ditto.
-	(_view::insert_pkg): Ditto.
-	* iniparse.y (register_category): Use consistent variable name.
-
-2001-07-09  Egor Duda <deo@logos-m.ru>
-
-	* choose.cc: Use system foreground color for text output.
-
-Sat Jul  7 00:40:28 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (set_action): Use default trust for determining reinstall
-	and source only.
-	(default_trust): Set default trust.
-	(pick_line::paint): Allow source selection when reinstalling or
-	retrieving.
-
-Fri Jul  6 18:08:49 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (isinstalled): Modify to properly accomodate special case
-	of "download only".
-	(set_action): Check downloaded components, not installed components if
-	"download only".
-	(set_existence): Always include full list of files when "download
-	only".
-
-Fri Jul  6 00:37:05 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (pick_line::paint): Properly display "na" field when no
-	source exists.
-
-Thu Jul  5 00:34:23 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (scan2): Ensure that older versions do not show up in
-	"Test" slot.
-
-Mon Jul  2 15:47:59 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (set_action): Allow "Skip" action if trust != installed.
-	* res.rc: Fix copyright.
-
-Sat Jun 30 14:05:21  2001  Michael A Chase <mchase@ix.netcom.com>
-
-	* res.rc (IDD_LOCAL_DIR): Change caption to match the other dialog
-	boxes.
-	(IDD_CHOOSE): Adjust horizontal size so package names are visible.
-
-	* choose.cc: Restore some more changes from 2001-06-25, throughout.
-	(paint): Wrap some excessively long lines.
-	(pick_line::paint): Ditto.  Move the arrow in the "Current" column
-	right to where it belongs.  Move the source checkbox slightly to the
-	right.
-	(do_choose): List categories and required packages in setup.log.full.
-
-Sat Jun 30 23:04:59 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (scan2): Restore source scanning eliminated by previous
-	checkin.
-
-Sat Jun 30 15:18:33 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* ini.h (struct _Info): Add "derived" element.
-	* choose.cc (scan2): Try to place unknown tar files into proper slot
-	when package exists in setup.ini but tar file does not.
-
-Sat Jun 30 13:39:00 2001 Robert Collins <rbtcollins@hotmail.com>
-
-	* choose.cc (create_listview): Call set_view_mode with VIEW_CATEGORY.
-	(do_choose): Log the first category name.
-
-Fri Jun 29 23:07:44 2001  Christopher Faylor <cgf@cygnus.com>
-
-	*ini.h: Reapply 2001-06-25 changes.
-	* choose.cc (add_required): Ditto.  Default to "Keep" state if
-	UNINSTALL and product is installed.  Default to curr state if SKIP,
-	etc.
-	(keep_or_skip): New function.  Returns skip or keep state depending on
-	installed state of package.
-	(default_trust): Use keep_or_skip to set state.
-	(_view::insert_pkg): Use calloc to allocate lines.
-	(set_view_mode): Adapt 2001-06-25 change to set_full_list here.
-
-Sat Jun 30 11:01:00 2001 Robert Collins <rbtcollins@hotmail.com>
-
-	* choose.cc: Remove globals full_list, headers, package_indexes and
-	nindexes.
-	Add globals cat_headers, pkg_headers and chooser.
-	(add_required): New function.
-	(paint): Use the chooser for header details.
-	Call into the chooser to paint each line.
-	(list_click): Use new global variables.
-	Call into the chooser to handle the click.
-	Repaint the entire view if packages have been added or removed.
-	(note_width): Get passed a headers struct rather than using a global
-	variable.
-	(fill_missing_category): New function.
-	(default_trust): Skip non-"Required" or "Misc" packages.
-	(pick_line::set_line (Package *)): New function.
-	(pick_line::set_line (Category *)): New function.
-	(pick_line::paint): New function.
-	(pick_line::click): New function.
-	(_view::_view): New function.
-	(_view::set_view_mode): New function.
-	(_view::mode_caption): New function.
-	(_view::set_headers): New function.
-	(_view::init_header): New function.
-	(_view::insert_pkg): New function.
-	(_view::insert_category): New function.
-	(_view::insert_at): New function.
-	(_view::insert_under): New function.
-	(_view::clear_view): New function.
-	(viewsplusplus): New function.
-	(_view::client): New function.
-	(set_view_mode): Use new chooser functionality.
-	(set_full_list): Use new global variables.
-	(create_listview): Instantiate chooser.
-	Remove all hardcoded headers[] code.
-	(dialog_cmd): On trust changes, check dependencies.
-	(getcategorybyname): New function.
-	(getpackagecategorybyname): New function.
-	(scan2): Use case-insensitive package comparison.
-	(do_choose): Use fill_missing_category ().
-	Show some category data.
-	* ini.h: Protect against multiple inclusion.
-	(views) New enum.
-	(_CategoryPackage): New struct.
-	(_Category): New struct.
-	(_Package): Change category to Category * from char *.
-	(extern Category category): New global variable.
-	(extern in ncategories): Ditto.
-	(getcategorybyname): New prototype.
-	(catpackagecategorybyname): New prototype.
-	(register_category): New prototype.
-	(add_category): New prototype.
-	* iniparse.y: Parse multiple categories per package.
-	(category): New global variable.
-	(ncategories): New global variable.
-	(new_package): Compare package against NULL, not 0.
-	(new_requirement): Source formatting fix.
-	(register_category): New function.
-	(add_category): New function.
-	* res.rc: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
-	IDC_CHOOSE_VIEWCAPTION: New control.
-	* resource.h: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
-	IDC_CHOOSE_VIEWCAPTION: New control.
-	Increment _APS_NEXT_CONTROL_VALUE.
-
-Mon Jun 25 00:56:37 2001  Michael A Chase <mchase@ix.netcom.com>
-
-	* choose.cc (paint): Wrap excessively long lines.
-	(list_click): Ditto.
-	(create_listview): Ditto.
-	(do_choose): Ditto.  Replace TABs and remove CRs in lines written to
-	setup.log.full.  Allow "Yes" for source exists in setup.log.full when
-	installing from local directories.
-
-Mon Jun 25 00:56:37 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (set_action): Only clear srcpicked when moving to next
-	state.  Allow source installation if it exists in the current "trust"
-	state.  Don't move to skip state when package is installed.
-	(list_click): Don't allow source clicking when no source is available.
-	(set_full_list): Display package when not is_full_action.
-	* ini.h (is_full_action): Define.
-
-Sun Jun 17 12:06:14 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* install.cc (check_for_old_cygwin): New function.  First stab at
-	checking for old cygwin versions.
-	(do_install): Call check_for_old_cygwin if there were no errors during
-	the install.
-
-Sat Jun 16 11:33:51  2001  Michael A Chase <mchase@ix.netcom.com>
-
-	* choose.cc (_Info::_Info): Test _source paramenter for non-NULL rather
-	than zeroed "source" element.
-
-Fri Jun 15 20:54:43 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (scan2): Insert unknown tar archives, found on disk, into
-	the highest available "hole" in the trust array.
-
-Fri Jun 15 00:20:48 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (set_existence): Use pointer method for indexing in trust
-	array.
-	(create_listview): Ditto.
-	(scan2): Ditto.  Also, use consistent variable name for indexing into
-	trust array.
-	* ini.h (Package): Reorganize info array for easier scanning.
-
-Fri Jun 15 00:01:51 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (isinstalled): Eliminate special download only test.
-	(set_action): Don't move to next state if in ACTION_SAME range and not
-	incrementing.
-	(choose_caption): Display "Retrieve" rather than "Reinstall" when just
-	downloading.
-	(do_choose): Sort packages after all packages have been read.
-	Accomodate the fact that first element in trust array is empty so that
-	log files don't report the wrong trust value.
-	* iniparse.y (new_package): Malloc space for package name or suffer
-	memory corruption.
-
-Thu Jun 14 22:43:59 2001   Robert Collins <rbtcollins@hotmail.com>
-
-	* ini.h (Dependency): New structure.  Declare new function.
-	* inilex.l (yylex): Detect new setup.ini options - category and
-	requires.
-	* iniparse.y: Declare new setup.ini token values.
-	(yyparse): Parse new token values.
-	(new_requirement): New function.
-
-Thu Jun 14 22:43:26 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (read_installed_db): Eliminate obsolete code.
-
-Thu Jun 14 22:11:53 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (set_action): Set trust on "redo".
-	(_Info::_Info): New constructor.
-	(read_installed_db): Use new constructor.  Use trusts type for
-	iterator.
-	* ini.h (struct _Info): Label struct, add constructor.
-	(Package): Make installed_ix a type 'trusts.'
-	* install.cc (uninstall_one): Unset any installed info for current
-	package.
-	(install_one): Allocate new Info struct for installed reflecting new
-	installed info.
-	(do_install): Don't output line to installed.db if package is being
-	uninstalled.
-
-Thu Jun 14 20:33:01 2001  Robert Collins <rbtcollins@hotmail.com>
-
-	* choose.cc (getpkgbyname): Use consistent method for scanning package
-	array.
-
-Wed Jun 13 23:33:08 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc:  Add some comments.
-	(getpkgbyname): Use strcasecmp for comparisons.
-
-Wed Jun 13 16:07:00 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* install.cc (do_install): Avoid checking for download action if
-	package wasn't currently retrieved.
-
-Wed Jun 13 11:27:22 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc: Eliminate extra array throughout.  Use element in package
-	structure instead.  Use pointers rather than array indexes where
-	appropriate.
-	(set_action): New function to set next action based on current.
-	(choose_caption): New function.  Returns display caption.
-	(check_existence): Change arguments.  Use pointer to 'info' structure.
-	(set_existence): Use pointer rather than array index.
-	(default_trust): Use trusts enum for second argument.
-	(set_full_list): Honor exclude element in package structure.
-	(build_labels): Eliminate.
-	(base): Make global.  Use const char * argument.
-	(get_package_version): Eliminate.
-	(getpkgbyname): New function.
-	(read_installed_db): Use parse_filename to get version info.
-	* desktop.cc (make_passwd_group): Use getpkgbyname function.
-	* download.cc (get_file_size): const argument.
-	(do_download): Use is_download_action to determine when something
-	should be downloaded.
-	* filemanip.h: Add some functions.
-	* ini.cc (do_ini): Use NULL rather than 0 for pointer assignment.
-	* ini.h: Use enums for actions and trusts.
-	(is_download_action): New macro.
-	(is_upgrade_action): Ditto.
-	(is_uninstall_action): Ditto.
-	(struct Package): Add new fields.
-	* inilex.l (yylex): Detect new setup.ini options.
-	* iniparse.y: Declare new tokens.
-	(yyparse): Detect exclude keyword.  Fill out version field even if
-	version == 0.
-	(new_package): Use greater granularity when allocating package array to
-	avoid repeated calls to realloc.
-	* install.cc (exists): const argument.
-	(uninstall_one): Take pkg argument.
-	(install_one): Ditto.  Eliminate unneeded arguments which can be
-	derived from package info.
-	(do_install): Iterate over package array using a pointer.  Use
-	is_download_action to control when package should be downloaded.
-	* tar.cc (tar_open): const argument.
-	* tar.h: Refloect const argument.
-
-2001-05-31  Michael Chase mchase@ix.netcom.com
-
-	* main.cc (WinMain): Add setup version to starting setup.log entry
-
-Tue May 29 21:37:58 2001  Yukihiko Sohda <sohda@is.titech.ac.jp>
-
-	* inilex.l: Add + to list of valid string characters.
-
-Mon May 28 20:54:50 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Remove more stuff in the clean target.
-
-Mon May 28 18:24:59 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Correctly generate iniparse.h.
-
-Tue Mar  6 19:14:00 2001  Corinna Vinschen <corinna@vinschen.de>
-
-	* geturl.cc (get_url_to_file): Add parameter `allow_ftp_auth'.
-	* geturl.h: Change declaration of `get_url_to_file' accordingly.
-	* netio.cc (NetIO::NetIO): Add parameter `allow_ftp_auth'.
-	Set member `ftp_auth'.
-	(NetIO::open): Add parameter `allow_ftp_auth'. Use it in calls
-	to constructors of derived classes.
-	(NetIO::get_ftp_auth): New method.
-	* netio.h: Change class definition accordingly.
-	* nio-ftp.cc (NetIO_FTP::NetIO_FTP): Add parameter `allow_ftp_auth'.
-	Take global variables `net_ftp_user' and `net_ftp_passwd' into account.
-	Add code for ftp authentication retry.
-	* nio-ftp.h: Change class definition accordingly.
-	* nio-http.cc (NetIO_HTTP::NetIO_HTTP): Add parameter `allow_ftp_auth'.
-	Add code for ftp authentication retry in case of proxy connection.
-	* nio-http.h: Change class definition accordingly.
-	* res.rc: Add FTP authentication dialog.
-	* resource.h: Add new constants used in res.rc.
-	* state.h: Add variables `net_ftp_user' and `net_ftp_passwd'.
-
-Sun May 27 17:12:23 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* res.rc (IDD_SPLASH): Add a copyright year.
-
-Sun May 27 15:42:18 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Make iniparse.y produce a c++ file.
-	* choose.cc (set_existence): Revert 2001-05-27 change.
-	* ini.cc: Remove "C" from declaration of yyparse.
-	* iniparse.y (yyparse): Fill out version field by default when a binary
-	install is detected and no version has been set yet.
-	* install.cc (do_install): Mount things earlier so that we can use
-	proper mount table settings.  Don't remove mounts since they are now
-	honored.
-	* mount.cc (create_mount): Reread the mount table after establishing a
-	new mount.
-	(read_mounts): Explicitly clear root_here to allow multiple uses of
-	this function.  Ensure that there is no garbage in the table when we've
-	exhausted all of the mounts in the registry.
-	(cygpath): Accomodate ./ in path.
-
-Sun May 27 02:59:07 2001  Christopher Faylor <cgf@cygnus.com>
-
-	Use parse_filename method to parse filenames throughout.  Use
-	get_root_dir to retrieve the current root directory throughout.  Set
-	const in argument list, where appropriate, throughout.
-	* choose.cc (set_existence): Detect case of uninstalled package with no
-	version.
-	(parse_filename): New function.
-	* filemanip.h (fileparse): New structure.
-	* mount.cc (read_mounts): Remember where we found the root mount.
-	(set_root_dir): New function.
-	(get_root_dir): Ditto.
-	* mount.h: Declare new functions.
-	* site.cc (get_root_dir_now): Renamed from get_root_dir.
-	(save_site_url): Use new function name.
-	(get_initial_list_idx): Ditto.
-
-Sat May 26 21:23:59 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc: Use a constant throughout to deal with chooser icon
-	length.
-	* res.rc (IDD_CHOOSE): Increase size of chooser box.
-
-2001-05-07  Brian Keener <bkeener@thesoftwaresource.com>
-
-	* choose.cc (do_choose): Fix incorrect assignment of trust setting to
-	use when Redownload or Sources Only selected.
-
-Thu May 10 22:35:59 2001  Christopher Faylor <cgf@cygnus.com>
-
-	Reformat file after botched patch formatting.
-	* choose.cc (which_trust): Eliminate variable.
-	(default_trust): Don't set which_trust.
-	(do_choose): Use selected trust when reinstalling or installing source.
-
-Thu May 10 21:04:18 2001  Christopher Faylor <cgf@cygnus.com>
-
-	Change concat to cygpath throughout.
-	Change map_filename to cygpath throughout.
-	* concat.cc (vconcat): New function.
-	(concat): Use vconcat.
-	* concat.h: Reflect above.
-	* install.cc (map_filename): Eliminate.
-	(install_one): Free dest_file.
-	* mount.cc (find2): Expect input key to be pointing to mount record.
-	(in_table): New function.
-	(is_admin): Move from root.cc.
-	(read_mounts): New function.
-	(path_prefix_p): New function.
-	(cygpath): New function.
-	* mount.h: Define new functions and structure.
-	* root.cc (in_table): Move to mount.cc.
-	(do_root): Call read_mounts to initialize root stuff and mount table.
-	* site.cc (get_root_dir): Ditto.
-
-2001-05-09  Matt Hargett <matt@use.net>
-
-	* Makefile.in: Remove *.rc from clean.
-
-Tue May  8 23:33:38 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* choose.cc (scan2): Fix incorrect setting of TRUST_CURR rather than
-	TRUST_PREV which produced "0" versions.
-
-2001-05-07  Brian Keener <bkeener@thesoftwaresource.com>
-
-	* resource.h: Add new field IDC_CHOOSE_INST_TEXT.  Modify
-	_APS_NEXT_CONTROL_VALUE to account for addition of
-	IDC_CHOOSE_INST_TEXT.
-	* res.rc (IDD_CHOOSE): Modify choose dialog to use new field
-	IDC_CHOOSE_INST_TEXT for screen text.  Modify choose Dialog to allow
-	hot keys to select Prev, Curr, Exp.
-	* ini.h: Add new actions for ACTION_REDO and ACTION_SRC_ONLY.  Modify
-	define for LOOP_PACKAGES to include new actions ACTION_REDO and
-	ACTION_SRC_ONLY.
-	* choose.cc: Add new Trusts for TRUST_REDO and TRUST_SRC_ONLY.
-	(paint): Modify to check TRUST_SRC_ONLY when determining Bitmap for
-	source Checkbox to use.
-	(build_labels): Add logic to allow for selection of Source only
-	Download/ReDownload/Install/Reinstall and also to Redownload/Reinstall
-	current version binary.
-	(dialog_proc): Add conditional display for file selection prompt based
-	on download vs install using IDC_CHOOSE_INST_TEXT.
-	(do_choose): Add new logic for TRUST_REDO and TRUST_SRC_ONLY selection
-	and modify logic for TRUST_UNINSTALL, TRUST_KEEP, and TRUST_NONE to
-	handle the instance where Source Download/Install was selected.  Modify
-	log file to store appropriate information regarding Action selected and
-	the new actions that were added (I.E.: ACTION_REDO and
-	ACTION_SRC_ONLY).
-	* download.cc: Add include for <unistd.h> and "port.h".
-	(download_one): Modify parameter list to include the selected action
-	for the file to be downloaded.  Modify size check against expected size
-	to include check for ACTION_REDO and ACTION_SRC_ONLY.  Modify rename of
-	.tmp file to also remove the destination file if exists due to ability
-	to redownload source and binary now.
-	(do_download): Modify to also use ACTION_REDO and ACTION_SRC_ONLY in
-	calculation of Download Bytes.  Modify to also use ACTION_REDO and
-	ACTION_SRC_ONLY in determining files selected for download.
-	* install.cc (uninstall_one): Add check to treat a Reinstall like an
-	upgrade so current version will be uninstalled prior to reinstall.
-	(do_install): Add logic to handle ACTION_REDO and ACTION_SRC_ONLY for
-	uninstalling and installing binary and source packages.
-	* desktop.cc (make_passwd_group): Modify logic to account for a Source
-	only cygwin install when checking for cygwin to determine need for
-	mkpasswd and mkgroup.
-
-Mon May  7 23:33:30 2001  Matt Hargett <matt@use.net>
-
-	* winsup/cinstall/res.rc: Added accelerators and improved focus order.
-	Removed WS_DISABLED from "OK" buttons to accomodate default focus
-	changes in net.cc and source.cc.
-	* winsup/cinstall/net.cc (dialog_proc): If no radio button is selected,
-	a default is selected.
-	* winsup/cinstall/source.cc (dialog_proc): Ditto.
-	(check_if_enable_next): Removed.  No longer needed since a radio button
-	will always be selected.
-	(load_dialog): Removed call to check_if_enable_next.
-	(dialog_cmd): Ditto.  Also added default to switch.
-
-Tue Apr 24 23:42:02 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* res.rc: Resize affected text.
-
-Tue Apr 24 23:35:31 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* net.cc (do_net): Default to direct download.
-	* res.rc: Move default selections to the top.
-
-2001-04-18  Earnie Boyd  <earnie@users.sourceforge.net>
-
-	* win32.h: Remove the definitions for _UNION_NAME and _STRUCT_NAME.
-	Must now include <windows.h> and not the pieces.
-	* choose.cc (create_listview): Clean up type mismatch problems.
-	* dialog.h (NEXT(id)): Ditto.
-	* geturl.cc (dialog): Ditto.
-	* install.cc (dialog): Ditto.
-	* splash.cc (load_dialog): Ditto.
-
-Wed Apr 18 18:59:21 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* tar.cc (class gzbz): Define dummy virtual functions.
-
-Wed Apr 18 16:01:21 2001  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Add bz2 include/library support.
-	* filemanip.h: New file.
-	* choose.cc (find_tar_ext): New function.  Returns TRUE if .tar.gz or
-	.tar.bz2 found.
-	(scan2): Reorganize to use find_tar_ext, accomodating .bz2 extension.
-	(read_installed_db): Ditto.
-	(do_choose): Ditto.
-	* fromcwd.cc (found_file): Ditto.
-	(do_fromcwd): Ditto.
-	* tar.cc (class gzbz): New super class for uncompression support.
-	(gz): New class for gzip support.
-	(bz): New class for bzip2 support.
-	(tar_open): Use gzbz class to control file opening.
-	(tar_ftell): Ditto for returning position in file.
-	(skip_file): Ditto for reading file.
-	(tar_next_file): Ditto.
-	(tar_read_file): Ditto.
-	(tar_close): Ditto for close.
-
-	* zlib/configure.in: Force NM substitution.
-
-	* source.cc (do_source): Default to "Install from Internet".
-
-2001-03-16  Brian Keener <bkeener@thesoftwaresource.com>
-
-	* nio-file.cc (NetIO_File::NetIO_File): Use `get_file_size' instead of
-	`stat'.
-	* choose.cc (list_click): Correct inability to select source code for
-	download.
-	(scan2): Modify to skip source tarballs when scanning disk for
-	installable packages.
-
-2001-03-10  Chris Abbey  <chris_abbey@yahoo.com>
-
-	* install.cc: install sources into /usr/src instead
-	of /, also include the sizes of source tarballs
-	in total_bytes.
-	* download.cc: include sizes of source tarballs in
-	total_download_bytes.
-
-Tue Mar  6 19:31:00 2000  Corinna Vinschen <corinna@vinschen.com>
-
-	* download.cc (get_file_size): Remove `static'.
-
-Tue Mar  6 19:11:00 2000  Corinna Vinschen <corinna@vinschen.com>
-
-	* tar.cc (tar_open): Use `get_file_size' instead of `stat'.
-
-2001-03-06  Brian Keener <bkeener@thesoftwaresource.com>
-
-	* choose.cc (paint): Modify message for nothing to download vs
-	nothing to install/update based on installation method.
-	(list_click): Modify to skip versions in selection process if
-	installing from local directory and installation file does not exist.
-	Also leaves Source Action set to N/A if the source file does not exist
-	and installing from local directory.
-	(check_existence): New method to check current existence of installation
-	files based on selected installation method.
-	(set_existence): New method to set the current existence of installation
-	files based on selected installation method.
-	(best_trust): Modify decision process for best trust to base decision on
-	current trust selected (IE: Prev, Curr, or Test), existence of file and
-	installation method selected.
-	(default_trust): Add logic to capture the current trust level and the
-	trust selected for the given package.
-	(set_full_list): Expand decision criteria for displaying a package in
-	the selection list to include file existence/non-existence and selected
-	installation method.
-	(build_labels): Modify criteria for label addition to include
-	installation method and file existence/non-existence.
-	(create_listview): Modify to establish package trust level for each
-	package before setting up the display list.  Also modification to set
-	current trust button as the default.
-	(dialog_cmd): Set response for Prev, Curr, Test button push to perform
-	a reset of the selection list in addition to setting the default trust.
-	(get_package_version): New method to provide reusable code for
-	determining the package version from the file name for a specified
-	trust.
-	(scan2): Modify to use new method get_package_version and
-	also enhance handling of the build for the structures package and
-	extra.
-	(read_installed_db): Modify to use the new method
-	get_package_version and also enhance handling of the build for the
-	structures package and extra.
-	(do_choose): Add additional initialization of package and extra
-	structures.  Modify to use read_installed_db all the time despite
-	install method.  Modify output to setup.log.full log file to increase
-	readability by adding additional spacing, expanded code and available
-	versions.
-	* ini.h: Add new fields install_exists, source_exists and
-	partial_list_display to the structure definition for package.
-	* res.rc (IDD_CHOOSE): Modify choose dialog Prev, Curr, and Test
-	pushbuttons by replacing with Radio Buttons thus allowing the
-	operator to better determine which is selected.
-
-2001-02-20  Brian Keener <bkeener@thesoftwaresource.com>
-
-	* download.cc (do_download): Add new variables total_download_bytes and
-	total_download_bytes_sofar for download progress meter.  Add loop
-	to accumulate the total bytes to download from the selected packages.
-	* geturl.cc: Add state.h and diskfull.h to include list.  Add new
-	variables gw_iprogress, gw_pprogress, gw_progress_text,
-	gw_pprogress_text, and gw_iprogress_text to allow for addition of
-	total packages download progress meter and disk full percent
-	progress meter.  Add variables total_download_bytes and
-	total_download_bytes_sofar for use by progress meters.
-	(dialog_proc): Add new variables gw_iprogress, gw_pprogress,
-	gw_progress_text, gw_pprogress_text, and gw_iprogress_text to
-	allow for addition of total packages download progress meter and disk
-	full percent progress meter.
-	(init_dialog): Ditto.
-	(progress): Ditto.
-	(get_url_to_file): Ditto.
-	* geturl.h: Add external definition for total_download_bytes and
-	total_download_bytes_sofar.
-	* res.rc: Add two additional progress meters (IDC_DLS_IPROGRESS)
-	and (IDC_DLS_PPROGRESS) and three text objects (IDC_DLS_PROGRESS_TEXT)
-	and (IDC_DLS_IPROGRESS_TEXT, IDC_DLS_PPROGRESS_TEXT) for use in the
-	download meters.
-	* resource.h: Add new fields for progress meters and text and update
-	_APS_NEXT_CONTROL_VALUE.
-
-Wed Feb 21 13:05:00 2000  Corinna Vinschen <vinschen@redhat.com>
-
-	* download.cc (get_file_size): Check for INVALID_HANDLE_VALUE instead
-	for NULL.
-
-Wed Feb 21 11:21:00 2000  Corinna Vinschen <vinschen@redhat.com>
-
-	* download.cc (download_one): Add missing parenthesis.
-
-Mon Feb 19 18:59:00 2000  Corinna Vinschen <vinschen@redhat.com>
-
-	* download.cc (get_file_size): New function. Eliminates the need
-	to call `stat'.
-	(download_one): Call `get_file_size' instead of `stat'. This
-	workarounds a problem with mingw's `stat' call.
-
-2001-02-07  Earnie Boyd  <earnie@users.sourceforge.net>
-
-	* Makefile.in: (%.o: %.rc): Specify --include-dir $(w32api_include).
-	This is to allow cinstall to build with 2.95.2-7 and to make the
-	use of headers consistent.
-
-2000-12-26  Earnie Boyd  <earnie_boyd@yahoo.com>
-
-	* Makefile.in (autoload.o): Add target to specify -fno-inline-functions
-
-Tue Dec 26 03:46:00 2000  Matt Hargett  <matt@use.net>
-
-	* winsup/cinstall/res.rc: Added accelerators and improved focus
-	order.
-
-2000-12-10  Egor Duda <deo@logos-m.ru>
-
-	* choose.cc (paint): Use system background color for text output.
-
-Sun Dec 10 19:05:25 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Use CXX for linking and for compiling .cc files.
-	* configure.in: Find correct c++ compiler.
-	* configure: Regenerate.
-
-2000-11-17  DJ Delorie  <dj@redhat.com>
-
-	* splash.cc (load_dialog): Make message more obvious.
-	* res.rc: Ditto.
-
-Fri Nov 17 17:15:21 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Use g++ to link so that libstdc++.a gets used.  This is
-	necessary for newer compilers.
-
-Wed Nov 9  2:19:00 2000  Corinna Vinschen <vinschen@redhat.com>
-
-	* desktop.cc: Include "ini.h" and "version.h".
-	(make_passwd_group): Skip the function on 9x/ME boxes when an
-	older version of Cygwin has been installed which doesn't
-	support mkpasswd/mkgroup on 9x/ME.
-	* install.cc: Move the `LOOP_PACKAGES' and `pi' macros to...
-	* ini.h: ...here.
-
-Wed Nov 8 17:10:00 2000  Corinna Vinschen <vinschen@redhat.com>
-
-	* desktop.cc (make_passwd_group): Don't exit when started
-	on 9x/ME since mkpasswd/mkgroup are usable on 9x/ME now.
-
-Sun Nov 5 12:51:42 2000  Jason Tishler  <jt@dothill.com>
-
-	* install.cc (do_install): Add call to set_cygdrive_flags to sync
-	the mount modes.
-	* mount.cc (set_cygdrive_flags): New function.
-	(get_cygdrive_flags): Ditto.
-	(default_cygdrive): Ditto.
-	(set_cygdrive_flags): Ditto.
-	* mount.h: Add prototype for set_cygdrive_flags.
-
-2000-10-23  DJ Delorie  <dj@redhat.com>
-
-	* ini.h: add source actions
-	* fromcwd.cc: check for available sources
-	* res.rc: add checkbox bitmaps
-	* resource.h: ditto
-	* check-*.bmp: new
-	* choose.cc: add source column
-	* download.cc: download sources if called for
-	* install.cc: [un]install sources too
-
-2000-10-22  DJ Delorie  <dj@redhat.com>
-
-	* choose.cc (build_labels): Don't skip TRUST_PREV completely; only
-	ignore it wrt full_list if there's already a version installed.
-	(do_choose): Sort the list.
-	(package_sort): New.
-
-2000-10-12  DJ Delorie  <dj@redhat.com>
-
-	* res.rc: Add more error strings.
-	* resource.h: Ditto.
-	* iniparse.y (new_package): re-initialize if needed.
-	* download.cc (do_download): Keep track of errors; notify and
-	allow retry.
-	* install.cc (do_install): Ditto.
-
-2000-10-05  DJ Delorie  <dj@redhat.com>
-
-	* Makefile.in: fix %.cc rule
-
-2000-10-04  DJ Delorie  <dj@redhat.com>
-
-	* desktop.cc: quote HOME and USER, don't . ./.profile
-
-	* choose.cc (build_labels): don't include in partial list just
-	because there's a *previous* version available.
-
-	* install.cc (do_install): if installing from local directory with
-	setup.ini and the file isn't found, look in "." also.  Note errors.
-
-2000-10-02  DJ Delorie  <dj@redhat.com>
-
-	* ini.cc (do_ini): save setup.ini locally
-
-2000-10-02  Chris Abbey  <cabbey@bresnanlink.net>
-
-	* desktop.cc: quote escapes in prompt
-
-2000-10-02  Jason Tishler  <jt@dothill.com>
-
-	* root.cc (is_admin): New function.
-	(read_mount_table): Check for administrative priviledges and set
-	installation scope as appropriate.
-
-2000-09-28  DJ Delorie  <dj@redhat.com>
-
-	* nio-ftp.cc (ftp_line): handle continuations more robustly
-
-2000-09-14  Brian Keener  <bkeener@thesoftwaresource.com>
-
-	* res.rc: increased the size of the site dialog (IDD_SITE) & the
-	corresponding list box to provide for more URL's to be listed.
-	Modified the position of the Back, Next and Cancel buttons to
-	correspond to the new size of the dialog.
-
-2000-09-13  DJ Delorie  <dj@redhat.com>
-
-	* install.cc (do_install): update disk fullness once per package
-	to improve performance
-
-	* choose.cc (create_listview): call ReleaseDC
-
-Mon Sep 11 22:40 2000  Harold L Hunt II <harold@compasstechnologies.com>
-
-	* mkdir.cc: Create directories when ERROR_FILE_NOT_FOUND is
-	returned, as it seems Samba 2.0.6+ returns this instead of
-	ERROR_PATH_NOT_FOUND
-
-Mon Sep 11 19:35:24 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* site.cc (get_initial_list_idx): Don't default to saved URL if it
-	refers to sources.
-
-2000-09-07  DJ Delorie  <dj@redhat.com>
-
-	* splash.cc: use version.h, not local decl
-	* res.rc: add "old version" message
-	* resource.h: ditto
-	* version.h: new
-	* fromcwd.cc (canonicalize_version): make global
-	* iniparse.y: add setup-version support, fix bug in blank line
-	handling
-
-	* inilex.l: add [exp] as alias for [test], add setup-version
-	* Makefile.in (version.c): add setup-version tag
-
-	* desktop.cc (do_desktop): remove 1.1 version number
-	(do_desktop_setup): ditto
-
-	* ini.cc (do_ini): zero out package list just in case we redo it.
-
-2000-09-07  Jeffrey Juliano  <juliano@cs.unc.edu>
-
-	* choose.cc (list_click): Check for nindexes==0; if so, return.
-
-2000-09-06  Andrej Borsenkow  <Andrej.Borsenkow@mow.siemens.ru>
-
-	* localdir.cc: new, local package directory selection dialog; cd
-	into selected directory
-	* Makefile.in (OBJS): add localdir.o
-	* dialog.h: add prototype for do_local_dir
-	* main.cc (WinMain): initialize local_dir to cwd; add call to
-	do_local_dir
-	* net.cc (dialog_cmd): make DO_LOCAL_DIR next dialog
-	* source.cc (dialog_cmd): ditto
-	* res.rc: add DO_LOCAL_DIR dialog; remove "current directory" from
-	presented choices in IDD_SOURCE; add IDS_ERR_CHDIR error string
-	* resource.h: defines for DO_LOCAL_DIR dialog; define IDS_ERR_CHDIR
-	* root.cc (dialog_cmd): make DO_LOCAL_DIR previous dialog
-	* state.h: add local_dir variable
-
-2000-09-06  Brian Keener  <bkeener@thesoftwaresource.com>
-
-	* desktop.cc: added logic to handle to the new dialog and to
-	default the setting for the new checkboxes based on whether the
-	desktop icon or start menu link already exist.
-	(desktop_icon): correction to desktop directories for desktop icon
-	creation.  Additional logic added for Win95 which does not appear
-	to have Common Directories so if Common selected and null uses
-	normal directory.
-	(start_menu): Additional logic added for Win95 which does not
-	appear to have Common Directories so if Common selected and null
-	uses normal directory.
-	(do_desktop_setup): moved the saving of the icon, creation of the
-	bat file, profile, passwd, Start Menu link and desktop shortcut to
-	this method from do_desktop.  Made the creation of the desktop
-	icon and start menu link conditional on settings of new dialog
-	created for desktop.
-	* install.cc (do_install): changed next from IDD_S_DESKTOP to
-	IDD_DESKTOP.
-	* main.cc (WinMain): changed case IDD_S_DESKTOP to IDD_DESKTOP.
-	* res.rc: added new resource to create a desktop dialog with 2
-	checkboxes for creating the desktop icon and start menu link.
-	* resource.h: changed IDD_S_DESKTOP to IDD_DESKTOP and added two
-	new controls: IDC_ROOT_MENU and IDC_ROOT_DESKTOP for new dialog.
-	* state.h: added root_menu and root_desktop for use in dialog.
-
-2000-08-29  DJ Delorie  <dj@redhat.com>
-
-	* choose.cc (scan_downloaded_files): scan for existing files, so
-	that the user only sees new downloads.
-
-	* nio-ie5.cc (NetIO_IE5): pre-check for wininet.dll, enable dial-up
-	* site.cc (do_site): if we can't download the mirror list, go back
-	to the net setup box to choose another transport.
-	* autoload.c: add more functions
-	* Makefile.in (ALL_DEP_LDLIBS): remove wininet.a
-	* resource.h: add WININET message
-
-	* net.cc (do_net): no longer default to IE5
-	* simpsock.h (class SimpleSocket): new, simplify socket operations
-	* simpsock.cc: ditto
-	* nio-http.h: new, for direct http protocol
-	* nio-http.cc: ditto
-	* nio-ftp.h: new, for direct http protocol
-	* nio-ftp.cc: ditto
-	* netio.cc (set_url): move initialization here to handle redirections
-	(open): add direct http/ftp
-	* netio.h (NetIO::set_url): new
-
-	* log.cc (log_save): create directory for log if needed
-
-	* hash.cc, hash.h: new
-	* Makefile: add hash.o
-	* choose.cc: enable "uninstall" option
-	* download.cc: invert action test to accomodate uninstalling
-	* ini.h: add ACTION_UNINSTALL
-	* install.cc: add uninstall functionality
-	* res.rc: make install tag changeable
-	* resource.h: add uninstall resources
-
-	* res.rc: update mirror list URL
-
-2000-08-24  DJ Delorie  <dj@redhat.com>
-
-	* log.cc, log.h: new files
-	* Makefile.in (OBJS): add log.o
-	* tar.cc: use exit_setup instead of exit
-	* dialog.cc (fatal): use exit_setup instead of ExitProcess
-	* msg.cc (fatal): ditto
-	* install.cc (dialog_cmd): ditto
-	* ini.cc (do_ini): ditto
-	* main.cc (main): add logging
-	* source.cc (do_source): ditto
-	* root.cc (do_source): ditto
-	* site.cc (do_site): ditto
-	* other.cc (do_other): ditto
-	* net.cc (do_net): ditto
-	* choose.cc (do_choose): ditto
-	* download.cc (do_download): ditto
-	* install.cc (do_install): ditto
-	* msg.cc (fatal): ditto
-
-	* res.rc: mark password boxes as *being* password boxes.
-
-	* fromcwd.cc (canonicalize_version): use multiple buffers so that
-	multiple calls won't use the same buffer.
-	* choose.cc (create_listview): don't default to full list if no changes
-	(base): return computed value, not temporary :-(
-	(do_choose): don't use installed.db if we're only downloading.
-
-2000-08-23  DJ Delorie  <dj@redhat.com>
-
-	* nio-ie5.cc (NetIO_IE5): Fix authentication logic
-	* nio-ie5.h (flush_io): new
-	* netio.cc (load_dialog): note when we're initializing the dialog
-	box, and ignore changes to the edit fields then.
-
-2000-08-21  DJ Delorie  <dj@redhat.com>
-
-	* README: Update
-
-	* fromcwd.cc (found_file): don't remember the canonicalized version
-
-	* choose.cc (paint): print "nothing to do" message when list is empty.
-	(build_labels): Use version "0.0" if no version is available.
-	(create_listview): default to full list if nothing to install/update.
-	(base): new, returns basename of file
-	(read_installed_db): compare base names, not full paths
-
-2000-08-11  DJ Delorie  <dj@redhat.com>
-
-	* choose.cc: add new chooser dialog
-	* fromcwd.cc: use IDD_CHOOSE
-	* ini.cc: use IDD_CHOOSE
-	* main.cc: use IDD_CHOOSE
-	* ini.h: cosmetic changes
-	* res.rc: add choose dialog, bitmaps
-	* choose-spin.bmp: new
-	* choose-rtarrow.bmp: new
-	* resource.h: add choose dialog controls
-
-	* mount.cc: remove debug statement
-
-2000-08-08  DJ Delorie  <dj@redhat.com>
-
-	* Makefile.in (version.c): make version checking more robust
-	* splash.cc (load_dialog): handle case where there's no version
-
-2000-08-07  DJ Delorie  <dj@redhat.com>
-
-	* (all): add cvsid tags
-	* Makefile.in: generate version.c from ChangeLog, add splash.o
-	* splash.o: new
-	* res.rc: add splash screen
-
-2000-08-02  DJ Delorie  <dj@redhat.com>
-
-	* net.cc: remove proxy password code
-	* res.rc: remove proxy user/pass from net, add auth dialogs
-	* netio.cc,h: add sys/proxy auth methods
-	* nio-ie5: use them, check for http status codes
-	* state.h: add system authorization
-
-	* concat.cc (concat): canonicalize x:// to x:/ (exception to ://
-	meaning an url)
-
-2000-08-02  Norman Vine <nhv@yahoo,com>
-
-	* msg.cc (mbox): added MB_TOPMOST to MessageBox type flags
-
-2000-08-01  DJ Delorie  <dj@redhat.com>
-
-	* postinstall.cc (each): don't rename files we ignore
-	(do_postinstall): set CYGWINROOT to root_dir, chdir there
-
-	* desktop.cc: have /etc/profile call ~/.profile and ~/.bashrc
-
-2000-07-31  DJ Delorie  <dj@redhat.com>
-
-	* desktop.cc: reverse PATH so /usr/bin precedes /bin
-
-2000-07-18  DJ Delorie  <dj@redhat.com>
-
-	* autoload.c: new, autoload dlls that might not be available.
-	* Makefile.in (OBJS): add autoload.o
-
-	* res.rc: rewrite root options (text/binary, system/user) to be
-	more obvious.
-
-	* site.cc (get_site_list): trim displayed URL, sort by domain
-
-	* net.cc (do_net): make IE5 default to checked, for now
-
-	* choose.cc (do_choose): sort packages correctly
-	* ini.cc (do_ini): handle parse errors more gracefully
-	(yyerror): ditto
-	(fprintf): line buffer output
-	(do_ini): if we can't load setup.ini, go back to the site list.
-	* ini.h: add "unknown" trust level
-	* inilex.l: absorb unknown trust levels and key/value pairs,
-	add line number logic
-	* iniparse.y: handle parse errors more gracefully.
-	* install.cc: skip packages with no valid install entry
-
-2000-07-17  DJ Delorie  <dj@cygnus.com>
-
-	* coding standards fixups, many files
-	* mkdir.cc: warn about deletions *before* deleting them
-
-2000-07-17  Jeff Juliano  <juliano@cs.unc.edu>
-
-	* res.rc (IDD_OTHER_URL): reorder to give default focus to entry
-
-	* other.cc (dialog_cmd): save download site URL
-	* site.cc (get_root_dir): new
-	(save_mirror_site): new
-	(dialog_cmd): save download site URL
-	(get_site_list): make list big enough to add prev site
-	(get_initial_list_idx): new, read last-used URL from file and
-	append it to site_list
-	(do_site): call get_initial_list_idx
-
-	* concat.cc (concat): avoid segfault when first parm is null
-
-2000-07-13  DJ Delorie  <dj@cygnus.com>
-
-	* postinstall.cc: new
-	* Makefile.in: add postinstall.o
-	* concat.h: add backslash ()
-	* concat.cc: ditto
-	* desktop.cc (etc_profile): don't do postinstall
-	(backslash): moved to concat.cc
-	(uexists): new
-	(make_postinstall_script): run directly
-	(do_desktop): chain to do_postinstall
-	* dialog.h: add exit_msg, do_postinstall
-	* download.cc: use exit_msg
-	* install.cc: ditto
-	* main.cc: add postinstall, exit_msg
-	* resource.h: add postinstall
-	* README: add more to-do items
-
-2000-07-12  DJ Delorie  <dj@cygnus.com>
-
-	* desktop.cc: add /etc/postinstall/ support
-	* install.cc: add more "standard" directories
-
-2000-07-11  DJ Delorie  <dj@cygnus.com>
-
-	* desktop.cc: create /etc/profile
-	* desktop.cc: fix include syntax
-	* Makefile.in: add auto-dependencies
-	* root.cc: support system vs user
-	* desktop.cc: ditto
-	* mount.h: ditto
-	* mount.cc: ditto
-	* install.cc: ditto
-	* res.rc: ditto
-	* resource.h: ditto
-	* state.h: ditto
-	* desktop.cc: make sure we use backslashes, not slashes.
-	* desktop.cc: don't set PATH in cygwin.bat, create /etc/passwd
-	* geturl.cc: change math for percentage to avoid overflow
-	* install.cc: ditto
-	* download.cc: post "download complete" message.
-	* root.cc: pre-fill in defaults if needed, don't start
-	browse at root_dir unless it's set.
-	* desktop.cc: quote $PATH in case it has spaces in it
-
-2000-07-10  DJ Delorie  <dj@cygnus.com>
-
-	* Makefile.in: add desktop.o and mklink2.o
-	* dialog.h: add do_desktop
-	* install.cc: create standard directories, call do_desktop
-	* res.rc: add cygwin.ico as a file also
-	* desktop.cc: new, do shortcuts, batch files, and icons
-	* mklink2.c: new, for COM
-	* README: update to-do list
-
-2000-07-10  DJ Delorie  <dj@cygnus.com>
-
-	* ini.cc (do_ini): don't worry about timestamps if we're not
-	actually installing.
-
-2000-07-09  DJ Delorie  <dj@cygnus.com>
-
-	* Makefile.in: add -I$(srcdir) for ini.h
-
-2000-07-06  DJ Delorie  <dj@cygnus.com>
-
-	* Replace everything with a new GUI version
-	* zlib/gzio.c: add gzctell() for progress displays
-
-2000-06-22  DJ Delorie  <dj@cygnus.com>
-
-	* setup.c (tarx): re-add call to write_pkg()
-
-2000-06-07  DJ Delorie  <dj@cygnus.com>
-
-	* cygcalls.c: new, call cygwin1.dll functions directly
-	* cygcalls.h: header for same
-	* Makefile.in: add cygcalls.[ch], remove mount/cygpath/umount
-	exes, fix cinstall.rc dependencies.
-	* path.c: remove unneeded code
-	* setup.c: use cygcalls instead of xcreate_process.
-	uncompress embedded files with zlib
-	add "-d" for "download only"
-	add "-h" for help
-	postpone mount changes until very end
-	add download progress indicators
-	pack multi-column listings more
-	auto-delete temp files
-	customize banner message according to options
-	prompt user for text/binary mounts
-	add warnings about empty setup directory, root installs, etc
-
-2000-05-24  DJ Delorie  <dj@cygnus.com>
-
-	* tar.c: New file; built-in tar using zlib.
-	* tar.h: New file; header for same.
-	* ctar.c: New file; test program for same.
-	* Makefile.in: add built-in tar, remove tar.exe and gzip.exe
-	* path.c (pathcat): convert slashes and canonicalize, instead of
-	aborting
-	* setup.c (tarx): add support for built-in tar
-	(main): accept unix-style slashes, check root dir for drive letters,
-	warn about installing in /, make sure cwd is empty for internet
-	installs, defer mounts to end of install, support built-in tar.
-
-Fri May 19 23:44:37 2000  Christopher Faylor <cgf@cygnus.com>
-
-	Fix compiler warnings throughout.
-	* pkg.c (init_pkgs): Make static 'stuff' global_pkgstuff for use in
-	get_pkg_stuff.
-	* setup.c: Make 'root' global.
-	(istargz): Return pointer to "stem" of matched .tar.gz file.
-	(tarx): Special case cygwin-20000301 to == cygwin-1.1.0.tar.gz.  Remove
-	bogus check_for_installed check.
-	(recurse_dirs): Add preliminary support for .bat file execution.
-	(create_uninstall): Eliminate unneeded parameter.
-	(do_start_menu): Ditto.
-	(mkmount): Ditto.
-	(get_pkg_stuff): Ditto.  Check for currently installed cygwin by
-	scanning for the version number.  Eliminate unneeded argument to
-	create_uninstall.
-	(getdownloadsource): Add 'name' to list of names rather than url.
-	(main): Eliminate unneeded argument in get_pkg_stuff.  Eliminate
-	unneeded argument in mkmount and do_start_menu.
-
-2000-05-18  DJ Delorie  <dj@cygnus.com>
-
-	* setup.c (optionprompt): allow multi-column, clean up message
-	about more options, be more robust about user input.
-	(getdownloadsource): make the mirror URL a macro.
-	(main): do mounts after done prompting user.
-
-Tue May  2 00:56:41 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (cleanup): Inverse order of deletion stands a better chance
-	of deleting cygpath.exe.  Still seems to suffer from occasional races,
-	though.
-	(cleanup_on_signal): Perform convoluted dance to accomodate win95 and
-	w2k.
-	(output_file): Defend against an unlikely handle leak.
-	(main): Don't set up signal handling until we have something special to
-	do.
-
-Mon May  1 17:56:32 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* path.c (kill_cygpath): Delete function.
-	(exit_cygpath): Make more defensive so that it can be called at any
-	time.
-	(cygpath_pipe): Don't set up signal here.  Do it in main().
-	* setup.c (istargz): New function.
-	(recurse_dirs): Look for *.gz pattern rather than *tar.gz since *tar.gz
-	inexplicably fails on samba mounted partitions.  Use istargz to match
-	tar.gz tail.
-	(processdirlisting) Use istargz to match tar.gz tail.
-	(cleanup): Renamed from filedel.
-	(cleanup_on_signal): New function.  Called on CTRL-C.
-	(main): Record handle of main thread so that it can be suspended when
-	CTRL-C occurs.  Set up cleanup_on_signal signal handler.
-
-Mon May  1 11:05:07 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (do_start_menu): Don't concatenate paths to already built
-	paths.
-
-Sun Apr 30 22:37:34 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* path.c (exit_cygpath): Wait for subprocess to exit before returning.
-	(cygpath_pipe): Don't call exit_cygpath.  Let main atexit routine do
-	that.
-	* pkg.c (init_pkgs): Accept root argument.  Make registry key "cygwin
-	root"-specific.
-	* setup.c (filedel): Call exit_cygpath here so that we can be assured
-	that cygpath subprocess has died.  This allows us to delete cygpath.exe
-	and cygwin1.dll.
-	(optionprompt): Initialize response to -1 so that second screen of
-	mirrors will appear.
-	(get_pkg_stuff): Don't attempt to use HKCLU.  Pass root to init_pkgs.
-	* setup.h: Reflect init_pkgs prototype change.
-
-Sat Apr 29 23:53:30 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* pkg.c (init_pkgs): Accept an argument to control what root registry
-	key should be used.
-	* setup.c (get_pkg_stuff): Use HKCLU registry key if default fails.
-	* setup.h: Reflect init_pkgs prototype change.
-
-Sat Apr 29 23:27:14 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* error.c (winerror): Respond to gcc warning.
-	* path.c (cygpath_pipe): Ditto.
-	* setup.c (filedel): Call sa_cleanup on deleteme.
-	(create_shortcut): Coerce argument to eliminate compiler warning.
-	(tarx): Use installed version of cygwin1.dll, overriding tar file name.
-	(refmatches): New function.  Tests if ref is contained in a list of
-	packages to install.
-	(filematches): New function.  Tests if filename matches one of a list
-	of packages to install.
-	(recurse_dirs): Accept list of packages to install.  Generalize tar.gz
-	test to accomodate _tar.gz.
-	(prompt): Ensure that stdout is flushed prior to asking for input.
-	(findhref): Initialize variables to quiet a compiler warning.
-	(processdirlisting): Accept list of packages to install.  Special case
-	cygwin tar file version number.
-	(downloaddir): Accept list of packages to install.
-	(downloadfrom): Ditto.
-	(create_uninstall): Eliminate unneeded variables.  Quote arguments to
-	regtool.
-	(do_start_menu): Don't create uninstall bat file if updating or user
-	specified a list of packages.
-	(mkmount): Eliminate unneeded variables.
-	(get_pkg_stuff): New function.  Checks for previous unversioned
-	installation.
-	(main): Accept -u and -f options and package names on the command line.
-	Use get_pkg_stuff to initialize package information.  Umount /etc.
-	Call recurse_dirs and downloadfrom with list of package to install.
-	Ensure that all /usr/local directories are created.  Output
-	installation time to setup.log.
-	* setup.h: Add some prototypes.
-	* xsystem.c (xcreate_process): Eliminate unneeded variable.
-
-Sat Apr 29 12:43:08 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (optionprompt): Don't overlap display of already seen options
-	on next page.
-	(geturl): Print name of site which we're connecting to rather than "ftp
-	site".
-	(processdirlisting): Avoid URLs that contain a /.  or ./ .  Is this
-	test too simplistic?
-	(do_start_menu): Use pathcat to build path to <root>\bin to avoid
-	problems when user chooses x:\ as their root.
-	(main): For now, default to "non-update" mode.  Allow -u option to
-	signify an update.
-
-Sat Apr 29 00:26:06 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* pkg.c: New file.
-	* setup.c (tarx): Skip already installed or older packages.  Report
-	when a package has been updated.
-	(processdirlisting): Skip already installed or older packages.
-	(main): Detect -f option for forced installation.  Initialize pkg stuff
-	if appropriate.
-	* setup.h: Add pkg definitions.
-
-Thu Apr 27 14:21:30 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (findhref): Return NULL on empty string.  Eat any trailing
-	";something".
-	(processdirlisting): Attempt to limit recursively processing the same
-	directory.
-
-Thu Apr 27 11:42:23 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (filedel): New function.
-	(output_file): Keep track of files extracted from setup.exe for
-	subsequent deletion.
-	(tarx): Close process handle of child tar process or suffer handle
-	leak.
-	(getdownloadsource): Close mirror file so that it can be unlinked.
-	(processdirlisting): Return total number of files extracted.
-	(main): Initialize array of files to delete.  Ensure that files are
-	closed on exit.  Make the directory that setup.exe is started from ==
-	the directory where temporary files are placed.  Issue an error if no
-	files were found to download.
-	* xsystem.c (xcreate_process): Close the thread handle.  Close the
-	process handle if we waited for it to exit.
-
-Thu Apr 27 09:54:19 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (main): Change version number output.
-
-Thu Apr 27 09:23:17 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (tarx): Use full path name to tar executable.
-	(main): Build full pathname to tar executable.  Create /usr/local/etc
-	by default.
-
-Wed Apr 26 22:16:57 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (findhref): Change method for scanning for href= to choose
-	the last one on the line.  This is still not foolproof and probably
-	will need to be changed eventually.  Don't abort if no "size" field is
-	evident.
-	(processdirlisting): Fix boolean algebra.
-
-Wed Apr 26 01:10:39 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* main.c (tarx): Add some code for future task of unmounting
-	directories encountered in tar file.
-
-Sat Apr 22 16:37:03 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (findhref): Decode file size, when appropriate.
-	(needfile): New function.  Returns 1 when file should be
-	downloaded.
-	(processdirlisting): Always download if file size does not
-	match.  Prompt when download fails for some reason.
-	(getdownloadsource): Accomodate findhref argument changes.
-
-Sat Apr 22 15:13:42 2000  Christopher Faylor <cgf@cygnus.com>
-
-	Throughout, use global session handle rather than reinitializing for
-	each connect.  Don't pass session as an argument to setup.c functions.
-	* setup.c (geturl): Only issue "Connecting to.." message when using
-	http or first time for ftp since subsequent connections will be fast.
-	(processdirlisting): Allocate space for "N" when user has specified
-	"N"ever option so that it can be subsequently freed.
-	(main): Abort if we can't get the list of mirrors.
-
-Thu Apr 20 16:41:42 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (main): Umount /bin and /lib.
-
-Wed Apr 19 13:34:44 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (main): Create an empty /var/run/utmp.
-
-Tue Apr 18 19:16:56 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Add umount to list of files to include in setup.exe.
-	* setup.c (xumount): New function for unmounting directories.
-	(main): Unmount /usr.
-	(mkmount): Unmount "unix directory" before trying to figure out where
-	to create the directory.
-
-Tue Apr 18 17:28:55 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (mkmount): Use xcreate_process to start mount process,
-	avoiding the shell.
-	(main): Don't do buffering on stdout or prompts won't be displayed
-	correctly if running in a cygwin shell with CYGWIN=tty.
-
-Tue Apr 18 15:35:19 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (main): Remove the CYGWIN environment variable before
-	starting any cygwin programs.
-
-Mon Apr 17 19:20:52 2000  Vadim Egorov <egorovv@mailandnews.com>
-
-	* setup.c (geturl): Use alternative method for finding filename part of
-	a URL.
-	(processdirlisting): Accomodate strange output from non-MS ftp proxy.
-	(downloaddir): Unlink file containing dir listing.
-	(downloadfrom): Ditto.
-
-Mon Apr 17 00:00:49 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (main): Disallow running setup.exe from the "root".
-
-Sun Apr 16 18:50:58 2000  Christopher Faylor <cgf@cygnus.com>
-
-	Use "warning" function, where appropriate, to output warnings.
-	* setup.c (warning): New function -- outputs warning to console and log
-	file.
-	(tarx): Fix index used to reset file protection.
-	(main): Open the log file earlier so that more stuff can be sent to it.
-
-Sat Apr 15 20:05:33 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (processdirlisting): Make "N" option a little less aggressive.
-
-Fri Apr 14 11:11:29 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (tarx): Wait to after tar has completed to reset protections
-	or suffer races with tar process.
-
-Thu Apr 13 12:51:19 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Eliminate duplicate -nostdinc from CFLAGS.
-	* setup.c (create_uninstall): Create the uninstall .bat file in the
-	"root" so that we can remove the /bin directory.  Add bin\cygwin.bat to
-	list of files to be deleted.  Fix directory detection for determining
-	when to use 'rmdir'.
-	(do_start_menu): Add /usr/local/bin to the path.
-	(main): Add slop to files.array allocation so that we don't have to
-	worry about reallocating the array when it grows too large when doing
-	some trivial "pushes".  Add /tmp and /usr/local/{bin,lib} to list of
-	files.
-
-Thu Apr 13 01:59:44 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* setup.c (processdirlisting): Fix handling of "A" for "A"lways
-	download.
-
-Thu Apr 13 01:11:45 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* path.c (kill_cygpath): New cleanup function.
-	(exit_cygpath): New cleanup function.
-	(cygpath_pipe): New function.  Sets up cygpath in the background for
-	translating filenames.
-	(pathcvt): Use background cygpath for file translation.
-	* setup.c (tarx): New function.  Called to extract tar files, capture
-	logging output, and translate it to Windows format.
-	(recurse_dirs): Use 'tarx' function to extract files.
-	(create_uninstall): Use file list built up by tarx rather than reading
-	the log file.
-	(mkmount): Add ability to mount root.
-	(main): Track elapsed install time.  Mount root.
-	* starry.h: Add index field to strarry for tracking of tarx's usage of
-	this structure.
-	* xsystem.c (xcreate_process): Return proces handle when not waiting.
-
-Mon Apr 10 22:44:56 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* path.c: New file.
-	(pathfp): New function.  Preliminary work for new -f cygpath
-	functionality.
-	* Makefile.in: Add new file.
-	(pathcvt): Move to new file.
-	(dtoupath): Ditto.
-	(utodpath): Ditto.
-	(pathcat): Ditto.
-	* setup.c (processdirlisting): Always open file in text mode.
-	(create_uninstall): Ditto.
-	(getdownloadsource): Ditto.
-	(main): Ditto.
-
-Mon Apr 10 20:33:40 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* xsystem.c: New file.
-	* Makefile.in: Accomodate new file.
-	* setup.c (xsystem): Move to new file.
-	(recurse_dirs): Accept handle to output log file.  Don't use ">"
-	redirection to trap tar output.  Use supplied handle instead.
-	(create_uninstall): Accept FILE pointer to opened log file.  Don't
-	unlink log file here.
-	(do_start_menu): Accept FILE pointer to pass to create_uninstall.
-	(main): Open log file here and pass it to various functions.  Unlink
-	when done.
-
-Mon Apr 10 17:15:52 2000  Christopher Faylor <cgf@cygnus.com>
-
-	Change occurrences of .usr.bin to .bin throughout.
-	* setup.c (geturl): Increase number of retries to 20.  Let user know
-	what's going on during long connects.
-	(processdirlisting): Accept "A"lways and "N"ever as update options.
-	(create_uninstall): Load cygwin1.dll from the current directory rather
-	than \bin.
-	(main): Add some expository text.
-
-Sun Apr  9 20:59:15 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Change method for compressing cygwin1.dll to avoid
-	creating a cygwin1.dll in the current directory.  Ensure the addition
-	of -nostdinc to MINGW_CFLAGS.
-
-Sun Apr  9 02:15:47 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Augment clean target.
-
-Fri Apr  7 17:04:02  Ron Parker <rdparker@sourceware.cygnus.com>
-
-	* README: Added info about non-working mingw implementation
-	* gzip.exe.gz: Replace with a version from the same build as the other
-	tools.
-	* tar.exe.gz: Replace with a version from the same build as the other
-	tools.
-	* mount.exe.gz: Add to repository until, mingw can build setup.
-	* cygpath.exe.gz: ditto
-	* cygwin1.dll.gz: ditto
-	* setup.c: Overwrite /bin and /lib mounts.  Generate working shortcut
-	for Win9x.  Display only a screenfull of options at a time.  Call all
-	tools with an absolute path.
-	* setup.dsp: Restore the carriage returns, MS Developer Studio needs
-	them.
-	* setup.dsw: ditto
-	* zlib.dsw: ditto
-
-Thu Apr  6 19:15:27 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Add "-nostdinc" to regular CFLAGS.  Add target to grab
-	cygwin1.dll from ../cygwin subdirectory.
-	* gzip.exe.gz: Update.
-	* tar.exe.gz: Update.
-
-Wed Apr  5 10:52:08 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Use ZLIB variable as a target.
-
-Sat Apr  1 22:49:09 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: Eliminate traces of cygwinisms.  Don't link with
-	libmsvcrt.a.  It's unneeded.  Build .rc file on the fly from various
-	sources.
-	* configure.in: Locate correct objcopy.
-	* configure: Regenerate.
-
-Sat Apr  1 20:48:09 2000  Christopher Faylor <cgf@cygnus.com>
-
-	* Makefile.in: New file.
-	* configure.in: New file.
-	* configure: New file.
-	* zlib/Makefile.am: New file.
-	* zlib/configure.in: New file.
-	* zlib/aclocal.m4: New file.
-	* zlib/acinclude.m4: New file.
-	* zlib/configure: Regenerate from configure.in.
-	* zlib/Makefile.in: Regenerate from Makefile.am
-
-%%% $Id$
-$Revision$
diff --git a/Makefile.am b/Makefile.am
index 12ad5ca..a947a78 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -274,7 +274,7 @@ inilint_SOURCES = \
 GITVER := $(shell cd $(srcdir) && git describe --match release_\* --abbrev=6 --dirty || "N/A")
 VER := $(subst release_,,$(GITVER))
 
-setup_version.c : $(srcdir)/ChangeLog Makefile
+setup_version.c : Makefile
 	@echo "Setup version: " $(VER)
 	$(AM_V_GEN)(echo '#define VERSION_PREFIX "%%% setup-version"';\
 	echo 'static const char version_store[] = VERSION_PREFIX " '$(VER)'";';\


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]