xbps/lib
Juan RP 1125963da8 libxbps: simplify the algorithm for sorting deps in the transaction.
Rather than using a SIMPLEQ to copy the package dictionary and later on
adding all items into the sorted array, just add the pkg dictionary
into the sorted array directly and removing it from the unsorted array.

This reduces memory usage and greatly sorts all packages that aren't
installed automatically in the correct order in the transaction.

Also added a large comment explaining how the algorithm works and
what it is supposed to do and when.
2011-01-17 17:17:02 +01:00
..
compat Added a configure script to emulate GNU autoconf and related changes. 2010-05-19 22:38:27 +02:00
fetch fetch/ftp.c: fix a cast that caught clang via -Wcast-qual. 2010-10-27 00:17:08 +02:00
portableproplib Added a configure script to emulate GNU autoconf and related changes. 2010-05-19 22:38:27 +02:00
cmpver.c Starting to clean up the public API, move private stuff into xbps_api_impl.h. 2010-11-13 03:18:58 +01:00
download.c Added another bunch of compiler warnings and fix code. 2011-01-15 11:59:44 +01:00
fexec.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
humanize_number.c Mega-commit to document the API with doxygen. 2010-01-21 03:10:19 +01:00
initend.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
Makefile lib/Makefile: build -Wno-error for included libfetch for now. 2011-01-15 13:37:16 +01:00
mkpath.c Mega-commit to document the API with doxygen. 2010-01-21 03:10:19 +01:00
package_config_files.c Fixed a test in config file handling that made all conf_files not properly detected. 2011-01-16 16:55:01 +01:00
package_configure.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_orphans.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_purge.c xbps_purge_pkg: if state is not XBPS_PKG_STATE_CONFIG_FILES, just return 0. 2010-11-21 14:34:49 +01:00
package_register.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_remove_obsoletes.c libxbps: fix a memleak when removing obsolete files in pkg upgrades. 2010-12-25 02:37:25 +01:00
package_remove.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_requiredby.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_state.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
package_unpack.c xbps_unpack_binary_pkg: fix a memleak and make all error paths go to a single point. 2010-12-25 02:38:30 +01:00
pkgmatch.c Added a configure script to emulate GNU autoconf and related changes. 2010-05-19 22:38:27 +02:00
plist.c lib/plist: no need to check against NULL if prop_object_type() is used. 2010-12-03 06:36:05 +01:00
regpkgdb_dictionary.c Fix and improve when there are missing deps in the transaction dictionary. 2010-11-23 23:17:04 +01:00
repository_finddeps.c Fix and improve when there are missing deps in the transaction dictionary. 2010-11-23 23:17:04 +01:00
repository_findpkg.c Fix and improve when there are missing deps in the transaction dictionary. 2010-11-23 23:17:04 +01:00
repository_plist.c xbps_repository_get_pkg_plist_dict: avoid uninitialized var. 2011-01-12 17:15:23 +01:00
repository_pool.c xbps_repository_pool_init: don't loop forever if repo pkg-index.plist files cannot be internalized. 2010-12-19 17:46:32 +01:00
repository_sync_index.c Starting to clean up the public API, move private stuff into xbps_api_impl.h. 2010-11-13 03:18:58 +01:00
repository.c API clean up (part 2), plus misc changes and improvements. 2010-11-19 13:40:13 +01:00
sortdeps.c libxbps: simplify the algorithm for sorting deps in the transaction. 2011-01-17 17:17:02 +01:00
util.c Starting to clean up the public API, move private stuff into xbps_api_impl.h. 2010-11-13 03:18:58 +01:00