- 04 Jan, 2017 2 commits
-
-
The former is really old, and should be avoided. Signed-off-by:
Allan McRae <allan@archlinux.org>
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 05 Dec, 2016 2 commits
-
-
In FS#43434, Downloads which fail and are restarted on a different server will resume and may display a negative download speed. The payload's progress in libalpm was not properly reset which ultimately caused terminal noise because the line width calculation assumes positive download speeds. This patch fixes the incomplete reset of the payload by mimicing what be_sync.c:alpm_db_update() does over in sync.c:download_single_file(). The new dload.c:_alpm_dload_payload_reset_for_retry() extends beyond the current behavior by updating initial_size and prevprogress for this case. This makes pacman reset the progress properly in the next invocation of the callback and display positive download speeds. Fixes FS#43434. Signed-off-by:
Martin Kühne <mysatyre@gmail.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
This does exactly the same thing as it code it replaces, but punt to curl to do it for brevity. Requires curl 7.25.0, which we already cover. Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 22 Oct, 2016 1 commit
-
-
This allows functions which return an _alpm_errno_t to always return a genuine _alpm_errno_t for consistency, even in cases where there are no errors. Since ALPM_ERR_OK = 0, their callers can still simply check 'err = some_fn(); if (!err) { ... }'. Signed-off-by:
Ivy Foster <ivy.foster@gmail.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 31 Aug, 2016 1 commit
-
-
Curl 7.32.0 added CURLOPT_XFERINFOFUNCTION, which deprecates CURLOPT_PROGRESSFUNCTION and means less casting doubles to size_ts for alpm. This change has no user-facing nor frontend-facing effects. Signed-off-by:
Ivy Foster <ivy.foster@gmail.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 30 Aug, 2016 1 commit
-
-
When curl calls alpm's dlcb, alpm calls the frontend's cb with the following (dlsize, totalsize) arguments: 0, -1: initialize 0, 0: no change since last call x {x>0, x<y}, y {y>0}: data downloaded, total size known x {x>0}, x: download finished If total size is not known, do not call frontend cb (no change to original behavior); alpm's callback shouldn't be called if there is a download error. See agregory's original spec here: https://wiki.archlinux.org/index.php/User:Apg#download_callback Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 04 Jan, 2016 1 commit
-
-
Allan McRae authored
make update-copyright OLD=2015 NEW=2016 Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 11 Nov, 2015 1 commit
-
-
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 01 Feb, 2015 1 commit
-
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 24 Dec, 2014 1 commit
-
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 19 Oct, 2014 1 commit
-
-
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 16 Oct, 2014 2 commits
-
-
On filesize exceeded error pacman leaves a .part file in cache dir, resulting in this error on next try: error: failed to commit transaction (wrong or NULL argument passed) Errors occurred, no packages were upgraded. Unlink the file on error to avoid this.
-
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 02 Oct, 2014 1 commit
-
-
When a package is already partially downloaded in the cache, its download size will only be of what's left to be downloaded. Since pkg->download_size is what's used when calculating the total download size for the totaldl callback, same thing apply. However, the download progress callback was including this initial size, which would thus lead to invalid values (and percentage) used in frontends. That is, the progress bar could e.g. go further than 100% In the case of pacman, there is a sanity check for different historical reason (44a57c89 ), so before the possible "overflow" was noticed, the total download size/progress reported was wrong. Once caught, the TotalDownload option was ignored and it would use individual file download values as fallback instead. Signed-off-by:
Olivier Brunel <jjk@jjacky.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 04 Aug, 2014 1 commit
-
-
Signed-off-by:
Ryo Munakata <ryomnktml@gmail.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 22 May, 2014 1 commit
-
-
Use of this flag causes connections to be closed on 404s -- a common occurrence when your config sets DatabaseOptional. Handle the error gracefully, so that the connection can be reused. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 28 Jan, 2014 1 commit
-
-
Forcing vim users to view files with a tabstop of 2 seems really unnecessary when noet is set. I find it much easier to read code with ts=4 and I dislike having to override the modeline by hand. Command run: find . -type f -exec sed -i '/vim.* noet/s# ts=2 sw=2##' {} + Signed-off-by:
Florian Pritz <bluewind@xinu.at> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 06 Jan, 2014 1 commit
-
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 19 Dec, 2013 1 commit
-
-
Previously, we only allowed the default of responding to basic auth challenges. Mirrors requiring authorization are far and away the edge case, but there's no sense in preventing access to them. Implements FS#38184. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 15 Nov, 2013 1 commit
-
-
This commit: -- replaces space-based indents with tabs per the coding standards -- removes extraneous whitespace (e.g. extra spaces between function args) -- adds missing braces for a one-line if statement Signed-off-by:
Jason St. John <jstjohn@purdue.edu>
-
- 07 Nov, 2013 1 commit
-
-
Signed-off-by:
Jason St. John <jstjohn@purdue.edu> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 18 Sep, 2013 1 commit
-
-
If the server redirects from ${repo}.db to ${repo}.db.tar.gz pacman gets this wrong: It saves to new filename and fails when accessing ${repo}.db. We need the remote filename only when downloading remote files with pacman's -U operation. This introduces a new field 'trust_remote_name' to payload. If set pacman downloads to the filename given by the server. The field trust_remote_name is set in alpm_fetch_pkgurl(). Fixes FS#36791 ([pacman] downloads to wrong filename with redirect). [dave: remove redundant assignment leading to memory leak] Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 21 Aug, 2013 1 commit
-
-
Allan McRae authored
These references to bug numbers assume we will forever be using that bug tracker. It is better to properly comment the code instead (which was done in almost all cases anyway). Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 22 Jul, 2013 1 commit
-
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 05 Jul, 2013 1 commit
-
-
On operating systems we support, the behavior is always such that the kernel will do the right thing as far as invalidating the file descriptor, regardless of the eventual return value. Therefore, potentially looping and calling close multiple times is wrong. At best, we call close again on an invalid FD and throw a spurious EBADF error. At worst, we might close an FD which doesn't belong to us when a multi-threaded application opens its own file descriptor between iterations of the loop. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 24 Feb, 2013 1 commit
-
-
Avoids the segfault seen in FS#33911. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 29 Jan, 2013 2 commits
-
-
I suspect that eventually we're going to end up returning a pointer to an allocated struct to describe the download result, but that's for another patch when the need arises... Fixes FS#33508. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
Users have hit issues behind corporate firewalls that initially throttle downloads to ~1B/sec. Signed-off-by:
Olivier Langlois < <olivier.pis.langlois@transport.alstom.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 17 Jan, 2013 1 commit
-
-
RFC 2616 doesn't forbid a 301 or 302 repsonse from having a body, and servers exist in the wild that show this behavior. In order to prevent pacman from showing a progress bar when we aren't actually downloading a package (and merely following one of these pain in the butt redirects), capture the server response code in the response header, rather than waiting to peel it off the handle after the download has finished. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Reported-by:
Alexandre Filgueira <alexfilgueira@cinnarch.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 03 Jan, 2013 1 commit
-
-
Allan McRae authored
Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 14 Dec, 2012 1 commit
-
-
Signed-off-by:
Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by:
Allan McRae <allan@archlinux.org>
-
- 20 May, 2012 1 commit
-
-
Dave Reisner authored
Apparently gcc 4.7 has decided that -Wshadow warnings aren't worth reporting anymore even with the flag enabled. These were found on an Ubuntu 10.04 install. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 09 Apr, 2012 1 commit
-
-
Dan McGee authored
Detected by clang scan-build static code analyzer. * Don't attempt to free an uninitialized gpgme key variable * Initialize answer variable before asking frontend a question * Pass by reference instead of value if uninitialized fields are possible in download signal handler code * Ensure we never call strlen() on NULL payload->remote_name value Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 15 Mar, 2012 1 commit
-
-
Dave Reisner authored
To avoid conflicts on reusing a payload after a failed download, ensure that we reset the filename hints in the payload struct prior to the download operation. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 20 Feb, 2012 1 commit
-
-
Nagy Gabor authored
It can happen that the to-be-downloaded file cannot be created in cachedir. For example, I am an -Sup user, and it is comfortable to set --cachedir to /mnt/pendrive, which is a FAT filesystem, so files like capseo-1:0.3-2-i686.pkg.tar.xz cannot be downloaded to there. Before this patch, pacman didn't give clear output about what happens when the download code could not create the necessary file. This can be confusing with -Su. An example output: *** $ sudo pacman -S capseo bochs --cachedir /c/TEMP resolving dependencies... looking for inter-conflicts... Targets (2): bochs-2.4.6-1 capseo-1:0.3-2 Total Download Size: 0.61 MiB Total Installed Size: 2.61 MiB Proceed with installation? [Y/n] :: Retrieving packages from extra... warning: failed to retrieve some files from extra bochs-2.4.6-1-i686 611.5 KiB 118K/s 00:05 [------------------] 97% error: failed to commit transaction (unexpected error) Errors occurred, no packages were upgraded. *** After the patch, pacman will give more informative error message (and pm_errno is set properly): *** error: could not open file '/c/TEMP/capseo-1:0.3-2-i686.pkg.tar.xz.part': Invalid argument error: failed to commit transaction (failed to retrieve some files) *** Unfortunately, the "could not open file" error message is printed for every mirror (that can be dozens of lines), which is ugly, but at least informative... Without modifying the download logic (for example, by introducing -2 return value for _alpm_download() to indicate giving up), this ugliness cannot be eliminated. Signed-off-by:
Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 14 Feb, 2012 1 commit
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 23 Jan, 2012 2 commits
-
-
Dave Reisner authored
Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dave Reisner authored
This is particularly important in the case of FTP control connections, which may be closed by rogue NAT/firewall devices detecting idle connections on larger transfers which may take 5-10+ minutes. Signed-off-by:
Dave Reisner <dreisner@archlinux.org> Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 19 Jan, 2012 1 commit
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-