aurutils: 10b
This commit is contained in:
parent
7fd0a0f4cd
commit
eed5f3d396
6 changed files with 64 additions and 181 deletions
15
.SRCINFO
15
.SRCINFO
|
@ -1,7 +1,7 @@
|
|||
pkgbase = aurutils
|
||||
pkgdesc = helper tools for the arch user repository
|
||||
pkgver = 9.6
|
||||
pkgrel = 3
|
||||
pkgver = 10b
|
||||
pkgrel = 1
|
||||
url = https://github.com/AladW/aurutils
|
||||
install = aurutils.install
|
||||
changelog = aurutils.changelog
|
||||
|
@ -11,19 +11,12 @@ pkgbase = aurutils
|
|||
depends = jq
|
||||
depends = pacutils
|
||||
depends = curl
|
||||
depends = expect
|
||||
optdepends = bash-completion: bash completion
|
||||
optdepends = zsh: zsh completion
|
||||
optdepends = devtools: aur-chroot
|
||||
optdepends = vifm: default pager
|
||||
optdepends = ninja: aur-sync ninja support
|
||||
source = aurutils-9.6.tar.gz::https://github.com/AladW/aurutils/archive/refs/tags/9.6.tar.gz
|
||||
source = 0001-sync-tsort-exit.patch
|
||||
source = 0002-sync-filter-deps.patch
|
||||
source = 0003-fetch-git-checkout.patch
|
||||
sha256sums = 825d6ab3d66faf84ee3856e677de138dcdb3af2a5c38164f69601ee0a4e96954
|
||||
sha256sums = 2f0e039c6544dc2204dbb25f15f2c3fcefbc742a196fedb60925b7dc3311665e
|
||||
sha256sums = a65dace12d686d8a77380af9875af5633c2fd12e6c6ed8802a202e22861b77c0
|
||||
sha256sums = cca4ea1456d1cd8cde333d7e60c0749c9bc2c78b4f4b3eda751432cc3555aa65
|
||||
source = aurutils-10b.tar.gz::https://github.com/AladW/aurutils/archive/refs/tags/10b.tar.gz
|
||||
sha256sums = f66cdb98149365ec520003875762dca527c28d75ea7744a6cfe0a9aa8b94c806
|
||||
|
||||
pkgname = aurutils
|
||||
|
|
|
@ -1,27 +0,0 @@
|
|||
From 6f56ae7e4df06a0142d8970275986754041955c4 Mon Sep 17 00:00:00 2001
|
||||
From: Alad Wenter <alad@archlinux.org>
|
||||
Date: Thu, 21 Apr 2022 19:11:27 +0200
|
||||
Subject: [PATCH] sync: preserve tsort exit status
|
||||
|
||||
Regression in commit 01af4500d77ac1bce6105089603051b4ad554c92
|
||||
---
|
||||
lib/aur-sync | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/lib/aur-sync b/lib/aur-sync
|
||||
index f2cf93d07..248a0565e 100755
|
||||
--- a/lib/aur-sync
|
||||
+++ b/lib/aur-sync
|
||||
@@ -355,6 +355,12 @@ cut -f1-3 depends | tr_ver 2 | select_ignores 2 filter - | lib32 - >graph_0
|
||||
# (e.g. sort -u) with checks for cycles done at build-time.
|
||||
select_pkgbase graph_0 graph_0 | tee graph | tsort | tac >queue
|
||||
|
||||
+# XXX: preserve tsort exit status
|
||||
+if (( PIPESTATUS[2] )); then
|
||||
+ error '%s: dependency cycle detected' "$argv0"
|
||||
+ exit 22
|
||||
+fi
|
||||
+
|
||||
if [[ -s queue ]]; then
|
||||
cd_safe "$AURDEST"
|
||||
else
|
|
@ -1,91 +0,0 @@
|
|||
From 3c818fccc3b431d7aea4198e82cd1ccda1e43e5c Mon Sep 17 00:00:00 2001
|
||||
From: Alad Wenter <alad@archlinux.org>
|
||||
Date: Thu, 28 Apr 2022 14:44:28 +0200
|
||||
Subject: [PATCH] sync: filter dependency graph by pkgname, not depends
|
||||
|
||||
Before filtering, the dependency graph is in the format:
|
||||
|
||||
$pkgname $depends $pkgbase
|
||||
|
||||
Since revision 01af4500d77ac1bce6105089603051b4ad554c92, this graph is
|
||||
filtered (e.g. by packages already in the local repository) by $depends.
|
||||
In some cases, this does not filter all targets.
|
||||
|
||||
For example, when uprading r-cli and r-testthat, aur-sync would build 7
|
||||
targets instead of 2:
|
||||
|
||||
# cut -f1-3 $tmp/depends
|
||||
...
|
||||
r-tibble r-vctrs r-tibble
|
||||
r-pillar r-vctrs r-pillar
|
||||
r-vctrs r-vctrs r-vctrs
|
||||
r-vctrs r r-vctrs
|
||||
r-vctrs r-cli r-vctrs
|
||||
r-vctrs r-glue r-vctrs
|
||||
r-vctrs r-rlang r-vctrs
|
||||
...
|
||||
|
||||
# after filtering r-vctrs from $2
|
||||
# r-vctrs is still a target!
|
||||
...
|
||||
r-vctrs r r-vctrs
|
||||
r-vctrs r-cli r-vctrs
|
||||
r-vctrs r-glue r-vctrs
|
||||
r-vctrs r-rlang r-vctrs
|
||||
...
|
||||
---
|
||||
lib/aur-sync | 16 ++++++++--------
|
||||
makepkg/aurutils.changelog | 3 ++-
|
||||
2 files changed, 10 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/lib/aur-sync b/lib/aur-sync
|
||||
index 6bb0d5559..6d3e93a4e 100755
|
||||
--- a/lib/aur-sync
|
||||
+++ b/lib/aur-sync
|
||||
@@ -44,21 +44,21 @@ select_pkgbase() {
|
||||
# argv[1]: $1 pkgname (possibly empty, #910)
|
||||
# argv[2]: $1 pkgname $2 pkgver
|
||||
select_ignores() {
|
||||
- awk -v target="$1" 'ARGV[1] == FILENAME {
|
||||
+ awk 'ARGV[1] == FILENAME {
|
||||
map[$1] = 1
|
||||
next
|
||||
}
|
||||
- !($target in map) {
|
||||
+ !($1 in map) {
|
||||
print
|
||||
- }' "${@:2}"
|
||||
+ }' "$@"
|
||||
}
|
||||
|
||||
# argv[1]: $1 pkgname $2 depends[<>=]
|
||||
tr_ver() {
|
||||
- awk -v target="$1" '{
|
||||
- sub(/[<>=].*/, "", $target)
|
||||
+ awk '{
|
||||
+ sub(/[<>=].*/, "", $2)
|
||||
print
|
||||
- }' "${@:2}"
|
||||
+ }' "$@"
|
||||
}
|
||||
|
||||
complement() {
|
||||
@@ -285,7 +285,7 @@ fi >&2
|
||||
|
||||
# db_info: $1 pkgname $2 pkgver
|
||||
( set -o pipefail
|
||||
- aur repo "${repo_args[@]}" --list -d "$db_name" -r "$db_root" | select_ignores 1 igni -
|
||||
+ aur repo "${repo_args[@]}" --list -d "$db_name" -r "$db_root" | select_ignores igni -
|
||||
) >db_info
|
||||
|
||||
{ if (( $# )); then
|
||||
@@ -344,7 +344,7 @@ cut -f2,5 --complement depends | sort -u >pkginfo
|
||||
} >filter
|
||||
|
||||
# $1 pkgname $2 depends $3 pkgbase, filter by $2 (depends and self)
|
||||
-cut -f1-3 depends | tr_ver 2 | select_ignores 2 filter - | lib32 - >graph_0
|
||||
+cut -f1-3 depends | tr_ver | select_ignores filter - | lib32 - >graph_0
|
||||
|
||||
# XXX a flat file is needed for aur-{graph,fetch,view}. `ninja` requires the
|
||||
# build files to be present before dependency resolution (with `ninja -n`) can
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
From c9e57188b5bb356b2373bc087474e2e68872505d Mon Sep 17 00:00:00 2001
|
||||
From: Alad Wenter <alad@archlinux.org>
|
||||
Date: Thu, 28 Apr 2022 15:16:31 +0200
|
||||
Subject: [PATCH] fetch: use git-checkout instead of git-merge for empty
|
||||
working tree
|
||||
|
||||
---
|
||||
lib/aur-fetch | 8 ++------
|
||||
1 file changed, 2 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/lib/aur-fetch b/lib/aur-fetch
|
||||
index a21a8a130..104be7794 100755
|
||||
--- a/lib/aur-fetch
|
||||
+++ b/lib/aur-fetch
|
||||
@@ -147,16 +147,12 @@ fi | while read -r pkg; do
|
||||
results 'fetch' "${prev_head:-0}" "$fetch_head" "$PWD/$pkg" "$results_file"
|
||||
fi
|
||||
else
|
||||
+ error '%s: %s: failed to %s repository' "$argv0" "$pkg" fetch
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- # If the index has no commits, merge from upstream and move to the next package.
|
||||
if [[ ! $prev_head ]]; then
|
||||
- git merge 'origin/master'
|
||||
-
|
||||
- if [[ -v results_file ]]; then
|
||||
- results 'merge' '0' "$fetch_head" "$PWD/$pkg" "$results_file"
|
||||
- fi
|
||||
+ git checkout 'master'
|
||||
continue
|
||||
fi
|
||||
|
24
PKGBUILD
24
PKGBUILD
|
@ -1,37 +1,23 @@
|
|||
# Maintainer: Alad Wenter <https://github.com/AladW>
|
||||
# Co-Maintainer: Cedric Girard <cgirard [dot] archlinux [at] valinor [dot] fr>
|
||||
pkgname=aurutils
|
||||
pkgver=9.6
|
||||
pkgrel=3
|
||||
pkgver=10b
|
||||
pkgrel=1
|
||||
pkgdesc='helper tools for the arch user repository'
|
||||
url='https://github.com/AladW/aurutils'
|
||||
arch=('any')
|
||||
license=('custom:ISC')
|
||||
_backports=("0001-sync-tsort-exit.patch"
|
||||
"0002-sync-filter-deps.patch"
|
||||
"0003-fetch-git-checkout.patch")
|
||||
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/$pkgver.tar.gz"
|
||||
"${_backports[@]}")
|
||||
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/$pkgver.tar.gz")
|
||||
changelog=aurutils.changelog
|
||||
install=aurutils.install
|
||||
sha256sums=('825d6ab3d66faf84ee3856e677de138dcdb3af2a5c38164f69601ee0a4e96954'
|
||||
'2f0e039c6544dc2204dbb25f15f2c3fcefbc742a196fedb60925b7dc3311665e'
|
||||
'a65dace12d686d8a77380af9875af5633c2fd12e6c6ed8802a202e22861b77c0'
|
||||
'cca4ea1456d1cd8cde333d7e60c0749c9bc2c78b4f4b3eda751432cc3555aa65')
|
||||
depends=('git' 'jq' 'pacutils' 'curl' 'expect')
|
||||
sha256sums=('f66cdb98149365ec520003875762dca527c28d75ea7744a6cfe0a9aa8b94c806')
|
||||
depends=('git' 'jq' 'pacutils' 'curl')
|
||||
optdepends=('bash-completion: bash completion'
|
||||
'zsh: zsh completion'
|
||||
'devtools: aur-chroot'
|
||||
'vifm: default pager'
|
||||
'ninja: aur-sync ninja support')
|
||||
|
||||
prepare() {
|
||||
cd "$pkgname-$pkgver"
|
||||
for _b in "${_backports[@]}"; do
|
||||
patch -p1 < "$srcdir/$_b"
|
||||
done
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$pkgname-$pkgver"
|
||||
make AURUTILS_VERSION="$pkgver"
|
||||
|
|
|
@ -1,3 +1,58 @@
|
|||
## 10
|
||||
|
||||
* `aur`
|
||||
+ support environment files (`$AUR_ENV`, defaults to `$XDG_CONFIG_HOME/aurutils/env`)
|
||||
+ add `--env`
|
||||
|
||||
* `aur-build`
|
||||
+ use `AUR_PACMAN_AUTH` as elevation command (prior: `PACMAN_AUTH`)
|
||||
+ use `$PWD` as default value for `$LOGDEST`
|
||||
+ bug fixes for gpg signing (`--sign`)
|
||||
|
||||
* `aur-chroot`
|
||||
+ use `AUR_PACMAN_AUTH` as elevation command (prior: `PACMAN_AUTH`)
|
||||
|
||||
* `aur-fetch`
|
||||
+ `--sync=auto`: run `git-merge` instead of `git-reset`
|
||||
- add `--ff`, `--ff-only`, `--no-ff`, `--no-commit` options
|
||||
- fix a bug where setting `aurutils.rebase` affected unrelated targets
|
||||
- set default author for merge commits to `aurutils@localhost`
|
||||
+ `--sync=auto` now preserves local changes by default
|
||||
- `--discard` (`-f`) resets the branch on new upstream commits
|
||||
+ add `--reset`, `--rebase`, `--auto` (`--sync=reset`, `--sync=rebase`, `--sync=auto`)
|
||||
+ support multiple branches, with commits merged from `origin/master`
|
||||
|
||||
* `aur-pkglist`
|
||||
+ output is now independent of command-line argument order
|
||||
+ deprecate `-I`, `-S`, `-u`
|
||||
- renamed to: `-i` (`--info`), `-s` (`--search`) `-q` (`--quiet`)
|
||||
+ deprecate `-J` (`--json`)
|
||||
- behaves like `--plain`, remove pretty-printing with `jq`
|
||||
+ add `--systime`
|
||||
|
||||
* `aur-repo`
|
||||
+ `-q` now applies to `--list` and `--upgrades`
|
||||
+ add `--list-attr`
|
||||
+ deprecate `--status-file`
|
||||
|
||||
* `aur-search`
|
||||
+ add `--color` (`auto`, `always`, `none`)
|
||||
|
||||
* `aur-srcver`
|
||||
+ remove `-E`, `--env` (deprecated in v8)
|
||||
|
||||
* `aur-sync`
|
||||
+ use pkgspec `<REPOSITORY>/<PACKAGE>` format for `--ignore-file`
|
||||
- support for sections (introduced with v6.3) is removed (#880)
|
||||
- <PACKAGE> ignores apply to all local repositories
|
||||
+ add `--rebase`, `--reset` options for `aur-fetch`
|
||||
+ exit 22 on dependency cycles (v7 regression)
|
||||
+ filter dependency graph by pkgname, not depends (v7 regression)
|
||||
+ store `build.ninja` files in `$XDG_RUNTIME_DIR/aurutils`
|
||||
|
||||
* `completions`
|
||||
+ major overhaul of zsh completions (#990)
|
||||
|
||||
## 9.6
|
||||
|
||||
* `aur-pkglist`
|
||||
|
|
Loading…
Reference in a new issue