This is an automated email from the git hooks/post-receive script. detiste-guest pushed a commit to branch master in repository game-data-packager.
commit 64ad91f6e65808ef87d6dff4b26fcc383806a865 Author: Alexandre Detiste <[email protected]> Date: Wed Dec 16 09:09:31 2015 +0100 accept that a package can be an expansion_for of a virtual package things like music packs for dubbed games are themselves not dubbed so a single <game>-music can be used with various <game>-{en|de|fr}-data --- game_data_packager/__init__.py | 9 +++++++-- game_data_packager/build.py | 10 ++++++---- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/game_data_packager/__init__.py b/game_data_packager/__init__.py index 48299cf..e6f59b4 100644 --- a/game_data_packager/__init__.py +++ b/game_data_packager/__init__.py @@ -1148,8 +1148,13 @@ class GameData(object): # check internal depedencies for demo_for_item in package.demo_for: assert demo_for_item in self.packages, demo_for_item - assert (not package.expansion_for or - package.expansion_for in self.packages), package.expansion_for + if package.expansion_for: + if package.expansion_for not in self.packages: + for p in self.packages.values(): + if package.expansion_for == p.provides: + break + else: + raise Exception('virtual pkg %s not found' % package.expansion_for) assert (not package.better_version or package.better_version in self.packages), package.better_version diff --git a/game_data_packager/build.py b/game_data_packager/build.py index 728983d..a3f5521 100644 --- a/game_data_packager/build.py +++ b/game_data_packager/build.py @@ -1738,8 +1738,9 @@ class PackagingTask(object): # dependencies derived from *other* package's data for other_package in self.game.packages.values(): - if other_package.expansion_for == package.name: - dep['suggests'].add(other_package.name) + if (other_package.expansion_for and + other_package.expansion_for in (package.name, package.provides)): + dep['suggests'].add(other_package.name) if other_package.mutually_exclusive: if other_package.better_version == package.name: dep['replaces'].add(other_package.name) @@ -1788,7 +1789,7 @@ class PackagingTask(object): if package.section == 'doc': long_desc += ' Documentation: ' + longname + '\n' - elif package.expansion_for: + elif package.expansion_for and package.expansion_for in self.game.packages: game_name = (self.game.packages[package.expansion_for].longname or self.game.longname) long_desc += ' Game: ' + game_name + '\n' @@ -2284,7 +2285,8 @@ class PackagingTask(object): for package in set(possible): if (package.expansion_for - and self.game.packages[package.expansion_for] not in possible + and (package.expansion_for not in self.game.packages + or self.game.packages[package.expansion_for] not in possible) and not PACKAGE_CACHE.is_installed(package.expansion_for)): for fullgame in possible: if fullgame.type == 'full': -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git _______________________________________________ Pkg-games-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

