pacman/lib/libalpm
Anatol Pomozov c78eb48d91 Extend download callback interface with start/complete events
With the previous download interface the callback uses the first progress
event as 'download has started' signal. Unfortunately it does not work with
up-to-date files that never receive 'download progress' events.
Up-to-date database messages are currently handled in sync_syncdbs()
after the sequential download is completed and a result from ALPM is
received. But this is not going to work with multiplexed download
interface that returns the result only after all files are completed.

Another problem with 'first progress event is the beginning of the
download' is that such events time are unpredictable. Thus the UI progress
bar order might differ from what has been passed by client to
alpm_dbs_update() function. We actually want to keep the dbs progress bars
in a strict order.

To help to solve the given problems extend the download callback to
allow 2 more events - download started and completed. 'Download started'
events appear in the same order as in the list given by a client.

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-05-09 11:58:21 +10:00
..
po Final translation updates for pacman-5.2.0 2019-10-21 17:25:29 +10:00
.gitignore libalpm: add pkg-config file 2012-04-25 20:02:36 -04:00
add.c Remove unneeded goto cleanup 2020-03-09 14:51:38 +10:00
add.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
alpm.c Add multi_curl handle to ALPM global context 2020-05-09 11:58:21 +10:00
alpm.h Extend download callback interface with start/complete events 2020-05-09 11:58:21 +10:00
alpm_list.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
alpm_list.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
backup.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
backup.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
base64.c base64.c: comment out unused variable 2014-01-15 15:54:56 +10:00
base64.h Do not #define _RESERVED_IDENTIFIERS 2016-09-25 18:04:57 +10:00
be_local.c Use GOTO_ERR throughout 2020-04-13 23:44:46 +10:00
be_package.c Use GOTO_ERR throughout 2020-04-13 23:44:46 +10:00
be_sync.c Introduce event types for start/end database list download 2020-05-09 11:58:21 +10:00
conflict.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
conflict.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
db.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
db.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
deps.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
deps.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
diskspace.c Constify some input pointers 2020-04-29 13:57:45 +10:00
diskspace.h Constify some input pointers 2020-04-29 13:57:45 +10:00
dload.c Extend download callback interface with start/complete events 2020-05-09 11:58:21 +10:00
dload.h Implement multiplexed download using mCURL 2020-05-09 11:58:21 +10:00
error.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
filelist.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
filelist.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
graph.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
graph.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
group.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
group.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
handle.c Add multi_curl handle to ALPM global context 2020-05-09 11:58:21 +10:00
handle.h Add multi_curl handle to ALPM global context 2020-05-09 11:58:21 +10:00
hook.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
hook.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
ini.c run hooks during trans_commit 2015-10-18 10:59:23 +10:00
ini.h run hooks during trans_commit 2015-10-18 10:59:23 +10:00
libalpm.pc.in build: check for gpgme with pkg-config before gpgme-config 2019-03-19 14:05:53 +10:00
libarchive-compat.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
log.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
log.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
Makefile.am autotools: distribute meson files 2019-10-04 11:25:48 +10:00
meson.build Remove support for deltas from libalpm 2019-03-07 11:12:12 +10:00
package.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
package.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
pkghash.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
pkghash.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
rawstr.c Remove all modelines from the project 2018-05-14 09:59:15 +10:00
remove.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
remove.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
signing.c Use GOTO_ERR throughout 2020-04-13 23:44:46 +10:00
signing.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
sync.c Introduce event types for start/end database list download 2020-05-09 11:58:21 +10:00
sync.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
trans.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
trans.h build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00
util-common.c Split common utility functions for libalpm and pacman 2013-01-04 21:49:37 +10:00
util-common.h Split common utility functions for libalpm and pacman 2013-01-04 21:49:37 +10:00
util.c Constify some input pointers 2020-04-29 13:57:45 +10:00
util.h Add REALLOC macro to simplify realloc error handling 2020-04-13 23:44:46 +10:00
version.c build-aux/update-copyright 2019 2020 2020-02-10 10:46:03 +10:00