Martchus
8e18b4747f
Assume the filename as library name for ELF libraries without soname field
2022-03-03 23:00:16 +01:00
Martchus
6456273951
Fix early return for special handling of `mingw-w64-crt`
2022-03-03 22:43:31 +01:00
Martchus
cbfdf2236e
Skip DLLs provided by Windows when checking for unresolvable DLLs
2022-03-03 22:40:48 +01:00
Martchus
c2e7f40767
Fix typos
2022-03-01 00:43:06 +01:00
Martchus
79123e4cd9
Improve error handling of server
...
* Return with non-zero exit code when an exception occurred
* Handle exceptions when terminating the service
2022-03-01 00:39:50 +01:00
Martchus
659a8b0e8b
Update xterm.js to 4.18.0
2022-03-01 00:30:48 +01:00
Martchus
02bf5faba4
Remove output route from CLI
2022-03-01 00:28:08 +01:00
Martchus
b6901afcc2
Add memory limits to systemd service for io_uring
2022-02-27 00:07:49 +01:00
Martchus
e5f0a36730
Update README.md
2022-02-26 23:16:25 +01:00
Martchus
0343685910
Adapt tests for limiting
2022-02-25 23:18:26 +01:00
Martchus
67fa8def0b
Name additional threads
2022-02-25 23:09:46 +01:00
Martchus
2071327a71
Fix building packages using signed git repositories as source
2022-02-25 23:09:16 +01:00
Martchus
22cfb4bb29
Use std::string_view when parsing pkg info
2022-02-25 23:08:12 +01:00
Martchus
fd35aa0da6
Parse sources and size from pkg info
2022-02-25 23:07:55 +01:00
Martchus
90ff9678fe
Limit results returned by the API for better scalability
2022-02-25 00:29:43 +01:00
Martchus
ff7f039519
Ensure problems of repos with different archs but the same name aren't mixed up
2022-02-22 22:50:51 +01:00
Martchus
382169ab6e
Fix varoius build action related problems
...
* Fix crashes in some situations
* Fix aborting reloading library dependencies
2022-02-22 22:49:40 +01:00
Martchus
9e15129d9d
Ignore null-dereference warning
...
It is about
```
return result_type{ storageEntry.id, storageEntry.ref.relatedStorage };
```
but it isn't clear why the compiler thinks there's a problem.
2022-02-22 22:46:53 +01:00
Martchus
5c62014b3b
Fix variable name in fallback code when BOOST_ASIO_HAS_FILE
2022-02-22 20:22:00 +01:00
Martchus
a25db1f9e0
Log usage of `io_uring`
2022-02-22 00:08:21 +01:00
Martchus
839a4b0831
Fix wrong variable name in `buildactionlivestreaming.cpp`
2022-02-22 00:05:35 +01:00
Martchus
3dfdce58af
lmdb: Update subrepo
2022-02-21 23:49:09 +01:00
Martchus
8ea2f5fd62
Reintroduce cache file as it is still required for "lastUpdate" for DBs
...
Maybe it makes more sense to use LMDB for this as well. On the other hand
it is an easy way of keeping the remaining state persistent.
2022-02-20 20:17:42 +01:00
Martchus
9c4f0277bd
Unlock output lock early
...
The following things are read-only or guarded by other mutex.
2022-02-20 19:51:46 +01:00
Martchus
bdbfd42e5e
Avoid package object being reused after 3d7310af3
2022-02-20 19:50:44 +01:00
Martchus
d11ba43bf0
lmdb: Avoid getting packages with empty name, can lead to exception
2022-02-20 19:28:44 +01:00
Martchus
334bb1faa9
Use io_uring for async file I/O
2022-02-20 18:44:07 +01:00
Martchus
8115721913
Fix handling error computing db order when reloading dependencies
2022-02-20 00:18:49 +01:00
Martchus
93afb3883d
Write build action "output" log to a logfile like for sub-processes
2022-02-20 00:11:23 +01:00
Martchus
a7de520549
Use lazy-deserialization and package cache when searching in package name
2022-02-19 00:11:59 +01:00
Martchus
3d7310af30
lmdb: Get `std::shared_ptr` directly from iterator
2022-02-18 19:23:00 +01:00
Martchus
68c11be6bb
Call `addDepsAndProvidesFromOtherPackage` *before* clearing existing packages
2022-02-16 19:54:21 +01:00
Martchus
b3b396df5f
Allow ignoring copying errors due to existing files when moving packages
2022-02-16 19:47:25 +01:00
Martchus
8949b5f3c1
Fix resetting running build actions on server startup
2022-02-16 19:17:29 +01:00
Martchus
557fd1a738
lmdb: Use lmdb to store build actions
2022-02-13 21:04:54 +01:00
Martchus
3c4f81bd55
lmdb: Declare use of lmdb on level of lmdb-safe
2022-02-05 21:52:20 +01:00
Martchus
4fbe3df095
Allow enabling Boost.Asio's support for using `io_uring`
...
It won't likely do much regarding file handling as code is currently still
using `boost::asio::posix::stream_descriptor` or Boost.Beast's file
handling (which uses blocking I/O). I suppose one needs to use the new file
API described here under "Asio 1.22.0 / Boost 1.78":
https://www.boost.org/doc/libs/1_78_0/doc/html/boost_asio/history.html
2022-02-05 20:31:11 +01:00
Martchus
9f0ff84bba
lmdb: Update submodule
2022-02-04 17:57:22 +01:00
Martchus
ff8b644221
Avoid redundant code in PackageUpdaterPrivate::submit() applying previous commit in all versions
2022-02-04 17:57:11 +01:00
Martchus
e5a3b5f311
Fix accidentally removing dependency from index when already provided by existing package
2022-02-03 22:10:22 +01:00
Martchus
e582d5f406
Remove useless blank line
2022-02-03 22:07:22 +01:00
Martchus
4ed645be94
Fix handling of head requests
...
* Fix condition for skipping
* Open destination file only if the request is not skipped (when doing a
head request first)
2022-02-02 21:18:07 +01:00
Martchus
90379678ad
Improve error handling when opening archive
...
* Treat an empty archive buffer/file as error as this should never happen
and it is better to fail early than replacing existing data with nothing
* Query error message also when opening archive from file
2022-02-02 21:16:56 +01:00
Martchus
d1d65dac80
Use `CacheRef(storage, entry)` c'tor as it is generally preferred
...
Passing any string here is more likely a mistake, see previous commit
2022-02-01 22:59:09 +01:00
Martchus
2a256e6ac1
Fix using dangling ref of package name as hash key
2022-02-01 22:57:13 +01:00
Martchus
3f9f5eae3f
Avoid exceeding txn limit when pulling deps by avoiding recursion
2022-02-01 21:51:19 +01:00
Martchus
bb9aaf7839
lmdb: Update subproject
2022-02-01 20:27:00 +01:00
Martchus
82eaae5d36
Remove unused object
2022-01-31 21:39:57 +01:00
Martchus
66f59fecb9
Make storing lib deps more efficient and allow for intermediate reads
2022-01-31 21:32:07 +01:00
Martchus
4b70682ab5
Fix querying package details by making corresponding function accessible
2022-01-31 21:32:07 +01:00