summaryrefslogtreecommitdiffstats
path: root/lib/libalpm
AgeCommit message (Collapse)AuthorFilesLines
2009-01-03Merge branch 'maint'Dan McGee1-0/+6
Conflicts: lib/libalpm/dload.c po/it.po scripts/makepkg.sh.in
2008-12-11Print proxy information when downloadingDan McGee1-0/+6
May help debug issues we come across with proxy behavior (e.g. those pesky segfaults) as well as be informative to the user when things aren't working quite right. Addresses FS#12396. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-03Merge branch 'maint'Dan McGee3-10/+26
Conflicts: lib/libalpm/dload.c
2008-12-01Add regex to delta code so we don't segfault when reading lineDan McGee2-1/+19
If the delta line doesn't match our regex, we won't go and process it, possibly walking off the end of the string. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-18Minor code cleanupsDan McGee2-9/+7
Mostly noticed when compiling libalpm/pacman with ICC. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-01Set SIGPIPE handler to SIG_IGN when downloadingDan McGee1-0/+12
We don't want a failed write to kill our whole program when we are downloading things, so set the SIGPIPE handler to ignore when downloading and restore any previous signal handler when we complete the download. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-01Make libfetch the 'native' download libraryDan McGee3-22/+21
Use libfetch naming in the code in place of libdownload names. This is in preparation for dropping support for libdownload at some point as libfetch can run on Linux. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-01-Qu reworkNagy Gabor5-57/+14
From now on -Qu is an "outdated package" filter on local database. (This is a behaviour change.) This patch fixes some memleaks and makes the code cleaner, for details see my comment on FS#7884. FS#11868 is implemented. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-29Merge branch 'maint'Dan McGee3-86/+85
2008-10-29Update Chinese translationLyman Li1-77/+76
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-19Correctly close the pipe used for scriptlet executionDan McGee1-3/+3
We never had a call to pclose() in here before, leaving our file descriptor in some sort of limbo state. In addition, clean up some of the other logic such as directly calling exit(1) on a popen() failure rather than going to our cleanup block, and handling and respecting the exit status of the subprocess correctly. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-13Minor updates to Russian translationSergey Tereschenko1-6/+6
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-13Merge branch 'maint'Dan McGee6-8/+4
2008-10-13Remove unnecessary unistd.h header inclusionDan McGee4-4/+0
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-13libalpm: handle syscall interruption correctlyDan McGee2-4/+4
It is possible to throw EINTR from a system call such as open(), close(), or waitpid() if custom signal handlers are set up and they are not initialized with the SA_RESTART flag. This was noticed by Andreas Radke when ^C (SIGINT) was given during the call to waitpid(), causing it to throw the EINTR error and we could not accommodate it. Simply wrap these calls in a simple loop that allows us to retry the call if interrupted. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-09-03Remove unnecessary initialization in new functionsDan McGee2-18/+0
We don't need to zero things out, we are already using calloc for this purpose. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-27Merge branch 'maint'Dan McGee12-41/+576
2008-08-27New Ukrainian translationv3.2.1Roman Kyrylych2-0/+555
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-26Rename alpm_db_get{pkg,grp}cache to alpm_db_get_{pkg,grp}cacheXavier Chantry2-4/+4
This is more consistent with the private functions : _alpm_db_get_{pkg,grp}cache Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-26Change checkdeps and checkdbconflicts to be more flexible.Xavier Chantry6-18/+14
These two functions now take directly a package list rather than a database. checkdbconflicts was renamed to checkconflicts. Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
2008-08-26Final updates on all translation for 3.2.1Xavier Chantry9-18/+0
* Update all .po files because of the last "-q,--quiet" fix. Also for some strange reason, en_GB was missing a few c-format tags. * Finally, delete all unused translations. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-25Update Portuguese (Brazil) translationHugo Doria1-3/+3
Xav : alignment fixes
2008-08-25Update Turkish translationSamed Beyribey1-4/+4
2008-08-25Update Chinese Simplified translation甘露(Lu.Gan)1-4/+4
2008-08-24Update Czech translationVojtěch Gondžala1-6/+4
2008-08-24Update German translationMatthias Gorissen1-3/+3
2008-08-24Update Russian translationSergey Tereschenko1-3/+3
[Xav: one minor fix to libalpm po file]
2008-08-24Merge branch 'maint'Dan McGee13-140/+171
2008-08-23Update British English translationXavier Chantry1-3/+3
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
2008-08-23Update French translationXavier Chantry1-3/+3
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
2008-08-23Update Hungarian translationNagy Gabor1-5/+2
2008-08-23Update Spanish translationJuan Pablo González Tognarelli1-18/+17
Xav : one minor fix (a missing %s in the downgrading message).
2008-08-23Update Polish translationMateusz Herych1-2/+2
2008-08-23Update Italian translationGiovanni Scafora1-9/+8
2008-08-23Update translation files for pending 3.2.1 releaseDan McGee13-118/+154
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23Move -Sp implementation to the front-endNagy Gabor2-33/+20
This patch kills one of our hackish pseudo transactions: PRINTURIS. (The other one is -Sw) From now on, front-end must not call trans_commit in case of -Sp, it should print the uris of target packages "by hand" instead. PRINTURIS flag was removed, NOCONFLICTS flag can be passed to skip conflict checks. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23New public alpm_pkg_get_db functionNagy Gabor2-0/+10
This function returns with the origin database of a package. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23Pass the old package with PM_TRANS_EVT_UPGRADE_STARTNagy Gabor1-5/+6
This is more rational and coherent with PM_TRANS_EVT_UPGRADE_DONE. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23Cleanup of _alpm_pkg_compare_versions.Xavier Chantry3-28/+41
* Change the return values to be more informative. It was previously boolean, only indicating if a sync package was newer than a local package. Now it is a simple wrapper to vercmp, handling the force flag. * Remove the verbose output from _alpm_pkg_compare_versions. The "force" message is not so useful. The "package : local (v1) is newer than repo (v2)" message can be moved to -Su operation. For the -S operation, it is better to have something like : "downgrading package from v1 to v2" * Don't display the "up to date -- skipping" and "up to date -- reinstalling" messages, when the local version is newer than the sync one. * Fix the behavior of --needed option to not skip a target when the local version is newer, and clarify its description. * Add a new alpm_pkg_has_force function This allows us to access the pkg->force field like any other package fields. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-20Remove an usused variable from alpm/util.c/_alpm_lckmk()Nagy Gabor1-10/+2
Probably a tweakable "lockdb-retry" option was planned which is not implemented. (Now it should be implemented in front-end.) So now this variable was unused and caused a small memleak. (FREE(dir) was not reached in case of error.) Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-20libalpm/add.c : ensure the old pkg was fully loaded.Xavier Chantry1-0/+3
This fixes FS#11218. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-09Fix segfault on x86_64 when using UseSyslogDan McGee1-2/+9
Due to differences in handling va_list between i686 and x86_64, this bug can only be seen on x86_64. va_list usage is not allowed but we had been getting away with it. See http://lists.opensuse.org/opensuse-programming/2008-02/msg00005.html for details and explanation. This fixes FS#11096. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-08Fix variable naming issues in _alpm_db_cmpDan McGee2-3/+3
When this function got a rewrite in commit f43805d875, argument and variable names got a bit mixed up when separating the casts from the strcmp operation. Fix the mixup which also fixes a possible segfault when this function is called. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-06Avoid double slashes in URLs given to libdownload.Xavier Chantry2-3/+14
If a Server specified in pacman.conf had a trailing slash, libalpm ended up building URLs with double slashes, and this broke libdownload with errors like the following one : error: failed retrieving file 'redland-1.0.8-1-i686.pkg.tar.gz' from 192.168.0.90 : Command okay So the public function alpm_db_set_server will make sure to remove the trailing slash of servers. For the private function _alpm_download_single_file, I only added a comment. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-05dload.c : drop the specific handling of file: url.Xavier Chantry1-15/+0
Before commit fc48dc31, file:/// urls forced the use of the internal downloader (libdownload), because the default XferCommand, wget, does not handle them. We tried to move away from forcing usage of libdownload, so this commit implemented the handling of file:/// urls manually. However, this implementation is way too basic. It does not handle the progress bar, thus nothing at all appears in pacman's output when a file: repo is synchronized, or when a file is downloaded from a sync repo. Also, it is not able to detect when the repo is already up-to-date. When libdownload was used, both were handled. It seems better to just drop this implementation for now. All users who use libdownload will get the much better file:// handling back. For the users of XferCommand, it will be more problematic, but they have several options: 1) Switch to a downloader handling file:// (wget doesn't, but curl does for example). 2) Drop the file:// repo, and set up light http or ftp servers instead. Consider that going that way would make this repo available for the whole local network, which can be useful. 3) Switch back to libdownload, which works perfectly for many users. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-30Final update of all translations.Xavier Chantry1-1/+1
Two recent commits slightly broke the translations, so this fixes all of them. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-25Small fix to Italian translationGiovanni Scafora1-2/+2
Signed-off-by: Giovanni Scafora <linuxmania@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-25Implement AND based package searching.Xavier Chantry1-1/+8
This fixes FS#2334. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> [Dan: add some comments to the code] Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-25Remove unused strverscmp substituteDan McGee2-105/+0
Our internal vercmp function was the only user of this, and it no longer relies on it. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-25libalpm/package.c : fix infolevel bug in pkg_dupXavier Chantry1-11/+10
The pkg_dup function shouldn't call any alpm_pkg_get_ accessors because this can fill the old package with all INFRQ_DESC fields for example, and this won't necessarily be reproduced in the new package (for all the fields that were copied before). Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>