* [gentoo-commits] proj/R_overlay:master commit in: roverlay/db/, roverlay/
@ 2013-08-30 14:49 André Erdmann
0 siblings, 0 replies; only message in thread
From: André Erdmann @ 2013-08-30 14:49 UTC (permalink / raw
To: gentoo-commits
commit: ad22bc5fcd4df4805a8cc4fd7a975e9c021fae5d
Author: André Erdmann <dywi <AT> mailerd <DOT> de>
AuthorDate: Fri Aug 30 14:43:17 2013 +0000
Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
CommitDate: Fri Aug 30 14:43:17 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=ad22bc5f
packageinfo, get_distmap_value(): include distfile
+ support no_digest keyword arg which sets digest=None
+ get_distmap_value()'s code moved to get_distmap_item()
---
roverlay/db/distmap.py | 4 +---
roverlay/packageinfo.py | 34 ++++++++++++++++++++++------------
2 files changed, 23 insertions(+), 15 deletions(-)
diff --git a/roverlay/db/distmap.py b/roverlay/db/distmap.py
index cddcb5b..0ae294a 100644
--- a/roverlay/db/distmap.py
+++ b/roverlay/db/distmap.py
@@ -184,9 +184,7 @@ class _DistMapBase ( object ):
if isinstance ( value, DistMapInfo ):
self.add_entry ( key, value )
elif hasattr ( value, 'get_distmap_value' ):
- self.add_entry (
- key, DistMapInfo ( key, *value.get_distmap_value() )
- )
+ self.add_entry ( key, DistMapInfo.from_package_info ( key ) )
else:
self.add_entry ( key, DistMapInfo ( key, *value ) )
# --- end of __setitem__ (...) ---
diff --git a/roverlay/packageinfo.py b/roverlay/packageinfo.py
index 193fe18..43fe4f3 100644
--- a/roverlay/packageinfo.py
+++ b/roverlay/packageinfo.py
@@ -532,9 +532,26 @@ class PackageInfo ( roverlay.util.objects.Referenceable ):
return self._info ['desc_data']
# --- end of get_desc_data (...) ---
- def get_distmap_item ( self ):
+ def get_distmap_item ( self, allow_digest_create=False, no_digest=False ):
"""Returns a 2-tuple ( key, info ) for the distmap."""
- return ( self.get_distmap_key(), self.get_distmap_value() )
+ if no_digest:
+ digest = None
+ elif allow_digest_create:
+ digest = self.make_distmap_hash()
+ else:
+ digest = self.hashdict [self.DISTMAP_DIGEST_TYPE]
+
+ distfile = self.get ( "package_src_destpath" )
+ repo = self.get ( "origin" )
+
+ return (
+ distfile, (
+ distfile,
+ repo.name,
+ os.path.relpath ( self.get ( "package_file" ), repo.distdir ),
+ digest
+ )
+ )
# --- end of get_distmap_item (...) ---
def get_distmap_key ( self ):
@@ -542,21 +559,14 @@ class PackageInfo ( roverlay.util.objects.Referenceable ):
return self.get ( "package_src_destpath" )
# --- end of get_distmap_key (...) ---
- def get_distmap_value ( self, allow_digest_create=False ):
+ def get_distmap_value ( self, allow_digest_create=False, no_digest=False ):
"""Returns a data tuple for creating DistMapInfo instances.
arguments:
* allow_digest_create --
+ * no_digest -- use None as digest
"""
- repo = self.get ( "origin" )
- return (
- repo.name,
- os.path.relpath ( self.get ( "package_file" ), repo.distdir ),
- (
- self.make_distmap_hash() if allow_digest_create
- else self.hashdict [self.DISTMAP_DIGEST_TYPE]
- )
- )
+ return self.get_distmap_item ( allow_digest_create, no_digest ) [1]
# --- end of get_distmap_value (...) ---
def make_distmap_hash ( self ):
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2013-08-30 14:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-30 14:49 [gentoo-commits] proj/R_overlay:master commit in: roverlay/db/, roverlay/ André Erdmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox