Commit Graph

124 Commits

Author SHA1 Message Date
a8afccf081 lmdb: Set limit for at least 6 DBs (requiring each 10 LMDB databases)
This makes setting up tests easier.
2022-01-18 22:54:49 +01:00
e44cbf94e5 lmdb: Enable versioning for objects we'd like to store in the DB 2022-01-18 22:48:34 +01:00
879c8824a4 Fix typo in README 2022-01-18 22:39:19 +01:00
fc32f790fb lmdb: Use namespace and have reflective-rapidjson code in its own header 2022-01-18 22:25:28 +01:00
f4774cac56 lmdb: Remove obsolete code 2022-01-18 22:11:54 +01:00
2ffa6629c8 lmdb: Use lmdb to store packages and dependency indices 2022-01-18 21:50:53 +01:00
bcc24fe1d1 lmdb: Update lmdb-safe
Add own patches and ones from pending PRs
2022-01-18 20:57:00 +01:00
5ad89d964f lmdb: Exclude lmdb-safe from tidying 2021-12-07 22:48:42 +01:00
c4a32feb48 lmdb: Configure project to use lmdb and lmdb-safe 2021-12-07 22:48:42 +01:00
4ce5401904 lmdb: Add lmdb-safe submodule 2021-12-07 22:48:42 +01:00
0a2c41ee0c Fix shadowing warning 2021-12-07 22:48:22 +01:00
567c3aaf56 Support "trunk" subdirectory for using official svntogit repos as source 2021-11-16 15:00:19 +01:00
0f7718c934 Locate PKGBUILDs locally also without variant dir
This makes it possible to checkout
https://github.com/archlinux/svntogit-packages.git and
https://github.com/archlinux/svntogit-community.git locally to build
official packages.
2021-11-14 23:37:33 +01:00
6f652922cd Add lookup for repo-specific config file path
This could be useful to create another repository with packages that are
built using different compile flags, e.g. optimized for certain processors.
2021-11-14 22:59:46 +01:00
2adc80e5fc Override existing symlinks when adding signatures to repo 2021-11-03 16:32:38 +01:00
893a8473ad Override existing symlinks when adding packages to repo 2021-11-03 16:06:16 +01:00
755e1958d3 Allow overriding existing files in repository
When `repo-add` fails but files could be copied before refusing to override
is actually very annoying because one has to delete the files before
restarting the build task.
2021-10-07 18:12:44 +02:00
672f3b4e97 Fix staging check for split packages
* Consider all split packages when skipping an affected package
2021-09-30 22:23:54 +02:00
ace478be22 Fix tests when test working directory is on another device
* Fallback to copying if hard link creation fails due to cross device link
2021-09-30 22:22:22 +02:00
a93924bb3a Fix cleanup of signatures
* Record full path for the deletion of orphaned signatures
* Test for the existence of the signature symlink itself and not the target
  because the symlink target (in the any directory) might not exist anymore
  but the symlink should be removed in any case
2021-08-29 00:32:19 +02:00
c68202bdc1 Add test for repository cleanup 2021-08-29 00:29:26 +02:00
1cc8a3d6db Add warnings about missing DLLs to the build action's result 2021-08-28 15:06:24 +02:00
2ad4a39aea Handle case when a split package overrides the archs from the base 2021-08-28 00:25:09 +02:00
95ae827c74 Fix applying relative working directory multiple times 2021-07-31 14:55:49 +02:00
1ce736d66f Fix passing the body limit to nested cachePackages() calls 2021-07-25 01:25:30 +02:00
075f539480 Avoid copying strings when splitting lock names for custom command 2021-07-25 00:41:46 +02:00
f3ec908bcc Hold lock for named lock table not while acquiring named lock
Otherwise all other attempts to acquire named locks are blocked. It should
be ok because references are not invalidated when inserting/accessing
elements of an `std::unique_map`. When cleaning locks up elements are
erased, though. Hence an additional cleanup lock is required to prevent
acquiring a named lock which has already been cleaned up.
2021-07-25 00:40:39 +02:00
4850ada836 Add instructions for sharing ccache with other user 2021-07-20 18:55:25 +02:00
bbc7c3a533 Ignore empty packages within the cache dir
Those are most likely leftovers from  previous failed download attempts and
can be ignored. (Existing files are overridden.)
2021-07-17 23:58:37 +02:00
e5f4057c61 Use BufferSearch from c++utilities 2021-07-16 16:01:23 +02:00
bc8a0549b2 Log package download limit 2021-07-14 15:27:49 +02:00
909f7bfab0 Use default package download size limit if it is set to zero 2021-07-14 15:23:18 +02:00
e0a913b16c Apply clang-format 2021-07-13 00:41:49 +02:00
c10df26871 Adapt to versioning changes in reflective rapidjson 2021-07-13 00:41:25 +02:00
e3803b9852 Mention limitation of open connections in README.md 2021-07-12 15:26:04 +02:00
c05a581322 Increase the max. download size for packages and allow configuring it 2021-07-12 15:00:43 +02:00
5ec527bebb Fix typo in test suite consistently 2021-07-07 20:13:22 +02:00
a2fbba9713 Allow constructing BadRequest from std::string 2021-07-07 19:46:43 +02:00
b5ca815e4c Allow excluding packages via regex when reloading library dependencies
This recently failed because the cuda package exceeded the max. body size.
I suppose it makes generally sense to be able to exclude packages as I
don't need that package anyways.
2021-07-07 19:14:03 +02:00
d006c9ce4f Fix error handling when instantiating std::regex 2021-07-07 19:09:32 +02:00
17c5f50440 Do not exit process if config values are invalid
This is not a good idea when re-reading the config after startup.
2021-07-07 19:08:47 +02:00
49aebdd8a5 Fix typos found via codespell --skip .git -w 2021-07-03 19:59:57 +02:00
8b70cc5f8e Clear added/removed provides from previous builds 2021-06-22 00:02:41 +02:00
f685fddd20 Add .pid-equivalent for Boost.Asio's Windows-executor 2021-06-22 00:01:55 +02:00
0a55412625 Remove unused #include 2021-06-21 23:58:34 +02:00
687cf4f996 Make inclusion of tabulate project optional 2021-06-21 23:57:58 +02:00
d9203689a0 Fix param for PrepareBuildFlags::ResetChrootSettings 2021-06-04 16:47:24 +02:00
e1b1f99ecc Improve README.md and examples 2021-06-03 23:05:19 +02:00
3a797bc8b6 Adapt test to fixed behavior of splitString*() to preserve last empty part 2021-05-16 19:43:16 +02:00
9359004a10 Allow resetting chroot settings as well when preparing build 2021-05-16 16:49:09 +02:00