[game-data-packager] 01/02: implement: size_and_md5 shortcut

Alexandre Detiste detiste-guest at moszumanska.debian.org
Mon Jun 15 12:49:49 UTC 2015


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 e067cc79ddd4cab9506ea2a307ddb18944b50384
Author: Alexandre Detiste <alexandre.detiste at gmail.com>
Date:   Mon Jun 15 14:45:59 2015 +0200

    implement: size_and_md5 shortcut
    
    makes yaml editing faster & less error-prone
---
 doc/tags.txt                        |  2 ++
 game_data_packager/__init__.py      | 11 +++++++++++
 game_data_packager/make_template.py |  7 ++-----
 3 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/doc/tags.txt b/doc/tags.txt
index f3ff1a8..a48cc1d 100644
--- a/doc/tags.txt
+++ b/doc/tags.txt
@@ -85,6 +85,8 @@ files:
       unpack: list
     provides: list
 
+size_and_md5: list
+
 cksums: list
 
 md5sums: list
diff --git a/game_data_packager/__init__.py b/game_data_packager/__init__.py
index 1f27c0d..f1d3736 100644
--- a/game_data_packager/__init__.py
+++ b/game_data_packager/__init__.py
@@ -645,6 +645,17 @@ class GameData(object):
                 f = self._ensure_file(filename)
                 f.size = int(size)
 
+        if 'size_and_md5' in self.data:
+            for line in self.data['size_and_md5'].splitlines():
+                stripped = line.strip()
+                if stripped == '' or stripped.startswith('#'):
+                    continue
+
+                size, md5, filename = line.split(None, 3)
+                f = self._ensure_file(filename)
+                f.size = int(size)
+                f.md5 = md5
+
         for alg in ('md5', 'sha1', 'sha256'):
             if alg + 'sums' in self.data:
                 for line in self.data[alg + 'sums'].splitlines():
diff --git a/game_data_packager/make_template.py b/game_data_packager/make_template.py
index cadb768..f85d142 100644
--- a/game_data_packager/make_template.py
+++ b/game_data_packager/make_template.py
@@ -374,12 +374,9 @@ class GameData(object):
         print_order = sorted(self.install) + sorted(self.optional) + sorted(self.license)
         print_order += sorted(set(self.ck.keys()) - set(print_order))
 
-        print('\ncksums: |')
+        print('\nsize_and_md5: |')
         for filename in print_order:
-            print('  _ %-9s %s' % (self.ck[filename], filename))
-        print('\nmd5sums: |')
-        for filename in print_order:
-            print('  %s  %s' % (self.md5[filename], filename))
+            print('  %-9s %s %s' % (self.ck[filename], self.md5[filename], filename))
         print('\nsha1sums: |')
         for filename in print_order:
             print('  %s  %s' % (self.sha1[filename], filename))

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git



More information about the Pkg-games-commits mailing list