Commit Graph

373 Commits

Author SHA1 Message Date
Martchus b3dd694a1c Move all code in `run()` function into try-blocks for consistent error handling 2023-06-03 17:10:15 +02:00
Martchus 9113015294 Show database architecture in package search table
Otherwise it can be confusing why any-arch packages show up
twice and it is also unclear to which repository they belong.
2023-05-31 23:52:29 +02:00
Martchus 81b6a6167c Improve mirror links 2023-05-31 23:45:06 +02:00
Martchus 50ef7c26f3 Allow triggering package search for DB from DBs page 2023-05-29 15:03:43 +02:00
Martchus 54a7a84d11 Apply cf6b90407e for libpkg as well
We use `-std=c++2b` everywhere so this workaround is also
required in all sub projects.
2023-05-28 23:50:56 +02:00
Martchus 1376a01570 Allow fetching official PKGBUILDs from GitLab
The old approach of using a local checkout does not work anymore
after the Git migration. One could use
`pkgctl repo clone --universe` to get a similar checkout but this
takes ages on my server. So let's better just download the
individual sources as needed, similar to how it is done for AUR
packages.
2023-05-28 23:43:13 +02:00
Martchus feadac7a66 Adapt tests to changed note 2023-05-28 22:37:19 +02:00
Martchus 30a80e7aca Add pkgctl tool 2023-05-28 22:05:02 +02:00
Martchus cf6b90407e Workaround compilation error happening in reflection generation
The latest version of libstdc++ in Arch Linux at this point (13.1.1)
pulls in the following code via `#iterator <iterator>` when
`-std=gnu++2b` is used:

```
    template<forward_iterator _It>
      struct __basic_const_iterator_iter_cat<_It>
{ using iterator_category =
iterator_traits<_It>::iterator_category; };
```

The latest version of Clang in Arch Linux at this point (15.0.7)
complains about a missing `typename` here. To avoid this error
from preventing the build, this changes enables error resilience
for the reflection generation to turn this error into a warning.
2023-05-28 21:05:29 +02:00
Martchus 72d449977f Fix note about deleted build actions in cleanup action 2023-05-28 20:37:45 +02:00
Martchus 1bf427c6d7 Improve README section about chroot creation 2023-05-28 20:28:14 +02:00
Martchus 55e19d9041 Relax condition for adding `--skippgpcheck`
The `signed` parameter might be used like this:
```
"$pkgname::git+https://github.com/ankitects/anki#tag=${_tag}?signed"
```
So we can't rely on `.git` preceding it.
2023-04-08 19:26:46 +02:00
Martchus cce83f1f9e Allow considering pulling-in further dependencies unexpected
This allows one to review further dependencies if pulled-in automatically
during the build preparation first before conducting the build.
2023-04-08 19:10:59 +02:00
Martchus 86581ec002 Add note in cleanup action stating how many build actions have been deleted 2023-04-08 18:50:46 +02:00
Martchus 5af8de2468 Fix catching exception from `boost::filesystem` in `BuildServiceCleanup` and adapt tests 2023-04-08 18:43:58 +02:00
Martchus 87fd9bb4b1 Fix unqualified calls in `preparebuild.cpp` 2023-04-07 19:30:08 +02:00
Martchus 00edfed48b Improve error handling in `BuildServiceCleanup` 2023-04-07 19:23:13 +02:00
Martchus bb8d875059 Apply clang-format 2023-04-07 19:15:50 +02:00
Martchus 836b7da8a3 Invoke `paccache` as part of the build service cleanup 2023-04-07 19:15:16 +02:00
Martchus 08af21ddb5 Fix warnings about unqualified calls in `buildaction.cpp` 2023-04-07 17:55:13 +02:00
Martchus 9702d4f207 Add paths for pacman/paccache to server setup 2023-04-07 17:52:52 +02:00
Martchus 2b0b495715 Add missing <cstdint> include 2023-04-07 17:52:21 +02:00
Martchus e02d4d449c Use `pubsetbuf` only with `libstdc++`
This usage of the function seems only to work as intended with that
standard lib. With `libc++` and the MSVC standard lib the call has no
effect.
2023-02-28 21:21:04 +01:00
Martchus 2e448b427b Consider libs under `…/lib/linux/…` Android-specific as well 2023-02-18 20:29:44 +01:00
Martchus e477613a8b Implement preserving chroot for containerized builds as well
This keeps the container around by passing the `DEBUG´ environment variable
recognized by `makechrootpkg`.
2023-02-03 23:06:43 +01:00
Martchus e5f4dc156c Avoid unqualified call to `std::move` 2023-02-03 21:30:42 +01:00
Martchus cc9f90acfc Make it easier to select build action when pre-defined task is selected 2023-01-31 14:10:02 +01:00
Martchus 79eb9e849c Fix about dialog not closable when vieport height is not sufficient 2023-01-31 13:45:40 +01:00
Martchus e14eb17c60 Apply clang-format 2023-01-23 22:42:45 +01:00
Martchus 2fd30f5a0f Adapt tests to boost 1.81 2023-01-23 22:41:01 +01:00
Martchus 45d97a1c63 Support version 3 of Catch2 in test cases of lmdb-safe 2023-01-22 23:08:07 +01:00
Martchus 31d1025b85 Fix compilation against boost 1.81.0 2023-01-22 22:31:20 +01:00
Martchus 5f25e6e8b7 Avoid unqualified calls to `std::move` 2023-01-22 22:30:07 +01:00
Martchus 599185d3ae Use async locks when invoking custom command 2023-01-17 23:27:36 +01:00
Martchus 80b5094659 Use async locks in repo actions 2023-01-17 22:20:10 +01:00
Martchus bb9da06950 Use async lock to lock repo when adding package 2023-01-17 22:07:00 +01:00
Martchus 4f413e86ba Allow to abort build action immediately while waiting for chroot locks
* Avoid aborted build actions from being stuck in running state while
  waiting until the chroot locks can be acquired; allow aborting action
  immediately instead
* Use async locks when invoking makechrootpkg and split affected function
  accordingly
2023-01-17 18:40:05 +01:00
Martchus b8f211e1d1 Make functions to invoke build async 2023-01-17 18:40:05 +01:00
Martchus 8dfa948e03 Implement helper functions for async global locks 2023-01-17 18:40:05 +01:00
Martchus e74f80a089 Update copyright notice 2023-01-17 18:39:46 +01:00
Martchus 036aa2c090 Fix "invalid escape" in regular expression in test suite 2022-12-29 17:33:01 +01:00
Martchus 874152a2cb Update xtermjs to 5.1.0 2022-12-20 22:09:26 +01:00
Martchus c404a092cc Add async locks
This might be useful to avoid blocking threads in the thread pool just for
waiting on a global lock. It might also be useful to allow stopping build
actions while they're waiting for a lock.
2022-12-04 00:28:47 +01:00
Martchus b1acbee127 Add very basic test for build service cleanup 2022-11-24 23:12:01 +01:00
Martchus 218e1f6b17 Add simple cleanup of old build actions 2022-11-24 21:33:42 +01:00
Martchus 9cf0fed450 Avoid duplicating "Clone of" in task name 2022-11-13 22:44:41 +01:00
Martchus 9c219288c9 Render name and version of packages in build preparation correctly 2022-11-13 22:37:32 +01:00
Martchus aff7853f94 Set task name of clones 2022-11-13 22:14:29 +01:00
Martchus 962dd0088e Fix computing source package name
The `packageName` (key in build preparation) might not actually be
`pkgbase` when rebuilding a binary package and `pkgbase` changes compared
to what it was in the before. Then `packageName` is still set to the old
`pkgbase` and we need to use the name from the actual source info (which is
the name `pkgbase` value).
2022-11-13 22:09:44 +01:00
Martchus 6e7e0c01e3 Avoid using deprecated OpenSSL functions 2022-11-03 22:34:31 +01:00