Commit Graph

128 Commits

Author SHA1 Message Date
Martchus c7f2310250 Bump patch version 2024-03-11 12:35:21 +01:00
Martchus fe80e5b970 Remove pragma to ignore warning
This seems no longer required.
2024-03-08 19:19:17 +01:00
Martchus aabd469a93 Extend stresstest of `PackageUpdater` to cover update without clear-flag 2024-03-07 01:48:02 +01:00
Martchus a43fec4868 Fix memory leak in archiving utilities 2024-03-07 00:29:43 +01:00
Martchus c3ea4f42f0 Add stress test for package updater
This test passes, supposedly the package updater is *not* what's causing
sporatic problems with indexes being messed up.
2024-02-27 01:55:59 +01:00
Martchus b9021286bf Apply change of `global.h` template 2024-02-27 00:51:43 +01:00
Martchus cc05267338 Allow parsing sub-variants of mingw-w64 packages
This might be useful for providing additional targets in the future. The
exact names of those sub-variants are still subject to change.
2024-02-18 15:54:58 +01:00
Martchus 5d5b673b3c Improve updating package database when loading library dependencies
* Make use of `PackageUpdater` more efficient by avoiding multiple calls of
  `addDepsAndProvidesFromOtherPackage`
* Fix leaving old provides in the database by splitting the update via new
  `beginUpdate()` and `endUpdate()` functions
2023-12-21 20:51:38 +01:00
Martchus da19885d8b Ensure case of empty package name is handled in find/remove functions 2023-12-19 21:41:38 +01:00
Martchus 8deeb0a82b Remove non-forcing package updates
This was only used in tests but was otherwise not very useful as we
normally need to ensure the persistent database is updated as well.
2023-12-19 21:34:18 +01:00
Martchus f0761ed70e Apply clang-format 2023-12-19 21:32:05 +01:00
Martchus 303d0bd17b Clear entries from package cache correctly 2023-12-17 01:41:13 +01:00
Martchus 40e2fb82de Avoid unqualified use of `std::move` 2023-12-16 23:07:00 +01:00
Martchus 141d8fa3f5 Allow dumping package databases 2023-12-16 22:13:44 +01:00
Martchus ec493b3454 Remove unused includes 2023-12-09 23:28:02 +01:00
Martchus e108c98826 Apply clang-format 2023-11-08 17:25:18 +01:00
Martchus 5a006c6b6d Use CMake `option()` correctly 2023-10-16 23:50:01 +02:00
Martchus 91ee500b0a Show amended upstream version correctly 2023-09-03 22:09:28 +02:00
Martchus cda3c34806 Avoid CMake deprecation warning by bumping version 2023-07-23 21:17:53 +02:00
Martchus c377a9d6ca Fix typos 2023-06-18 22:50:28 +02:00
Martchus e25866c904 Apply clang-format 2023-06-12 22:18:47 +02:00
Martchus 213c823f87 Avoid running into test error when dynamically created symlink already exists 2023-06-12 22:17:57 +02:00
Martchus e72f4afbca Create previously deleted symlink dynamically
This change has not been tested yet.
2023-06-11 00:11:06 +02:00
Martchus 22563561dc
Delete missing-0-any.pkg.tar.zst
The dangling symlink prevents cloning the repository under
Windows.
2023-06-10 23:56:02 +02:00
Martchus 671c45aae5 Re-use string holding file contents
This should reduce memory allocations while walking through an archive's
files.
2023-06-05 20:52:45 +02:00
Martchus 524b16815a Do basic sanity check of a package's most important fields when checking for problems 2023-06-03 18:49:02 +02:00
Martchus 77000ac7d3 Improve logging status when rebuilding DB
Override previous "Processing package …" line to avoid huge output.
2023-06-03 17:48:36 +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 bb8d875059 Apply clang-format 2023-04-07 19:15:50 +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 5f25e6e8b7 Avoid unqualified calls to `std::move` 2023-01-22 22:30:07 +01:00
Martchus 407e3159e0 Update/remove packages from database in a whole transaction 2022-11-01 15:46:10 +01:00
Martchus 84ef92aaa2 Use one transaction when updating packages via `PackageUpdater`
This should likely be done in the other updating functions of the
`Database` class as well to avoid indexes and actual data appearing
inconsistent during the write operations.
2022-11-01 15:11:49 +01:00
Martchus 5feb95039e Parse conflicts and replaces of AUR packages retrieved via AUR RPC 2022-09-01 21:45:31 +02:00
Martchus ccf232a7a7 Parse provides of AUR packages retrieved via AUR RPC 2022-08-29 20:55:28 +02:00
Martchus 9f5474e128 Fix passing architecture when creating database
When adding a new database when reloading the config at runtime the
architecture must be passed when creating the database. Otherwise we end up
with the new database sharing the internal storage with the x86_64 database
which leads to very confusing behavior.
2022-06-19 23:06:25 +02:00
Martchus 6a633252a8 Fix search by libraries broken by recent optimizations 2022-06-09 18:51:03 +02:00
Martchus c155176098 Fix missing build date in package search
* Avoid using buildDate of PackageInfo in favor of the same field in
  PackageBase
    * PackageInfo::buildDate should be removed on the next breaking change
* Do not really use the deprecated attribute because it is still used by
  (de)serialization code until it is removed for good
2022-06-08 22:44:58 +02:00
Martchus 0095424696 Support static-compat variant when computing regular package name 2022-05-31 20:13:21 +02:00
Martchus f2902f1d08 Apply clang-format 2022-05-31 20:13:21 +02:00
Martchus ecebf9fbde Fix showing arch of packages after optimization
* Move the binary package arch truly into the base package
2022-05-31 20:13:15 +02:00
Martchus b74392c34d Speed up deserialization when serving providing packages as well 2022-05-31 19:40:12 +02:00
Martchus 68d67f543f Refactor to optimize deserialization of base-data
* Break backwards compatibility
* Allow to deserialize only base-data of packages and build
  actions to potentially speed up showing tables
* Speed up package search in many cases by only deserializing
  base-data (unless details are actually wanted)
2022-05-31 19:04:57 +02:00
Martchus ae44624989 Rebuild package DBs as well when fixing DBs 2022-05-15 00:32:46 +02:00
Martchus 5699895a37 Add extra prefix to static-compat libs to avoid confusion with normal libs 2022-05-01 22:21:21 +02:00
Martchus 0294bc241e Support static-compat package variant 2022-05-01 21:02:04 +02:00
Martchus 5c2f007589 Use auto consistently in PackageNameData 2022-05-01 20:56:38 +02:00
Martchus 142f6466ae Show resource usage in UI 2022-04-23 19:56:22 +02:00