]>
git.ipfire.org Git - pakfire.git/log
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>
Michael Tremer [Tue, 14 May 2019 07:35:27 +0000 (08:35 +0100)]
Makefile: Enable makefile test again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 12 May 2019 13:01:35 +0000 (14:01 +0100)]
builder: Download transaction and run it
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 12 May 2019 12:04:09 +0000 (13:04 +0100)]
libpakfire: Support groups
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 11 May 2019 16:34:33 +0000 (17:34 +0100)]
libpakfire: Refactor group handling
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:50:09 +0000 (23:50 +0100)]
builder: Remove old architecture classes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:49:41 +0000 (23:49 +0100)]
http: Handle Bad Request errors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:39:57 +0000 (23:39 +0100)]
tests: Disable makefile test because this file cannot be parsed, yet
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:22:29 +0000 (23:22 +0100)]
libpakfire: parser: Use end rule for closing blocks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:20:51 +0000 (23:20 +0100)]
libpakfire: parser: Drop thing rule
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Apr 2019 22:19:41 +0000 (23:19 +0100)]
libpakfire: parser: Allow top rule to be empty
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 15 Mar 2019 05:21:22 +0000 (05:21 +0000)]
libpakfire: parser: Make empty lines an empty string and not NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 15 Mar 2019 05:16:21 +0000 (05:16 +0000)]
libpakfire: parser: Add keyword rule which allows keywords to be words
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 15 Mar 2019 04:46:57 +0000 (04:46 +0000)]
Revert "libpakfire: parser: Make one rule for DEFINE"
This reverts commit
4d48274edd83f8e6f65f0528744d3b7671f9aae7 .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 15 Mar 2019 04:43:41 +0000 (04:43 +0000)]
libpakfire: parser: Rename T_NEWLINE to T_EOL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>