summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Dependency code style cleanupsDan McGee2011-08-11
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* configure: simplify CARCH generation madnessDan McGee2011-08-11
| | | | | | | | | | | | | | Rather than a hardcoded list of only a few select architectures (of the 250+ case statements in config.guess), simply define CARCH to be the first component of the "target triplet". This introduces one "regression"- powerpc will no longer become ppc. However, this is easily worked around in downstream distros if wanted. This was the only CPU architecture with this oddity so it was felt worth the price to make this change. Note that 'ppc64' wasn't handled in this same odd fashion before anyway. Signed-off-by: Dan McGee <dan@archlinux.org>
* build: remove mucking with CARCHFLAGSDan McGee2011-08-11
| | | | | | | | | We've never received an update to this, and gcc has sane defaults out of the box anyway, as do most projects in their build systems. Remove the magic here and just let downstream distros handle any changes or additions necessary, as we already do for LDFLAGS. Signed-off-by: Dan McGee <dan@archlinux.org>
* stop progress callbacks after curl_easy_perform returnsDave Reisner2011-08-11
| | | | | | | | | | This prevents possible null dereferences in FTP transfers when the progress callback is touched during connection teardown. http://curl.haxx.se/mail/lib-2011-08/0128.html Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* dload: remove unnecessary cast in alpm_load_payload_freeDave Reisner2011-08-11
| | | | | | | Dan: make it compile, s/load/payload/. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* Merge branch 'maint'Dan McGee2011-08-09
|\ | | | | | | | | Conflicts: src/pacman/callback.c
| * Fix divide by zero when downloading zero length filesDan McGee2011-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If someone did a 'touch bogusrepo.db', we had the potential to throw a SIGFPE or divide by zero, given that the total file size was 0 and getting passed up to the pacman callback. Fix this so we get weird but sane output and don't blow up when downloading: :: Synchronizing package databases... core 35.7K 306.7K/s 00:00:00 [###################] 100% bogusrepo 0.0K 0.0K/s 00:00:00 [###################] 100% Exception as seen in gdb: Program received signal SIGFPE, Arithmetic exception. 0x000000000040cc73 in cb_dl_progress (filename=0x619dfc "bogusrepo.db", file_xfered=0, file_total=0) at callback.c:584 584 file_percent = (file_xfered * 100) / file_total; Signed-off-by: Dan McGee <dan@archlinux.org>
* | Parse replaces strings as dep strings with version specsDan McGee2011-08-09
| | | | | | | | | | | | | | | | This is done extremely crudely and is not very efficient, but it does push us down the path of being closer to right, as one additional test now passes. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Conflict comparison performance enhancementsDan McGee2011-08-09
| | | | | | | | | | | | | | * Add *_hash fields to conflict struct and populate them * Remove unnecessary backwards string comparisons Signed-off-by: Dan McGee <dan@archlinux.org>
* | Update string catalogs after string tweaksDan McGee2011-08-09
| | | | | | | | | | | | | | | | | | This also pulls in some early translations we had entered in Transifex in the last day so those would not be lost. The diffstat is huge and not very telling as usual, as all sorts of fuzzyness switches happened this time around for some reason. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Add a slightly simpler versioned replace testDan McGee2011-08-09
| | | | | | | | | | | | | | | | | | It turns out we have a few problems here which are best tackled independently. The first is simply parsing replacements as dep strings; the second will be dealing with replaces when the original package name still exists in the repository. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Don't walk off front of string when stripping newlineDan McGee2011-08-09
| | | | | | | | | | | | | | | | If the string was zero-length to begin with, or consists of only newline characters, nothing stopped us from incrementing right off the front of the string. Ensure len stays above zero the whole time. Signed-off-by: Dan McGee <dan@archlinux.org>
* | doc/pacman.conf: make SigLevel overview an unordered listDan McGee2011-08-09
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | Fix compile error when curl is not usedDan McGee2011-08-09
| | | | | | | | | | | | | | | | | | | | Noticed in my PowerPC Linux VM: cc1: warnings being treated as errors dload.c:45: error: 'get_filename' defined but not used make[3]: *** [dload.lo] Error 1 Signed-off-by: Dan McGee <dan@archlinux.org>
* | Depend on name_hash being setDan McGee2011-08-09
| | | | | | | | | | | | | | This is a fairly valid assumption at this point, or at least as good of one as assuming packages all have names. Signed-off-by: Dan McGee <dan@archlinux.org>
* | pactest: improve speed of local DB dependent rulesDan McGee2011-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We were doing some really silly stuff before and abusing the os.walk() call, having to walk the entire local database for every single PKG rule. We really only need top level directories, and we can cache any generated package since calls to db_read() are well-defined and only happen in one place. This speeds up the running of tests that may want to add 100 PKG_VERSION rules at once, where before we had to limit how many we used in order to not put a serious cramp in the speed of the test suite run. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Add reason to corrupted package callbackDan McGee2011-08-08
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | Attempt to fix up some of the brokenness around failed package loadsDan McGee2011-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bit of a mess, due to the fact that we have a progress meter running. It is also ironic that we are in the midst of a method named "commit" when we haven't done a damn thing yet, and can still fail hard if either a checksum or signature is invalid or unrecognized. Adapt the former test_md5sum method to be invoked for any of the various failure types, which at least gives the user some indication of what packages are failing. A second patch will be needed to actually show worthwhile error codes, but this is going to involve modifying the actual data passed with the callback. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Update several translation stringsDan McGee2011-08-08
| | | | | | | | | | | | | | * Fix typos/capitalization * Make sure large blocks of text are translated in one unit Signed-off-by: Dan McGee <dan@archlinux.org>
* | Update transifex config for new translation layoutDan McGee2011-08-08
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | Update all translation filesDan McGee2011-08-08
| | | | | | | | | | | | | | This moves us toward staring translations for the 4.0.0 release, although this should not be interpreted as a string freeze by any means. Signed-off-by: Dan McGee <dan@archlinux.org>
* | _alpm_access(): don't call gettext() in debug level loggersDan McGee2011-08-08
| | | | | | | | | | | | | | | | This is standard procedure elsewhere and cuts down on translations that won't be seen (and we don't want if we need English debug output anyway). Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge branch 'maint'Dan McGee2011-08-08
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: lib/libalpm/dload.c lib/libalpm/po/fi.po lib/libalpm/po/libalpm.pot po/de.po po/fi.po src/pacman/po/pacman.pot src/pacman/util.c
| * Update translations from transifexDan McGee2011-08-08
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
| * doc/PKGBUILD: fix pkgver for -git packagesFlorian Pritz2011-08-08
| | | | | | | | | | Signed-off-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Dan McGee <dan@archlinux.org>
| * Fix group selection entry for large inputsDan McGee2011-07-25
| | | | | | | | | | | | | | | | | | | | | | | | Hardcoding anything always ends up burning you, and the arbitrary length of 64 here did just that. Add the ability to reallocate the readline buffer for longer inputs if necessary, and add other error checking as approprate. This also plugs one small memory leak of the group processing code selection array. Addresses FS#24253. Signed-off-by: Dan McGee <dan@archlinux.org>
| * libalpm: Set ret correctly in download_internal()Lukas Fleischer2011-07-25
| | | | | | | | | | | | | | | | | | Immediately jump to the cleanup code after setting the return code to -1 in case rename() fails. Otherwise, it will be reset to 0 right after we leave the if branch. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Store a package info level flag if we fail to load dataDan McGee2011-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we are missing a local database file, we get repeated messages over and over telling us the same thing, rather than being sane and erroring only once. This package adds an INFRQ_ERROR level that is added to the mask if we encounter any errors on a local_db_read() operation, and short circuits future calls if found in the value. This fixes FS#25313. Note that this does not make any behavior changes other than suppressing error messages and repeated code calls to failure cases; we still have more to do in the "local database is hosed" department. Also make a small update to the wrong but unused flags set in be_package; using INFRQ_ALL there was not totally correct. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Add a test harness for new pacsort commandDan McGee2011-08-08
| | | | | | | | | | | | | | | | Note that this is meant to exercise pacsort more than the underlying version comparsion; that is better left to the standalone vercmptest.sh test script. Signed-off-by: Dan McGee <dan@archlinux.org>
* | mark option structs as constDave Reisner2011-08-08
| | | | | | | | | | | | | | | | These are never modified and even getopt_long's prototype shows this modifier on the parameter. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | paccache: use pacsort instead of sort -VDave Reisner2011-08-08
| | | | | | | | | | Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | src/util/Makefile.am: alphabetize targetsDave Reisner2011-08-08
| | | | | | | | | | Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | pacsort: add new utilityDave Reisner2011-08-08
| | | | | | | | | | | | | | | | pacsort is a command line sorting utility that implements libalpm's alpm_pkg_vercmp algorithm. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Bash-ify test/util/vercmptest.shDan McGee2011-08-08
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | makepkg: ignore epoch when undeclaredDave Reisner2011-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In this case, we skip the epoch versioning entirely, as if it were declared as 0. Prevents errors such as: /usr/bin/makepkg: line 244: ((: ! : syntax error: operand expected (error token is " ") ==> Finished making: cower-git :20110808-1 (Mon Aug 8 17:17:27 EDT 2011) Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | contrib/paccache: misc cleanup and bugfixDave Reisner2011-08-08
| | | | | | | | | | | | | | | | | | | | * change error verbiage when run as root * delete sigs along with packages * fix bug in diskspace calculations * merge END block in pkgfilter Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Check return value of rename() callsDan McGee2011-08-08
| | | | | | | | | | | | | | | | | | We did a good job checking this in add.c, but not necessarily anywhere else. Fix this up by adding checks into dload.c, remove.c, and conf.c in the frontend. Also add loggers where appropriate and make the message syntax more consistent. Signed-off-by: Dan McGee <dan@archlinux.org>
* | docs/pacman.conf: Document SigLevel optionDan McGee2011-08-02
| | | | | | | | | | | | | | | | | | This adds docs for SigLevel, which can exist in both [options] and [repository] sections. It also does a bit of reworking of the structure of this manpage and adds a labeled list under the repo sections where we didn't have one before. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Implement parsing of the new SigLevel directiveDan McGee2011-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add code to conf.c that parses the new SigLevel directive. An overwhelming number of options are presented, but most users will still be fine with the Never/Optional/Required trio. More advanced users can combine these or any of the other options on a 'SigLevel = ' line, which is parsed in a left-to-right fashion and flags turned on and off accordingly. For example, all three of these will net the same config: SigLevel = Required PackageOptional SigLevel = Optional DatabaseRequired SigLevel = DatabaseRequired PackageOptional Additionally, database-specific lines assume you wish to start with any global default that has been set. For example, if any of the above lines were in the [options] section, something such as: SigLevel = PackageRequired PackageAllowMarginal Would continue to enforce required database signatures. Inspiration-by: Kerrick Staley <mail@kerrickstaley.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* | paccache: add new contrib scriptDave Reisner2011-08-02
| | | | | | | | | | | | | | | | | | | | paccache is a robust and flexible package cache cleaner with a variety of options. Much credit goes to DJ Mills and Pat Brisbin for ideas behind this script. Signed-off-by: Dave Reisner <dreisner@archlinux.org> [Dan: add .gitignore entry] Signed-off-by: Dan McGee <dan@archlinux.org>
* | pacman-key: follow gpg options for listing keysAllan McRae2011-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current --list option outputed the keys and all their signatures which can be overly verbose. It also did not take a list of keys on the command line to limit its output (although the code suggests that was intended). That patch brings consistency with gpg, providing --list-keys and --list-sigs options that function equivalently to those provided by gpg. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Don't trim whitespace when reading database entriesDan McGee2011-08-02
| | | | | | | | | | | | | | | | | | | | | | We don't write with extra or unknown whitespace, so there is little reason for us to trim it when reading either. This also fixes the hopefully never encountered "paths that start or end with spaces" issue, for which two pactests have been added. The tests also contain other evil characters that we have encountered before and handle just fine, but it doesn't hurt to ensure we don't break such support in the future. Signed-off-by: Dan McGee <dan@archlinux.org>
* | pactest: use subprocess module instead of os.systemDan McGee2011-08-02
| | | | | | | | | | | | | | | | | | This is more in line with standard Python practice, and makes keyboard interrupts behave a lot more sanely. It also prevents the useless spawning of a shell as well as simplifies the command building and working directory stuff. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Revamp signing checksDan McGee2011-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | This ensures we are actually making correct use of the information gpgme is returning to us. Marginal being allowed was obvious before, but Unknown should deal with trust level, and not the presence or lack thereof of a public key to validate the signature with. Return status and validity information in two separate values so check methods and the frontend can use them independently. For now, we treat expired keys as valid, while expired signatures are invalid. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Tidy up testdb to match coding stylesDan McGee2011-07-28
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | Make free_groupcache() privateDan McGee2011-07-28
| | | | | | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge remote-tracking branch 'dave/scripts-fixup'Dan McGee2011-07-28
|\ \
| * | scripts/pkgdelta: exit properly on missing argsDave Reisner2011-07-28
| | | | | | | | | | | | | | | | | | | | | Removes usage of 'nounset' which, when combined with 'errexit' can cause undesirable early exits. Signed-off-by: Dave Reisner <dreisner@archlinux.org>
| * | scripts/repo-add: show usage when no DB file specifiedDave Reisner2011-07-28
| | | | | | | | | | | | Signed-off-by: Dave Reisner <dreisner@archlinux.org>
* | | Unify modelines in Asciidoc filesDan McGee2011-07-28
|/ / | | | | | | | | | | | | | | | | | | | | This gets us close to using the same modeline in all files we run through Asciidoc, as well as adding the spell and spelllang declarations, just as we had in NEWS already. The choice of 'en_us' is mainly for consistency and because the body of work already uses these spellings. Signed-off-by: Dan McGee <dan@archlinux.org>