summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* pacman-key: compatibility with gnupg-2.1Tobias Powalowski2014-11-21
| | | | | | GnuPG 2.1 no longer allow empty passphrases by default. Signed-off-by: Allan McRae <allan@archlinux.org>
* Remove pacsyscleanAllan McRae2014-11-21
| | | | | | | This script parsed pacman output and was broken by the change to the use of appropriate units for package sizes. Signed-off-by: Allan McRae <allan@archlinux.org>
* pacsort: parse inputs up front into control structDave Reisner2014-11-20
| | | | | | | | | | | | | | | | | | | | | | This moves most of the parsing work out of the sorting path. The explode and splitfile functions now call input_new and append input_t structs to the list of sort candidates instead of raw strings. This lets us make smarter and easier decisions in the sorting callbacks, which are now also split into the version and file comparison methods for clarity. This fixes two bugs: 1) Incorrect ordering with filenames containing epoch in the pkgver 2) Incorrect ordering with package names which are substrings of each other (e.g. "systemd" and "systemd-sysvcompat"). Performance of the --files mode degrades slightly as a result of this change, but not unreasonably. Sorting with small inputs (5-10) doubles in runtime, but larger inputs (4000+) only increase by 20%. ref: https://bugs.archlinux.org/task/37631 Signed-off-by: Allan McRae <allan@archlinux.org>
* checkupdates: do not print ignored packagesAllan McRae2014-11-19
| | | | | | FS#41223 Signed-off-by: Allan McRae <allan@archlinux.org>
* version: fix memory leak in early returnDave Reisner2014-11-19
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* Fix translation error and remove empty po filesAllan McRae2014-11-19
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* Update po files to send to TransifexAllan McRae2014-11-18
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* Pull translation updates from TransifexAllan McRae2014-11-18
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* Do not warn about missing files in NoExtractAllan McRae2014-11-18
| | | | | | When checking a packages files, ignore any missing files in NoExtract Signed-off-by: Allan McRae <allan@archlinux.org>
* Add alpm_option_match_noextractAllan McRae2014-11-18
| | | | | | This is useful for frontends testing whether a file is in NoExtract Signed-off-by: Allan McRae <allan@archlinux.org>
* extract_single_file: fix memory leak in error conditionAllan McRae2014-11-18
| | | | | | The memory assigned to checkfile was leaked in the error condition. Signed-off-by: Allan McRae <allan@archlinux.org>
* _alpm_backup_dup: fix memory leak in error caseAllan McRae2014-11-18
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: symlink files in noextract into $srcdirAllan McRae2014-11-18
| | | | | | | | | File in noextract should still be symlinked into $srcdir so that they can be accessed without using $SRCDEST. Using noextract on VCS files makes no sense as these are not being extracted, so now this does nothing. Signed-off-by: Allan McRae <allan@archlinux.org>
* Remove logging of NoExtract eventsAllan McRae2014-11-18
| | | | | | | With globbing in NoExtract, these log events can quickly pile up hiding important information from the log. Signed-off-by: Allan McRae <allan@archlinux.org>
* Fix crash when using external downloaderAllan McRae2014-11-17
| | | | | | | | | | Commit 9d96bed9 attempts to use the same effective URL for the db and its signature download. However, this information is not available when we use an external downloader, resulting in a crash. Fall back to the old method when the effective URL is unavailable. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: svn: update existing sources in srcdir without removing them first.Lukáš Jirkovský2014-11-17
| | | | | | | | This matches the behaviour with non-VCS sources. It also allows incremental builds when subversion is used to obtain sources. Signed-off-by: Lukáš Jirkovský <l.jirkovsky@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: only strip vcs prefixes from front of urlAndrew Gregory2014-11-17
| | | | | | | Referenced by FS#41811 Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: do not strip bzr+ from bzr+ssh urlsAndrew Gregory2014-11-17
| | | | | | | | | bzr does not recognize bare ssh:// urls. Fixes FS#41811 Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: bzr: update existing sources in srcdir without removing them first.Allan McRae2014-11-17
| | | | | | | | | | | | The local changes are discarded when updating. This matches the behaviour when non-VCS sources are used. It also allows incremental builds. This also changes the checkout during bzr source "extraction" to a heavyweight checkout so that pulling a specific revision does not alter the original download. Original-work-by: Lukáš Jirkovský <l.jirkovsky@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: hg: update existing sources in srcdir without removing them first.Lukáš Jirkovský2014-11-09
| | | | | | | | The local changes are discarded when updating. This matches the behaviour when non-VCS sources are used. It also allows incremental builds. Signed-off-by: Lukáš Jirkovský <l.jirkovsky@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: checkout a revision specified in SVN fragment in download_svn.Lukáš Jirkovský2014-11-09
| | | | | | | | | | | | | Previously the sources were dowloaded in HEAD revision in the download_svn(). If a specific revision was requested in fragment, the code was updated to that revision in extract_svn(). However, because SVN is a centralized system, this means that the changed sources has to be downloaded again. By moving the fragment handling to download_svn(), we get the correct revision without having to download it later in extract_svn(). Signed-off-by: Lukáš Jirkovský <l.jirkovsky@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: git: update existing sources in srcdir without removing them first.Lukáš Jirkovský2014-11-09
| | | | | | | | The local changes are discarded when updating. This matches the behaviour when non-VCS sources are used. It also allows incremental builds. Signed-off-by: Lukáš Jirkovský <l.jirkovsky@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: improve stripping pkgdesc of whitespace for .PKGINFOAllan McRae2014-11-09
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: introduce .SRCINFO files for source packagesDave Reisner2014-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to .PKGINFO, .SRCINFO provides structured metadata from the PKGBUILD to be included with source packages. The format is structured such that it contains a "pkgbase" and one to many "pkgname" sections. Each "pkgname" section represents an "output package", and inherits all of the attributes of the "pkgbase" section, and then can define their own additive fields. For example, a simple PKGBUILD: pkgbase=ponies pkgname=('applejack' 'pinkiepie') pkgver=1.2.3 pkgrel=1 arch=('x86_64' 'i686') depends=('friendship' 'magic') build() { ...; } package_applejack() { provides=('courage') ...; } package_pinkiepie() { provides=('laughter') ...; } Would yield the following .SRCINFO file: pkgbase = ponies pkgdesc = friendship is magic pkgver = 1.2.3 pkgrel = 1 arch = x86_64 arch = i686 depends = friendship depends = magic pkgname = applejack provides = courage pkgname = pinkiepie provides = laughter The code to generate this new file is taken a project which I've been incubating[0] under the guise of 'mkaurball', which creates .AURINFO files for the AUR. AURINFO is the exactly same file as .SRCINFO, but named as such to make it clear that this is specific to the AUR. Because we're parsing shell in the packaging functions rather than executing it, there *are* some limitations, but these only really crop up in more "exotic" PKGBUILDs. Smoketesting[1] for accuracy in the Arch repos yields 100% accuracy for [core] and [extra]. [community] clocks in at ~98% accuracy (.3% difference per PKGBUILD), largely due to silly haskell packages calling pacman from inside the PKGBUILD to determine dependencies. [multilib] currently shows about 92% accuracy -- a statistic which can be largely improved by utilizing the recently merged arch-specific attribute work. This is also a smaller repo so the numbers are somewhat inflated. In reality, this is only a .8% variance per PKGBUILD. Together, we can make PKGBUILD better. [0] https://github.com/falconindy/pkgbuild-introspection [1] https://github.com/falconindy/pkgbuild-introspection/blob/master/test/smoketest Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: simplify epoch handlingDave Reisner2014-11-09
| | | | | | | | | | | | We can avoid setting a default value for epoch since we intend to mean unset and "0" as the same thing. This is also a more consistent default as the display of epoch=0 is no epoch at all in the full package version. The extra paranoia in get_full_version can be removed due to lint_epoch guarding against non-integer values of epoch. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: ignore empty global attributes in extractionDave Reisner2014-11-09
| | | | | | | | This bug isn't currently exposed by any of the existing codepaths, but an upcoming patch to introduce SRCINFO files to makepkg will expose this. Signed-off-by: Allan McRae <allan@archlinux.org>
* Add --assume-installed to shell completionFlorian Pritz2014-11-09
| | | | | Signed-off-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Allan McRae <allan@archlinux.org>
* Add --assume-installed to pacman --helpFlorian Pritz2014-11-05
| | | | | Signed-off-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg.8: remove superfluous "::" in envvar descriptionDave Reisner2014-11-05
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* bash_completion: add --noarchive to makepkg's completionsDave Reisner2014-11-05
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* updpkgsums: avoid exec'ing awk, so the trap actually worksDave Reisner2014-11-05
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* add pacman-db-upgrade-v9.py to check_SCRIPTSAndrew Gregory2014-11-04
| | | | | Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* tests/pacman-db-upgrade-v9: set additional pathsAndrew Gregory2014-11-04
| | | | | | | | | | | --config does not respect root, causing pacman-db-upgrade to read the local pacman.conf rather than the one in the test root. Also add a rule to ensure the ALPM_DB_VERSION file is actually being created. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* pmtest: make test paths easily available to testsAndrew Gregory2014-11-04
| | | | | Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* pacman-db-upgrade: fix --config option typoAndrew Gregory2014-11-04
| | | | | Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* Exit with 0/SUCCESS if there are no packages to removeEric Schultz2014-11-04
| | | | | | | | | | Previously the lack of candidate packages was considered an error and return 1/FAILURE but really this isn't an issue. Also, for systemd (and others) this flagged the instance as having failed for no good reason. Signed-off-by: Eric Schultz <eric@schultzter.ca> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg.8: fix typo in reference to other flagDave Reisner2014-10-19
| | | | it's --syncdeps, not --syndeps
* testdb: ignore ALPM_DB_VERSIONAndrew Gregory2014-10-19
| | | | | | | | Replaces the test for hidden files which appears to be leftover from 2e431e1cc before sync db checking was moved to a separate function. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* paccache: avoid spurious blank line written to stderrDave Reisner2014-10-19
| | | | | | | | this is just stylistic formatting, so write it to stdout. ref: https://bugs.archlinux.org/task/42389 Signed-off-by: Allan McRae <allan@archlinux.org>
* dload: mark final_url as constChristian Hesse2014-10-19
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* doc/translation-help.txt: Removed out-of-date paragraphMiguel de Val-Borro2014-10-19
| | | | | Signed-off-by: Miguel de Val-Borro <miguel@archlinux.net> Signed-off-by: Allan McRae <allan@archlinux.org>
* doc/translation-help.txt: Minor rewording of Transifex usageMiguel de Val-Borro2014-10-19
| | | | | | | Updated as per Allan's suggestion and fixed Transifex URLs. Signed-off-by: Miguel de Val-Borro <miguel@archlinux.net> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: always look for sources in source=()Dave Reisner2014-10-19
| | | | | | | | This regression snuck in during some reviewing of 963f7fe02fcb14 (arch-specific sources). We must always check the source=() array for sources. Signed-off-by: Allan McRae <allan@archlinux.org>
* dload: unlink file on filesize exceeded errorChristian Hesse2014-10-16
| | | | | | | | | | 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.
* dload: use better error message on exceeded file sizeChristian Hesse2014-10-16
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* be_sync: use effective URL for db file signature downloadChristian Hesse2014-10-16
| | | | | | | | | | | If download server is dynamic mirror chances are that db file download and db file signature download are redirected to different mirrors, resulting in invalid signature. This uses effective URL for db file signature download and makes the files always match. Signed-off-by: Christian Hesse <mail@eworm.de> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: reorder args to pkgbuild_get_attribute for consistencyDave Reisner2014-10-13
| | | | | | | In all other cases, this code gets the outvalue from the final parameter. Signed-off-by: Allan McRae <allan@archlinux.org>
* add pacman-db-upgrade testAndrew Gregory2014-10-13
| | | | | Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* sync.c: download packages before starting commitAndrew Gregory2014-10-13
| | | | | | | | | | download_files sets the transaction state to STATE_DOWNLOADING. Modifying the state after it has already been set to STATE_COMMITTING created a brief window where SIGINT would fail to interrupt the process and caused interrupted downloads to result in a 'transaction started' message in the log with no matching transaction end. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
* pmtest: allow tests to specify test binaryAndrew Gregory2014-10-13
| | | | | | | | | | | Adds a cmd property to tests (defaults to pacman) which is resolved using directories specified with --bindir (defaults to PATH). The ability to manually specify a particular binary is preserved in order to allow running individual tests with differently named binaries such as lt-pacman. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>