dbscripts issueshttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues2023-12-02T19:42:20Zhttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/49db-update doesn't lock properly2023-12-02T19:42:20ZFelix Yanfelixonmars@archlinux.orgdb-update doesn't lock properlyRunning two `db-update` instances at the very same time could lead to incomplete locking with errors.
One instance (the successive one):
```
From https://gitlab.archlinux.org/archlinux/packaging/packages/python-cinderclient
eb34ffa.....Running two `db-update` instances at the very same time could lead to incomplete locking with errors.
One instance (the successive one):
```
From https://gitlab.archlinux.org/archlinux/packaging/packages/python-cinderclient
eb34ffa..6185c86 main -> main
* [new tag] 9.4.0-1 -> 9.4.0-1
From https://gitlab.archlinux.org/archlinux/packaging/packages/python-prawcore
d1a5028..91a1795 main -> main
* [new tag] 2.4.0-1 -> 2.4.0-1
==> Updating [extra]...
-> python-cinderclient-9.4.0-1-any.pkg.tar.zst (x86_64)
-> python-prawcore-2.4.0-1-any.pkg.tar.zst (x86_64)
[main 76a7f4d1f] update python-cinderclient to 9.4.0-1 in extra-any
1 file changed, 1 insertion(+), 1 deletion(-)
[main d96f1eaf6] update python-prawcore to 2.4.0-1 in extra-any
1 file changed, 1 insertion(+), 1 deletion(-)
```
The other (the failing one):
```
error: cannot lock ref 'refs/heads/main': is at 6185c865200e2d03470b2043951c13401f8177e6 but expected eb34ffa892d7f506334b5916e0b679bceda62326
From https://gitlab.archlinux.org/archlinux/packaging/packages/python-cinderclient
! eb34ffa..6185c86 main -> main (unable to update local ref)
* [new tag] 9.4.0-1 -> 9.4.0-1
==> ERROR: Couldn't find package python-cinderclient in git!
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/48remove obsolete svn code2023-12-02T19:42:20ZLevente Polyakanthraxx@archlinux.orgremove obsolete svn codeLet's get rid of the old crap, it doesn't even properly work now. There is no point in "supporting" it further.Let's get rid of the old crap, it doesn't even properly work now. There is no point in "supporting" it further.Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/38Error repo [xxx] is already locked2023-12-02T19:42:20ZJelle van der WaaError repo [xxx] is already lockedSmall UX improvement when trying to release when the db is locked, we should instruct the packager that they have to rerun `pkgctl db update`.
```
==> Uploading all package and signature files
offroad-0.5-3-any.pkg.tar.zst
39.7...Small UX improvement when trying to release when the db is locked, we should instruct the packager that they have to rerun `pkgctl db update`.
```
==> Uploading all package and signature files
offroad-0.5-3-any.pkg.tar.zst
39.75M 100% 25.42MB/s 0:00:01 (xfr#1, to-chk=1/2)
offroad-0.5-3-any.pkg.tar.zst.sig
310 100% 0.62kB/s 0:00:00 (xfr#2, to-chk=0/2)
==> ERROR: Repo [extra] (x86_64) is already locked by repo-{add,remove} process 412957
[jelle@t14s][/tmp/offroad]%pkgctl db update
From https://gitlab.archlinux.org/archlinux/packaging/packages/offroad
eac4192..08b10e3 main -> main
* [new tag] 0.5-3 -> 0.5-3
==> Updating [extra]...
-> offroad-0.5-3-any.pkg.tar.zst (x86_64)
[main dc8967a94] update offroad to 0.5-3 in extra-any
1 file changed, 1 insertion(+), 1 deletion(-)
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/22Race condition in db-update2023-10-21T20:07:40ZFelix Yanfelixonmars@archlinux.orgRace condition in db-updateIn https://gitlab.archlinux.org/archlinux/dbscripts/-/blob/6db509332aab93489ca18e3b2d6f8628cde87f83/db-update#L37, db-update first calls `getpkgfiles` to retrieve the package file list, to check if the packages are valid.
Then it moves ...In https://gitlab.archlinux.org/archlinux/dbscripts/-/blob/6db509332aab93489ca18e3b2d6f8628cde87f83/db-update#L37, db-update first calls `getpkgfiles` to retrieve the package file list, to check if the packages are valid.
Then it moves the files by calling `getpkgfiles` again in the following section. This unfortunately has a race-condition that the subsequent calls retrieves a different file list than the actually checked ones (for example, new packages uploaded to the staging folder right in between).
A real-world problem of this race condition is about split packages. Imagine we have a pkgbase that packages pkgname A and B. When db-update was running for another package C, it passes the checking section when the staging folder contains only package C. Then when it does the actual move, package A got uploaded to the folder and was moved together with package C. This left only package B in the staging folder and all subsequent calls to db-update will fail with "ERROR: Missing split packages for xxx".
An easy fix would be adding another check for the package in `"${arch_pkgs[@]}" "${any_pkgs[@]}"` about whether they are the already checked `pkgs`. Either error out or just ignore the unchecked packages should work when it doesn't.Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/45db-move breaks db when supplying the same package name for multiple times2023-10-21T20:07:40ZFelix Yanfelixonmars@archlinux.orgdb-move breaks db when supplying the same package name for multiple timesRunning something like `db-move <db1> <db2> pony pony` will print a lot of errors and break the state repo as well as binary package repos in some way. This is an issue that I should have reported a long time ago so I don't have a detail...Running something like `db-move <db1> <db2> pony pony` will print a lot of errors and break the state repo as well as binary package repos in some way. This is an issue that I should have reported a long time ago so I don't have a detailed log at the moment.Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/42state repostitory contains files with wrong syntax2023-10-21T20:07:40ZErich Ecknerstate repostitory contains files with wrong syntaxDescription: See https://bugs.archlinux.org/task/79507
https://repos.archlinux.org/git/state revision d7fee1557191868df4b1dc8fd7bf51eccd237f0f (current main) contains several references to packages, that do not have a git revision:
```...Description: See https://bugs.archlinux.org/task/79507
https://repos.archlinux.org/git/state revision d7fee1557191868df4b1dc8fd7bf51eccd237f0f (current main) contains several references to packages, that do not have a git revision:
```
$ git remote -v
origin https://repos.archlinux.org/git/state (fetch)
origin https://repos.archlinux.org/git/state (push)
```
```
$ git rev-parse main
7fee1557191868df4b1dc8fd7bf51eccd237f0f
```
```
$ git archive main | tar -Ox | grep -v ' [0-9a-f]{40}$'
python-pylink-square 1.2.0-1 1.2.0-1 1.2.0-1
python-shtab 1.6.4-1 1.6.4-1 1.6.4-1
gitlab-pages 16.2.4-1 16.2.4-1 16.2.4-1
android-tools 34.0.1-3 34.0.1-3 34.0.1-3
deepin-qt5platform-plugins 5.6.12-1 5.6.12-1 5.6.12-1
dhall-lsp-server 1.1.2-113 1.1.2-113 1.1.2-113
dice 0.1.1-18 0.1.1-18 0.1.1-18
electron25 25.6.0-1 25.6.0-1 25.6.0-1
git-warp-time 0.4.11-2 0.4.11-2 0.4.11-2
haskell-brick 1.5-21 1.5-21 1.5-21
haskell-cabal-install-parsers 0.4.2-225 0.4.2-225 0.4.2-225
haskell-chunked-data 0.3.1-231 0.3.1-231 0.3.1-231
haskell-constraints 0.13.4-29 0.13.4-29 0.13.4-29
haskell-crypto-pubkey-types 0.4.3-314 0.4.3-314 0.4.3-314
haskell-curve25519 0.2.7-29 0.2.7-29 0.2.7-29
haskell-doctemplates 0.11-26 0.11-26 0.11-26
haskell-doctest-driver-gen 0.3.0.7-2 0.3.0.7-2 0.3.0.7-2
haskell-fingertree 0.1.5.0-49 0.1.5.0-49 0.1.5.0-49
haskell-hackage-security 0.6.2.3-42 0.6.2.3-42 0.6.2.3-42
haskell-here 1.2.13-345 1.2.13-345 1.2.13-345
haskell-io-streams 1.5.2.2-29 1.5.2.2-29 1.5.2.2-29
haskell-json 0.10-132 0.10-132 0.10-132
haskell-libbf 0.6.5.1-23 0.6.5.1-23 0.6.5.1-23
haskell-lifted-base 0.2.3.12-247 0.2.3.12-247 0.2.3.12-247
haskell-mutable-containers 0.3.4.1-45 0.3.4.1-45 0.3.4.1-45
haskell-numbers 3000.2.0.2-26 3000.2.0.2-26 3000.2.0.2-26
haskell-recv 0.1.0-9 0.1.0-9 0.1.0-9
haskell-refinery 0.4.0.0-138 0.4.0.0-138 0.4.0.0-138
haskell-status-notifier-item 0.3.1.0-77 0.3.1.0-77 0.3.1.0-77
haskell-storable-tuple 0.1-5 0.1-5 0.1-5
haskell-websockets 0.12.7.3-82 0.12.7.3-82 0.12.7.3-82
haskell-witch 1.1.6.1-6 1.1.6.1-6 1.1.6.1-6
kdelibs4support 5.109.0-1 5.109.0-1 5.109.0-1
kholidays 1:5.109.0-1 1-5.109.0-1 1-5.109.0-1
libopenmpt 0.7.2-1 0.7.2-1 0.7.2-1
soft-serve 0.5.4-1 0.5.4-1 0.5.4-1
syndication 5.109.0-1 5.109.0-1 5.109.0-1
qt6-tools 6.6.0beta3-1 6.6.0beta3-1 6.6.0beta3-1
```
note, that the 4th column should be a git hash:
```
$ git archive main -- core-x86_64/glibc | tar -Ox
glibc 2.38-3 2.38-3 533b85025a3712175e0037f1d8e05fc193f207db
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/35db-update generates redundant "nothing to commit" outputs2023-10-21T20:07:40ZFelix Yanfelixonmars@archlinux.orgdb-update generates redundant "nothing to commit" outputsThis may indicate some logic issues causing unneeded commits to happen.
```
$ pkgctl db update
From https://gitlab.archlinux.org/archlinux/packaging/packages/openblas
96617e4..d7b6820 main -> main
* [new tag] 0.3.23-2...This may indicate some logic issues causing unneeded commits to happen.
```
$ pkgctl db update
From https://gitlab.archlinux.org/archlinux/packaging/packages/openblas
96617e4..d7b6820 main -> main
* [new tag] 0.3.23-2 -> 0.3.23-2
==> Updating [extra-testing]...
-> blas-openblas-0.3.23-2-x86_64.pkg.tar.zst (x86_64)
-> blas64-openblas-0.3.23-2-x86_64.pkg.tar.zst (x86_64)
-> openblas-0.3.23-2-x86_64.pkg.tar.zst (x86_64)
-> openblas-debug-0.3.23-2-x86_64.pkg.tar.zst (x86_64)
-> openblas64-0.3.23-2-x86_64.pkg.tar.zst (x86_64)
[main d61a95622] update openblas to 0.3.23-2 in extra-testing-x86_64
1 file changed, 1 insertion(+)
create mode 100644 extra-testing-x86_64/openblas
On branch main
nothing to commit, working tree clean
On branch main
nothing to commit, working tree clean
On branch main
nothing to commit, working tree clean
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/21Error handling when package does not exists2023-10-21T20:07:40ZJelle van der WaaError handling when package does not exists```
==> Removing python2-pexpect from [community]...
==> ERROR: Package matching 'python2-pexpect' not found.
==> ERROR: repo-remove '/srv/ftp/community/os/x86_64/community.db.tar.gz' 'python2-pexpect'
chgrp: changing group of '/srv/ftp/...```
==> Removing python2-pexpect from [community]...
==> ERROR: Package matching 'python2-pexpect' not found.
==> ERROR: repo-remove '/srv/ftp/community/os/x86_64/community.db.tar.gz' 'python2-pexpect'
chgrp: changing group of '/srv/ftp/community/os/x86_64/community.db.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/community/os/x86_64/community.db.tar.gz to tu
chgrp: changing group of '/srv/ftp/community/os/x86_64/community.files.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/community/os/x86_64/community.files.tar.gz to tu
chmod: changing permissions of '/srv/ftp/community/os/x86_64/community.db.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group tu to /srv/ftp/community/os/x86_64/community.db.tar.gz
chmod: changing permissions of '/srv/ftp/community/os/x86_64/community.files.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group tu to /srv/ftp/community/os/x86_64/community.files.tar.gz
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/40Downgrades are possible in certain scenario's2023-10-21T20:07:40ZJelle van der WaaDowngrades are possible in certain scenario'smdbook was temporarily -2 in the repositories and then downgraded to -1. This should never be allowed by our tooling.
What happened:
Mdbook was updated to -1 in the packages repository, but due to an internet outage the package was not...mdbook was temporarily -2 in the repositories and then downgraded to -1. This should never be allowed by our tooling.
What happened:
Mdbook was updated to -1 in the packages repository, but due to an internet outage the package was not released (but uploaded to the staging directory on repos.archlinux.org).
A different packager noticed mdbook was still out of date, bumped the pkgrel to -2 and released the package
When the original -1 packagers internet connection was restored they released the package, downgrading the package.
https://gitlab.archlinux.org/archlinux/packaging/state/-/commits/main/extra-x86_64/mdbook
https://gitlab.archlinux.org/archlinux/packaging/packages/mdbook/-/commits/main?ref_type=heads
* [x] Write a unittest for this scenario
* [x] Check if it's possible to circumvent the downgrade
* [x] Write some smart code :cookie:Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/44"db remove" does not update state (sometimes?)2023-10-21T20:07:40ZEvangelos Foutras"db remove" does not update state (sometimes?)When removing `intel-opencl-clang` from extra I noticed that there was no commit to the state repo. Trying again with `--arch x86_64` seems to have done the trick.
Testing again with the leftover `intel-opencl-clang` from extra-staging:...When removing `intel-opencl-clang` from extra I noticed that there was no commit to the state repo. Trying again with `--arch x86_64` seems to have done the trick.
Testing again with the leftover `intel-opencl-clang` from extra-staging:
```
$ pkgctl db remove extra-staging intel-opencl-clang
==> Removing intel-opencl-clang from [extra-staging]...
==> WARNING: pkgbase intel-opencl-clang not found in extra-staging-any
==> WARNING: Removing only pkgname intel-opencl-clang from the repo
==> WARNING: If it was a split package you have to pass its pkgbase to remove it completely!
==> ERROR: Package matching 'intel-opencl-clang' not found.
==> ERROR: repo-remove '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz' 'intel-opencl-clang'
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz to junior-packager
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz to junior-packager
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz
```
There is no state commit. And now with `--arch`:
```
$ pkgctl db remove --arch x86_64 extra-staging intel-opencl-clang
==> Removing intel-opencl-clang from [extra-staging]...
==> ERROR: Package matching 'intel-opencl-clang' not found.
==> ERROR: repo-remove '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz' 'intel-opencl-clang'
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz to junior-packager
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz to junior-packager
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz
rm 'extra-staging-x86_64/intel-opencl-clang'
[main b1f549adb] remove intel-opencl-clang from extra-staging-x86_64
1 file changed, 1 deletion(-)
delete mode 100644 extra-staging-x86_64/intel-opencl-clang
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/39db remove errors for split package2023-10-21T20:07:40ZChristian Heuseldb remove errors for split package`db-remove` (as invoked by `pkgctl`) seems to fail when dropping packages in a split pkgbuild setup.
- `suitesparse64` dropped [here](https://gitlab.archlinux.org/archlinux/packaging/packages/suitesparse/-/commit/36ee62b0951a09a517ff49e...`db-remove` (as invoked by `pkgctl`) seems to fail when dropping packages in a split pkgbuild setup.
- `suitesparse64` dropped [here](https://gitlab.archlinux.org/archlinux/packaging/packages/suitesparse/-/commit/36ee62b0951a09a517ff49e49004d6fb416058f6)
- `alice-vision-cuda` dropped [here](https://gitlab.archlinux.org/archlinux/packaging/packages/alice-vision/-/commit/1ab3d4c85e165e0fc128237191c39a942947a088)
```
14:42 arojas | getting "fatal: could not read Username for 'https://gitlab.archlinux.org': No such device or address" on pkgctl db remove
14:42 arojas | removal seems to go through OK though
14:46 gromit | arojas: what did you remove?
14:47 arojas | gromit: alice-vision-cuda and suitesparse64
14:51 gromit | arojas: was this also their pkgbase? I cannot find them in gitlab and that is probably what is causing the aur
14:51 arojas | gromit: no, they were split packages which are no longer built
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/30Able to db-update the same package filename to multiple repos2023-10-21T20:07:40ZEvangelos FoutrasAble to db-update the same package filename to multiple reposWe had a [situation](https://bbs.archlinux.org/viewtopic.php?id=284603) where a package with the same pkgver/pkgrel existed in two repos (community and community-testing).
While db-update checks if the package already exists in the pool...We had a [situation](https://bbs.archlinux.org/viewtopic.php?id=284603) where a package with the same pkgver/pkgrel existed in two repos (community and community-testing).
While db-update checks if the package already exists in the pool, it's still possible for db-update to process two packages with identical filenames if they exist in different repos.
In other words, this will go through (and one repo will end up serving the wrong package):
```
staging/extra/foo-1-1-any.pkg.tar.zst
staging/testing/foo-1-1-any.pkg.tar.zst
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/36db-remove a non-exist package prints a lot of errors2023-10-21T14:52:30ZFelix Yanfelixonmars@archlinux.orgdb-remove a non-exist package prints a lot of errors```
$ /packages/db-remove extra-staging x86_64 nonexist
==> Removing nonexist from [extra-staging]...
Cloning into bare repository '/srv/repos/pkg-cache/nonexist'...
fatal: could not read Username for 'https://gitlab.archlinux.org': No s...```
$ /packages/db-remove extra-staging x86_64 nonexist
==> Removing nonexist from [extra-staging]...
Cloning into bare repository '/srv/repos/pkg-cache/nonexist'...
fatal: could not read Username for 'https://gitlab.archlinux.org': No such device or address
==> WARNING: pkgbase nonexist not found in extra-staging-x86_64
==> WARNING: Removing only pkgname nonexist from the repo
==> WARNING: If it was a split package you have to pass its pkgbase to remove it completely!
==> ERROR: Package matching 'nonexist' not found.
==> ERROR: repo-remove '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz' 'nonexist'
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz to junior-packager
chgrp: changing group of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not change group of /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz to junior-packager
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.db.tar.gz
chmod: changing permissions of '/srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz': Operation not permitted
==> ERROR: Could not set write permission for group junior-packager to /srv/ftp/extra-staging/os/x86_64/extra-staging.files.tar.gz
```
Probably some of the steps should be fail-guarded.https://gitlab.archlinux.org/archlinux/dbscripts/-/issues/29Improve error handling for split packages2023-10-21T14:38:02ZTorsten Keßlertpkessler@archlinux.orgImprove error handling for split packagesWhen the name of the root folder of a split package does not match pkgbase `db-update` reports
```
ERROR: Package $repo/$package.pkg.tar.zst is not consistent with svn repository
```
for the individual packages in the split package. This...When the name of the root folder of a split package does not match pkgbase `db-update` reports
```
ERROR: Package $repo/$package.pkg.tar.zst is not consistent with svn repository
```
for the individual packages in the split package. This error message can be improved by including a warning on the inconsistent use of directory name and pkgbase.https://gitlab.archlinux.org/archlinux/dbscripts/-/issues/43[pkgctl] release should make use of use git' "core.editor", if set.2023-09-28T16:18:51ZFabian Bornschein[pkgctl] release should make use of use git' "core.editor", if set.Currently if you run a `pkgctl release` the tool will spawn your $EDITOR (I guess?) to see and edit the commit message. There however is a special git config of [core.editor](https://www.git-scm.com/book/en/v2/Customizing-Git-Git-Configu...Currently if you run a `pkgctl release` the tool will spawn your $EDITOR (I guess?) to see and edit the commit message. There however is a special git config of [core.editor](https://www.git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_core_editor) to specify a editor just for that use-case.
For example I do make use of [re.sonny.Commit](https://flathub.org/de/apps/re.sonny.Commit) for this and would like to use it on pkgctl too. Others might have another tool with other features. That's why I think it would be beneficial to have support for it in pkgctl.https://gitlab.archlinux.org/archlinux/dbscripts/-/issues/37Let junior packagers access unstable desktop repos2023-06-11T19:31:22ZJan Alexander Steffens (heftig)heftig@archlinux.orgLet junior packagers access unstable desktop reposI think the unstable desktop repos have the same "importance" as `extra-staging`. Specifically, I would like `gnome-unstable` to be accessible to junior packagers.I think the unstable desktop repos have the same "importance" as `extra-staging`. Specifically, I would like `gnome-unstable` to be accessible to junior packagers.Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/32db-update fails to update state repo with a git error2023-06-11T19:01:29ZFelix Yanfelixonmars@archlinux.orgdb-update fails to update state repo with a git errordb-update sometimes updates the db successfully but fails to update the state repo. This makes the state repo inconsistent and breaks a future db-move etc.
```
DEBUG:root:haskell-hasql-transaction: ==> Updating [extra-staging]...
DEBUG:...db-update sometimes updates the db successfully but fails to update the state repo. This makes the state repo inconsistent and breaks a future db-move etc.
```
DEBUG:root:haskell-hasql-transaction: ==> Updating [extra-staging]...
DEBUG:root:haskell-hasql-transaction: -> haskell-hasql-transaction-1.0.1.1-172-x86_64.pkg.tar.zst (x86_64)
DEBUG:root:haskell-hasql-transaction: -> haskell-hasql-transaction-debug-1.0.1.1-172-x86_64.pkg.tar.zst (x86_64)
DEBUG:root:haskell-hasql-transaction: fatal: Unable to create '/srv/repos/state/.git/index.lock': File exists.
DEBUG:root:haskell-hasql-transaction:
DEBUG:root:haskell-hasql-transaction: Another git process seems to be running in this repository, e.g.
DEBUG:root:haskell-hasql-transaction: an editor opened by 'git commit'. Please make sure all processes
DEBUG:root:haskell-hasql-transaction: are terminated then try again. If it still fails, a git process
DEBUG:root:haskell-hasql-transaction: may have crashed in this repository earlier:
DEBUG:root:haskell-hasql-transaction: remove the file manually to continue.
DEBUG:root:haskell-hasql-transaction: fatal: Unable to create '/srv/repos/state/.git/index.lock': File exists.
DEBUG:root:haskell-hasql-transaction:
DEBUG:root:haskell-hasql-transaction: Another git process seems to be running in this repository, e.g.
DEBUG:root:haskell-hasql-transaction: an editor opened by 'git commit'. Please make sure all processes
DEBUG:root:haskell-hasql-transaction: are terminated then try again. If it still fails, a git process
DEBUG:root:haskell-hasql-transaction: may have crashed in this repository earlier:
DEBUG:root:haskell-hasql-transaction: remove the file manually to continue.
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/31Gitlab rate limits break db-move (or possibly other db operations)2023-06-08T18:46:58ZFelix Yanfelixonmars@archlinux.orgGitlab rate limits break db-move (or possibly other db operations)`/packages/db-move` hits gitlab's rate limits on gemini when moving a large batch of packages.
```
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-charset
f388367..7c43ea4 main -> main
* [new tag] ...`/packages/db-move` hits gitlab's rate limits on gemini when moving a large batch of packages.
```
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-charset
f388367..7c43ea4 main -> main
* [new tag] 0.3.9-102 -> 0.3.9-102
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-config-ini
1cf3893..d817a5c main -> main
* [new tag] 0.2.5.0-34 -> 0.2.5.0-34
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-cassava
0bb9d46..4fad92c main -> main
* [new tag] 0.5.3.0-54 -> 0.5.3.0-54
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-authenticate-oauth
fd9e79c..1fbc2fa main -> main
* [new tag] 1.7-171 -> 1.7-171
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-lens
d428886..657c0c8 main -> main
* [new tag] 5.2.2-9 -> 5.2.2-9
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-tasty-lua
12ecb45..9c1f789 main -> main
* [new tag] 1.0.2-59 -> 1.0.2-59
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-hedgehog-classes
7d1681f..f9e8c02 main -> main
* [new tag] 0.2.5.4-25 -> 0.2.5.4-25
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-req
5645ec0..8df5fb0 main -> main
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-bitvec
a2527aa..db8e4fd main -> main
* [new tag] 1.1.3.0-47 -> 1.1.3.0-47
From https://gitlab.archlinux.org/archlinux/packaging/packages/haskell-tamarin-prover-sapic
63e9ff3..89ba07d main -> main
* [new tag] 1.6.1-139 -> 1.6.1-139
remote: Retry later
fatal: unable to access 'https://gitlab.archlinux.org/archlinux/packaging/packages/allure.git/': The requested URL returned error: 429
==> Removing left over lock from [extra] (x86_64)
==> ERROR: Couldn't find package allure in git!
==> Removing left over lock from [extra-staging] (x86_64)
```
And retrying would hit the rate limits again immediately:
```
From https://gitlab.archlinux.org/archlinux/packaging/packages/allure
9103a52..11f8671 main -> main
* [new tag] 0.11.0.0-81 -> 0.11.0.0-81
error: RPC failed; HTTP 429 curl 22 The requested URL returned error: 429
fatal: expected flush after ref listing
==> Removing left over lock from [extra] (x86_64)
==> ERROR: Couldn't find package haskell-classy-prelude in git!
==> Removing left over lock from [extra-staging] (x86_64)
```Levente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.orghttps://gitlab.archlinux.org/archlinux/dbscripts/-/issues/34pkgctl build --rebuild errors about missing "HEAD" when running outside of a ...2023-06-06T22:41:51ZFelix Yanfelixonmars@archlinux.orgpkgctl build --rebuild errors about missing "HEAD" when running outside of a git repositoryWhen rebuilding a package outside of a git repository, `pkgctl build --rebuild` prints the following error:
```
error: Could not access 'HEAD'
```
The build went on well though.When rebuilding a package outside of a git repository, `pkgctl build --rebuild` prints the following error:
```
error: Could not access 'HEAD'
```
The build went on well though.https://gitlab.archlinux.org/archlinux/dbscripts/-/issues/19Migrate to git2023-05-21T13:56:32ZFrederik SchwanMigrate to gitStart tracking PKGBUILDs in git instead of subversion
This issue has been migrated from https://kanboard.archlinux.org/project/7/task/100Start tracking PKGBUILDs in git instead of subversion
This issue has been migrated from https://kanboard.archlinux.org/project/7/task/100GitLevente Polyakanthraxx@archlinux.orgLevente Polyakanthraxx@archlinux.org