diff options
author | André Erdmann <dywi@mailerd.de> | 2013-08-02 12:17:52 +0200 |
---|---|---|
committer | André Erdmann <dywi@mailerd.de> | 2013-08-02 12:17:52 +0200 |
commit | 43ab1d2328ee2968dc0d5076f33629f859e12718 (patch) | |
tree | a32a03e2601c5adce1d9ccd0a3ef2b4e599d2dd9 /roverlay/packageinfo.py | |
parent | files/hooks/git-commit-overlay: don't exit (diff) | |
download | R_overlay-43ab1d2328ee2968dc0d5076f33629f859e12718.tar.gz R_overlay-43ab1d2328ee2968dc0d5076f33629f859e12718.tar.bz2 R_overlay-43ab1d2328ee2968dc0d5076f33629f859e12718.zip |
support suffixes $PV when importing ebuilds
Selfdep validation may fail/ignore when dealing with import ebuilds with a
version suffix ("_pre..." etc.).
Diffstat (limited to 'roverlay/packageinfo.py')
-rw-r--r-- | roverlay/packageinfo.py | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/roverlay/packageinfo.py b/roverlay/packageinfo.py index 752f996..704807e 100644 --- a/roverlay/packageinfo.py +++ b/roverlay/packageinfo.py @@ -805,17 +805,21 @@ class PackageInfo ( object ): pv_str, DONT_CARE, pr_str = pvr.partition ( '-r' ) pv, DONT_CARE, pv_suffix = pv_str.partition ( '_' ) + # non-digit chars in pv are not supported + pv_list = [ int(z) for z in pv.split ( '.' ) ] + if pv_suffix: # not supported - raise NotImplementedError ( - "version suffix {!r} cannot be preserved for $PVR {!r}".format ( - pv_suffix, pvr + self._info ['version'] = ( + roverlay.versiontuple.SuffixedIntVersionTuple ( + pv_list, pv_suffix ) ) - # non-digit chars in pv are unsupported, too - self._info ['version'] = roverlay.versiontuple.IntVersionTuple ( - int ( z ) for z in pv.split ( '.' ) - ) + else: + self._info ['version'] = ( + roverlay.versiontuple.IntVersionTuple ( pv_list ) + ) + self._info ['rev'] = int ( pr_str ) if pr_str else 0 self._info ['ebuild_verstr'] = pvr |