]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Mon, 9 May 2022 22:11:36 +0000 (22:11 +0000)]
tests: Drop all repo information from memory before read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 21:04:00 +0000 (21:04 +0000)]
dependencies: Fix parsing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:17:43 +0000 (20:17 +0000)]
build: Allow build environments to be interactive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:14:34 +0000 (20:14 +0000)]
progressbar: Fix output
This was broken in
23b9395887ec464084ca57c23fbe8c012f467700 .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:09:06 +0000 (20:09 +0000)]
tests: Fix build after callback changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:01:03 +0000 (20:01 +0000)]
build: Drop redundant interactivity flag
There is already a flag for this which can be used.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 17:59:29 +0000 (17:59 +0000)]
logging: Do not crash when log callback isn't set
This is now possible because we have a new function to modify the
callback.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 16:12:37 +0000 (16:12 +0000)]
callbacks: Rework them to be easier to pass around
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 10:04:51 +0000 (10:04 +0000)]
pakfire: Introduce confirm callback
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 09:33:50 +0000 (09:33 +0000)]
pakfire: Go back on callbacks
Instead of passing a giant struct will all sorts of callbacks, it is
probably more flexible if we would pass them individually.
However, the log callback should be initialized at the very beginning to
allow Pakfire to properly log from the very start.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 08:42:02 +0000 (08:42 +0000)]
pakfire: Add function to reset all callbacks
When we call pakfire from Python, we will pass some callbacks which we
will hold a reference to. If those are being freed but Pakfire isn't we
might call the freed callback.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 08:28:09 +0000 (08:28 +0000)]
downloader: Replace snprintf by our own string function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 8 May 2022 16:34:44 +0000 (16:34 +0000)]
db: Check for compatible architecture
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 7 Apr 2022 18:32:43 +0000 (18:32 +0000)]
macros: Build for more modern processors only
This patch enables pakfire to build for processors that have been
released after 2011 only.
It allows us to use modern processor features like SSE4.1, SSE4.2,
POPCNT, SSE3, and SSSE3.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 16:16:06 +0000 (16:16 +0000)]
db: Wrap erasing packages into a transaction, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 16:15:41 +0000 (16:15 +0000)]
file: Ignore if the file was already deleted
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 15:57:20 +0000 (15:57 +0000)]
db: Store a timestamp when the database was modified last
This is useful to detect whether things have changed since the database
was opened and whether things have to be re-read from it.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 14:46:13 +0000 (14:46 +0000)]
Implement a simple locking mechanism to avoid concurrent transactions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:47:37 +0000 (13:47 +0000)]
configure: Fix appending flags to CFLAGS/LDFLAGS
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:25:22 +0000 (13:25 +0000)]
testsuite: Fix shadowed variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:23:50 +0000 (13:23 +0000)]
testsuite: Fix prototype declarations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:20:31 +0000 (13:20 +0000)]
packagelist: Make helper function static
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:19:13 +0000 (13:19 +0000)]
transaction: Make pakfire_transaction_downloadsize static
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:18:34 +0000 (13:18 +0000)]
logging: Include header file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:17:11 +0000 (13:17 +0000)]
keystore: Include header file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:13:35 +0000 (13:13 +0000)]
pakfire: Do not attempt to call callbacks when not set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:10:35 +0000 (13:10 +0000)]
parser: Reset r after no matches are found
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:10:20 +0000 (13:10 +0000)]
parser: Improve debugging output when expanding a value fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:01:01 +0000 (13:01 +0000)]
Fix shadowing any local variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:43:41 +0000 (12:43 +0000)]
Fix any invalid prototypes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:39:30 +0000 (12:39 +0000)]
configure: Replace CFLAGS
All flags that are default or a decision by the operating system have
been removed and we only enable a bunch of warnings that will help us to
write better code.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:39:08 +0000 (12:39 +0000)]
configure: Ask for a modern C compiler
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:29:55 +0000 (12:29 +0000)]
configure: Enable -fno-semantic-interposition if possible
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:23:33 +0000 (12:23 +0000)]
Make pakfire non-interactive by default
This feels a lot more logical in the code. Most of the time Pakfire will
be used in a non-interactive mode and therefore making it optional is
the better choice.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:10:35 +0000 (12:10 +0000)]
transactions: Do not confirm when running on non-interactive mode
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:10:08 +0000 (12:10 +0000)]
archive: Do now show progressbar when running in non interactive mode
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:06:30 +0000 (12:06 +0000)]
transactions: Use callbacks to show status & progress
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:00:02 +0000 (12:00 +0000)]
callbacks: Only copy when data is set
When callbacks was a struct but some pointers where NULL it could happen
that we attempt to call that NULL pointer.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 11:59:10 +0000 (11:59 +0000)]
python: Make callbacks available from Python
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 11:47:42 +0000 (11:47 +0000)]
callbacks: Change progress from double to integer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 10:51:52 +0000 (10:51 +0000)]
pakfire: Introduce callbacks
These can be used to inform any calling applications about the status
of Pakfire.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 20:49:58 +0000 (20:49 +0000)]
pakfire-builder: build: Add --non-interactive switch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 20:46:44 +0000 (20:46 +0000)]
pakfire-builder: build: Drop private network option
This is always on by default and cannot be turned off.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:07:23 +0000 (19:07 +0000)]
pakfire-builder: Remove forgotten comment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:06:35 +0000 (19:06 +0000)]
pakfire-builder: Remove --mode parameter
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:05:49 +0000 (19:05 +0000)]
pakfire-builder: Remove --private-network switch
I do not see why we would need this here.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:03:23 +0000 (19:03 +0000)]
pakfire-builder: shell: Remove option to install additional packages
This should work inside the chroot with a functioning pakfire.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:57:10 +0000 (18:57 +0000)]
pakfire: Don't throw an exception if execute fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:49:16 +0000 (18:49 +0000)]
man: Document all pakfire commands
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:27:33 +0000 (18:27 +0000)]
man: Document command line switches
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:19:36 +0000 (18:19 +0000)]
pakfire: Refactor printing errors to console
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:19:10 +0000 (18:19 +0000)]
pakfire: Fix enabling/disabling repository when they don't exist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 17:28:58 +0000 (17:28 +0000)]
pakfire: execute: Add --non-interactive switch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:24:27 +0000 (16:24 +0000)]
pakfire: Add some useful output and return code to "check"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:13:44 +0000 (16:13 +0000)]
pakfire: Import logging module
This is being used later on, but was unfortunately not imported
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:11:19 +0000 (16:11 +0000)]
_pakfire: Fix deprecation warning for PyBuildValue that uses #
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:03:48 +0000 (16:03 +0000)]
_pakfire: archive: Raise proper exception when file could not be read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:41:58 +0000 (15:41 +0000)]
repo: Only delete files that start with prefix if requested
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:21:10 +0000 (15:21 +0000)]
archive: Accept if packages have no filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:20:43 +0000 (15:20 +0000)]
archive: Do not try to pass an empty filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 7 Dec 2021 16:44:44 +0000 (16:44 +0000)]
util: Correctly find the first part before =, >, <, etc.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 7 Dec 2021 16:43:43 +0000 (16:43 +0000)]
util: Skip any dependencies starting with #
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:32:06 +0000 (16:32 +0000)]
pakfire-builder: Forward shell exit code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:31:45 +0000 (16:31 +0000)]
archive: Add test for pakfire_archive_get_path/format
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:16:42 +0000 (16:16 +0000)]
archive: Check if file exists after extraction
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:14:27 +0000 (16:14 +0000)]
archive: Slightly refactor extraction and filelist test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:07:28 +0000 (16:07 +0000)]
archive: Add test for pakfire_archive_copy
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 15:58:53 +0000 (15:58 +0000)]
archive: Set errno = ENOENT when file could not be found
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 15:58:08 +0000 (15:58 +0000)]
archive: Add test for pakfire_archive_read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 15:28:23 +0000 (15:28 +0000)]
archive: Add tests for functions pakfire_archive_get
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 15:18:07 +0000 (15:18 +0000)]
repo: Do not explicitely free repodata
This will be freed again later which causes a double-free.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 15:06:29 +0000 (15:06 +0000)]
archive: Drop unused function pakfire_archive_get_pakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 12:21:43 +0000 (12:21 +0000)]
pool: Mark repos/pool as dirty and create indices when needed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 11:48:25 +0000 (11:48 +0000)]
transaction: Perform file conflict check
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 11:48:02 +0000 (11:48 +0000)]
libpakfire: Link against libsolvext
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 11:06:13 +0000 (11:06 +0000)]
Make GCC's static analyzer happier
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Nov 2021 10:20:55 +0000 (10:20 +0000)]
util: Add tests for pakfire_format_size
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 18:38:20 +0000 (18:38 +0000)]
packager: Add virtual requirement if using rich dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 18:28:24 +0000 (18:28 +0000)]
request: Fix segmentation fault when archive could not be opened
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 12:54:27 +0000 (12:54 +0000)]
test: Add more dependency test cases
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 12:50:06 +0000 (12:50 +0000)]
man: Add documentation for dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 12:01:05 +0000 (12:01 +0000)]
man: Add scaffolding
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 11:40:21 +0000 (11:40 +0000)]
Add support for rich dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Nov 2021 11:39:00 +0000 (11:39 +0000)]
testsuite: Fix passing more arguments than possible to string
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 21:04:49 +0000 (21:04 +0000)]
util: pakfire_string_join: Make space for last character
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 21:04:20 +0000 (21:04 +0000)]
util: Validate input for pakfire_string_join
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 21:03:42 +0000 (21:03 +0000)]
util: Add tests for pakfire_string_join
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 19:57:16 +0000 (19:57 +0000)]
packager: Do not write an empty filelist and payload
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 16:23:44 +0000 (16:23 +0000)]
packager: Add a test that tries to read a generated package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 16:19:42 +0000 (16:19 +0000)]
testsuite: Safety check if value is suddenly NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 16:09:08 +0000 (16:09 +0000)]
testsuite: Optionally return path to temporary file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 15:56:51 +0000 (15:56 +0000)]
testsuite: Delete all temporary files immediately
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 15:41:44 +0000 (15:41 +0000)]
dependencies: Check parsing invalid inputs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:50:11 +0000 (14:50 +0000)]
test: Add simple dependency pasing tests
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:49:24 +0000 (14:49 +0000)]
util: Rename pakfire_parse_dep to pakfire_str2dep
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:41:22 +0000 (14:41 +0000)]
Use pakfire_dep2str
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:39:20 +0000 (14:39 +0000)]
util: Add simple function to convert dependencies into strings
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:17:18 +0000 (14:17 +0000)]
util: Add test for pakfire_string_matches
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:13:55 +0000 (14:13 +0000)]
util: Add test for pakfire_string_endswith
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 5 Oct 2021 14:11:54 +0000 (14:11 +0000)]
util: Check input for pakfire_string_startswith
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>