This is the mail archive of the
cygwin-apps-cvs
mailing list for the cygwin-apps project.
setup ChangeLog IniDBBuilderPackage.cc PickVie ...
- From: jturney at sourceware dot org
- To: cygwin-apps-cvs at sourceware dot org
- Date: 26 Nov 2010 14:21:44 -0000
- Subject: setup ChangeLog IniDBBuilderPackage.cc PickVie ...
CVSROOT: /cvs/cygwin-apps
Module name: setup
Changes by: jturney@sourceware.org 2010-11-26 14:21:43
Modified files:
. : ChangeLog IniDBBuilderPackage.cc PickView.cc
choose.cc download.cc install.cc package_db.cc
package_db.h package_meta.cc prereq.cc
Log message:
Change package_db collection of packages from vector to a map so we can look things up in it quickly
This allows packagedb::findBinary() and packagedb::findSource() to be re-written to locate packages
by name rather than searching the entire set, which makes a big difference to total execution time.
* 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.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/ChangeLog.diff?cvsroot=cygwin-apps&r1=2.737&r2=2.738
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/IniDBBuilderPackage.cc.diff?cvsroot=cygwin-apps&r1=2.24&r2=2.25
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/PickView.cc.diff?cvsroot=cygwin-apps&r1=2.39&r2=2.40
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/choose.cc.diff?cvsroot=cygwin-apps&r1=2.157&r2=2.158
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/download.cc.diff?cvsroot=cygwin-apps&r1=2.53&r2=2.54
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/install.cc.diff?cvsroot=cygwin-apps&r1=2.97&r2=2.98
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/package_db.cc.diff?cvsroot=cygwin-apps&r1=2.46&r2=2.47
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/package_db.h.diff?cvsroot=cygwin-apps&r1=2.24&r2=2.25
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/package_meta.cc.diff?cvsroot=cygwin-apps&r1=2.59&r2=2.60
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/prereq.cc.diff?cvsroot=cygwin-apps&r1=2.7&r2=2.8