Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/db/, roverlay/
Date: Fri, 30 Aug 2013 14:49:48
Message-Id: 1377873797.ad22bc5fcd4df4805a8cc4fd7a975e9c021fae5d.dywi@gentoo
1 commit: ad22bc5fcd4df4805a8cc4fd7a975e9c021fae5d
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Fri Aug 30 14:43:17 2013 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Fri Aug 30 14:43:17 2013 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=ad22bc5f
7
8 packageinfo, get_distmap_value(): include distfile
9
10 + support no_digest keyword arg which sets digest=None
11 + get_distmap_value()'s code moved to get_distmap_item()
12
13 ---
14 roverlay/db/distmap.py | 4 +---
15 roverlay/packageinfo.py | 34 ++++++++++++++++++++++------------
16 2 files changed, 23 insertions(+), 15 deletions(-)
17
18 diff --git a/roverlay/db/distmap.py b/roverlay/db/distmap.py
19 index cddcb5b..0ae294a 100644
20 --- a/roverlay/db/distmap.py
21 +++ b/roverlay/db/distmap.py
22 @@ -184,9 +184,7 @@ class _DistMapBase ( object ):
23 if isinstance ( value, DistMapInfo ):
24 self.add_entry ( key, value )
25 elif hasattr ( value, 'get_distmap_value' ):
26 - self.add_entry (
27 - key, DistMapInfo ( key, *value.get_distmap_value() )
28 - )
29 + self.add_entry ( key, DistMapInfo.from_package_info ( key ) )
30 else:
31 self.add_entry ( key, DistMapInfo ( key, *value ) )
32 # --- end of __setitem__ (...) ---
33
34 diff --git a/roverlay/packageinfo.py b/roverlay/packageinfo.py
35 index 193fe18..43fe4f3 100644
36 --- a/roverlay/packageinfo.py
37 +++ b/roverlay/packageinfo.py
38 @@ -532,9 +532,26 @@ class PackageInfo ( roverlay.util.objects.Referenceable ):
39 return self._info ['desc_data']
40 # --- end of get_desc_data (...) ---
41
42 - def get_distmap_item ( self ):
43 + def get_distmap_item ( self, allow_digest_create=False, no_digest=False ):
44 """Returns a 2-tuple ( key, info ) for the distmap."""
45 - return ( self.get_distmap_key(), self.get_distmap_value() )
46 + if no_digest:
47 + digest = None
48 + elif allow_digest_create:
49 + digest = self.make_distmap_hash()
50 + else:
51 + digest = self.hashdict [self.DISTMAP_DIGEST_TYPE]
52 +
53 + distfile = self.get ( "package_src_destpath" )
54 + repo = self.get ( "origin" )
55 +
56 + return (
57 + distfile, (
58 + distfile,
59 + repo.name,
60 + os.path.relpath ( self.get ( "package_file" ), repo.distdir ),
61 + digest
62 + )
63 + )
64 # --- end of get_distmap_item (...) ---
65
66 def get_distmap_key ( self ):
67 @@ -542,21 +559,14 @@ class PackageInfo ( roverlay.util.objects.Referenceable ):
68 return self.get ( "package_src_destpath" )
69 # --- end of get_distmap_key (...) ---
70
71 - def get_distmap_value ( self, allow_digest_create=False ):
72 + def get_distmap_value ( self, allow_digest_create=False, no_digest=False ):
73 """Returns a data tuple for creating DistMapInfo instances.
74
75 arguments:
76 * allow_digest_create --
77 + * no_digest -- use None as digest
78 """
79 - repo = self.get ( "origin" )
80 - return (
81 - repo.name,
82 - os.path.relpath ( self.get ( "package_file" ), repo.distdir ),
83 - (
84 - self.make_distmap_hash() if allow_digest_create
85 - else self.hashdict [self.DISTMAP_DIGEST_TYPE]
86 - )
87 - )
88 + return self.get_distmap_item ( allow_digest_create, no_digest ) [1]
89 # --- end of get_distmap_value (...) ---
90
91 def make_distmap_hash ( self ):