pmbootstrap/pmb/parse
Oliver Smith af4b817c21
Skip virtual packages when parsing APKINDEX (#1278)
Since PR #1247 we are using the virtual package `.pmbootstrap` to mark
packages as not explcitly installed. In case `pmbootstrap` doesn't
finish the installation because of a bug, the `.pmbootstrap` virtual
package may not get uninstalled.

As virtual packages don't have the "timestamp" attribute set in the
package database (which indicates when the package was built), the
APKINDEX parser fails to parse them.

Changes:
* pmb.parse.apkindex.parse_next_block(): don't require the "timestamp"
  attribute to be set (but the arch attribute instead, which is always
  present)
* pmb.parse.apkindex.parse(): when a block does not have a `timestamp`
  attribute, skip it, because it must be a virtual package.
* add test cases for both functions with a package database that
  contains a virtual package.
2018-03-10 13:15:30 +00:00
..
__init__.py Make proprietary drivers optional (1/2): pmbootstrap changes (#1254) 2018-02-24 21:49:10 +00:00
_apkbuild.py Make proprietary drivers optional (1/2): pmbootstrap changes (#1254) 2018-02-24 21:49:10 +00:00
apkindex.py Skip virtual packages when parsing APKINDEX (#1278) 2018-03-10 13:15:30 +00:00
arch.py Enable running pmbootstrap on x86 architecture (#1155) 2018-01-24 00:56:11 +00:00
arguments.py pmbootstrap zap -m: delete outdated packages too (#1306) 2018-03-10 12:08:02 +00:00
binfmt_info.py Happy new year! (update copyright to 2018) 2018-01-04 04:53:35 +01:00
bootimg.py Fix building packages by provides name (#1303) 2018-03-08 21:30:55 +00:00
depends.py Index parser: support multiple package providers (#1202) 2018-02-20 19:52:28 +00:00
deviceinfo.py deviceinfo: remove external_disk_install and external_disk, use external_storage instead (#1301) 2018-03-07 22:35:02 +00:00
kconfig.py Check kernel config options based on the architecture (#1233) 2018-02-17 13:37:35 +00:00
version.py version.py: fix validation of 6.0_0002 (#1160) 2018-01-25 18:23:55 +00:00