]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Tue, 11 Jun 2019 03:45:12 +0000 (04:45 +0100)]
libpakfire: archive: Implement extracting hardlinks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 03:36:27 +0000 (04:36 +0100)]
libpakfire: archive: Be more verbose on extraction errors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 02:53:32 +0000 (03:53 +0100)]
tests: Fix refcounting issues in archive test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 02:45:28 +0000 (03:45 +0100)]
tests: Fix refcounting issues in keys test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 02:27:11 +0000 (03:27 +0100)]
libpakfire: parser: Drop reference of parent when creating a child parser
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 01:46:44 +0000 (02:46 +0100)]
tests: Check if reference counting is working
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 01:33:52 +0000 (02:33 +0100)]
libpakfire: parser: The data won't be NULL-terminated
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 01:10:41 +0000 (02:10 +0100)]
libpakfire: util: Fix data type for a string
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 01:05:06 +0000 (02:05 +0100)]
libpakfire: util: Remove some debug output
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 Jun 2019 00:18:29 +0000 (01:18 +0100)]
libpakfire: Remove goto statement in step handling
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 23:54:28 +0000 (00:54 +0100)]
libpakfire: Move cachiing Archive from Package to Step
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 23:44:16 +0000 (00:44 +0100)]
libpakfire: archive: Close archive after reading all metadata
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 23:35:41 +0000 (00:35 +0100)]
Fix typo in comment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 23:12:56 +0000 (00:12 +0100)]
Download via HTTPS only
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 23:12:01 +0000 (00:12 +0100)]
build: Support reading from archives
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 22:54:13 +0000 (23:54 +0100)]
libpakfire: Raise and log better errors when a package could not be read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 22:52:47 +0000 (23:52 +0100)]
python: Implement getting a Package from Archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 19:30:44 +0000 (20:30 +0100)]
Parse relations in libpakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 18:41:13 +0000 (19:41 +0100)]
libpakfire: archive: Drop own implementation of extended attributes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 17:42:23 +0000 (18:42 +0100)]
libpakfire: archive: Re-enable logging of extraction process
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 17:41:50 +0000 (18:41 +0100)]
libpakfire: Do not try to join path when one argument is NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 17:34:16 +0000 (18:34 +0100)]
Implement extracting archives from Python
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 17:33:05 +0000 (18:33 +0100)]
libpakfire: archive: Correctly set arch for source packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 15:45:31 +0000 (16:45 +0100)]
libpakfire: Have pakfire_basename/dirname return a dynamically allocated pointer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 15:39:59 +0000 (16:39 +0100)]
tests: libpakfire: Test pakfire_basename/dirname
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 14:53:58 +0000 (15:53 +0100)]
cli: Use correct function to print search result
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 10 Jun 2019 14:53:37 +0000 (15:53 +0100)]
downloaders: Continue when mirrorlist download fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 15:22:43 +0000 (16:22 +0100)]
libpakfire: Remove unused function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 15:22:22 +0000 (16:22 +0100)]
tests: Enable debug logging
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 15:20:11 +0000 (16:20 +0100)]
libpakfire: archive: Import filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 15:11:38 +0000 (16:11 +0100)]
libpakfire: archive: Import filename
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 15:10:08 +0000 (16:10 +0100)]
libpakfire: Constify pakfire_basename/dirname
Those return a pointer to a statically allocated buffer
which should not be freed. To make that obvious, we make
it const.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:53:59 +0000 (15:53 +0100)]
python: Drop set_capabilities function
This is broken and will soon be implemented in the archive function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:48:10 +0000 (15:48 +0100)]
Silence another compiler warning about the turn value
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:45:19 +0000 (15:45 +0100)]
Makefile: Silence python function cast warnings in GCC 8
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:41:16 +0000 (15:41 +0100)]
libpakfire: Correctly declare and export pakfire_package_{g,s}et_prerequires
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:35:23 +0000 (15:35 +0100)]
libpakfire: Parse dependency data from packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 14:34:26 +0000 (15:34 +0100)]
libpakfire: parser: Return NULL for empty values
This avoids checking for NULL and empty string further down the line
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 13:18:00 +0000 (14:18 +0100)]
libpakfire: archive: Parse more data
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 12:46:55 +0000 (13:46 +0100)]
libpakfire: Import package size
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 12:36:10 +0000 (13:36 +0100)]
libpakfire: Store groups in an array
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 12:15:58 +0000 (13:15 +0100)]
libpakfire: repo.h: Include missing stdio.h header
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 12:15:34 +0000 (13:15 +0100)]
libpakfire: tests: Add test to import a package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 12:02:04 +0000 (13:02 +0100)]
libpakfire: Fix release delimiter
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 11:54:41 +0000 (12:54 +0100)]
Fix whitespace
No functional changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 11:54:00 +0000 (12:54 +0100)]
libpakfire: Add function to import an archive to a package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 11:23:33 +0000 (12:23 +0100)]
libpakfire: Fix dumping empty packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 10:09:04 +0000 (11:09 +0100)]
_pakfire: Allow to automatically remove a repository when no longer needed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 8 Jun 2019 09:26:13 +0000 (10:26 +0100)]
pakfire: Pass on offline switch to Pakfire instance
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 14:52:50 +0000 (15:52 +0100)]
libpakfire: parser: Drop unused struct
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 14:23:42 +0000 (15:23 +0100)]
libpakfire: parser: Add module tests for the parser
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 14:22:15 +0000 (15:22 +0100)]
libpakfire: parser: Fix behaviour of append
We updated the old declaration but that could have been in
a parent parser. Therefore we get the value (where ever it
is from) and update it.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 14:21:36 +0000 (15:21 +0100)]
libpakfire: parser: Export pakfire_parser_merge
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 13:35:16 +0000 (14:35 +0100)]
libpakfire: parser: Skip expansion when possible
This will spare us going through a lot of code when there
is no variable in a string
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:51:28 +0000 (13:51 +0100)]
libpakfire: parser: Log time it takes for the parser to run
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:45:06 +0000 (13:45 +0100)]
libpakfire: parser: Drop unused cleanup function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:43:27 +0000 (13:43 +0100)]
libpakfire: parser: Refactor typing
This is a major rewrite and eliminates creating too many
sub-parsers.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:19:16 +0000 (13:19 +0100)]
libpakfire: parser: Refactor if/else handling
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:15:46 +0000 (13:15 +0100)]
libpakfire: parser: Move freeing parsers to helper functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:12:37 +0000 (13:12 +0100)]
libpakfire: parser: Disable running in debug mode (by default)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:12:00 +0000 (13:12 +0100)]
libpakfire: parser: Log in which parser we are searching
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:11:03 +0000 (13:11 +0100)]
libpakfire: parser: Do not automatically search recursively
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 12:08:41 +0000 (13:08 +0100)]
libpakfire: parser: Log parent parser
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 11:09:15 +0000 (12:09 +0100)]
libpakfire: parser: Drop dead code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:51:02 +0000 (05:51 +0100)]
libpakfire: parser: Put declarations into the large struct
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:42:26 +0000 (05:42 +0100)]
libpakfire: parser: Handle that namespace can be NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:41:56 +0000 (05:41 +0100)]
libpakfire: parser: End loop when all declarations are merged
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:41:17 +0000 (05:41 +0100)]
libpakfire: parser: Fix refcounting
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:21:27 +0000 (05:21 +0100)]
libpakfire: parser: Only merge into the top parser at the very end
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 04:20:41 +0000 (05:20 +0100)]
libpakfire: parser: Free all parts of declarations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 03:14:11 +0000 (04:14 +0100)]
libpakfire: parser: Drastically simplify the grammar
When opening a block, we jump straight to the top again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 03:04:34 +0000 (04:04 +0100)]
libpakfire: parser: Handle template in package blocks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 03:04:08 +0000 (04:04 +0100)]
libpakfire: parser: Remove obsolete comment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 02:46:27 +0000 (03:46 +0100)]
libpakfire: parser: NULL can be passed all the way to the top
This avoids merging empty parsers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 02:45:20 +0000 (03:45 +0100)]
libpakfire: parser: Tidy up top grammar
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 02:44:40 +0000 (03:44 +0100)]
libpakfire: parser: Fix when namespace is NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 Jun 2019 02:02:03 +0000 (03:02 +0100)]
libpakfire: parser: Use parser-internal namespacing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 05:25:27 +0000 (06:25 +0100)]
libpakfire: parser: Move namespaces into parsers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 05:24:07 +0000 (06:24 +0100)]
libpakfire: parser: Add missing const
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 05:12:02 +0000 (06:12 +0100)]
libpakfire: parser: Avoid passing empty parsers up from the bottom
Instead we pass NULL around and only create an empty parser
when we really need to.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 05:08:32 +0000 (06:08 +0100)]
libpakfire: parser: Handle else statements
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 04:44:24 +0000 (05:44 +0100)]
libpakfire: parser: Remove some duplicated code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 04:36:56 +0000 (05:36 +0100)]
libpakfire: parser: Handle package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 04:30:27 +0000 (05:30 +0100)]
libpakfire: parser: Handle scripts
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 04:27:08 +0000 (05:27 +0100)]
libpakfire: parser: Handle templates
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 04:26:36 +0000 (05:26 +0100)]
libpakfire: parser: Allow nested blocks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 03:45:58 +0000 (04:45 +0100)]
libpakfire: parser: Merge parsers from all rules
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 03:22:12 +0000 (04:22 +0100)]
libpakfire: parser: Dump state of parser after parse
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 03:01:38 +0000 (04:01 +0100)]
libpakfire: parser: Remove some accidentially committed code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 02:46:34 +0000 (03:46 +0100)]
libpakfire: parser: Leave parser untouched if a file could not be successfully parsed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 02:40:21 +0000 (03:40 +0100)]
libpakfire: parser: Move back to an LR parser
We do not need a GLR parser any more because our syntax is no
longer ambiguous and therefore we can have a smaller parser.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 02:39:17 +0000 (03:39 +0100)]
libpakfire: parser: Handle if statements
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 31 May 2019 02:36:10 +0000 (03:36 +0100)]
libpakfire: parser: Break search when namespace is empty
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 15:32:02 +0000 (16:32 +0100)]
libpakfire: parser: Rename pakfire_parser_add_declaration() to set
This is what the function really does and it now also
updates values correctly.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 15:24:13 +0000 (16:24 +0100)]
libpakfire: parser: Fix logging of replacements
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 15:21:31 +0000 (16:21 +0100)]
libpakfire: parser: Cleanup stripping namespaces
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 14:29:43 +0000 (15:29 +0100)]
libpakfire: parser: Move our own code to out own library
Only the untidy flex/bison stuff remains in its own library.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 14:26:27 +0000 (15:26 +0100)]
libpakfire: parser: Move logic into the C file
The bison file was getting very messy and the parser is large
enough to have its own object with ref counting.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 May 2019 09:11:02 +0000 (10:11 +0100)]
parser: Attempt to implement expanding variables
This seems to work (kind of), but there are so many bugs in the other
code that it is hard to tell.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 17 May 2019 17:30:09 +0000 (18:30 +0100)]
libpakfire: parser: Add compatibility for older pakfire files
This patch moves the keyword handling out of the parser and puts
it into the lexer where the "define" keyword is added where it is
needed.
That way, we have a clear definition of a clean syntax without
any shift/reduce or reduce/reduce errors, but remain compatible
to the current pakfire files.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>