diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-02-23 03:28:27 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-02-23 03:28:27 +0000 |
commit | 36ee257b79158f0636e9eb73d178fcec40a0a697 (patch) | |
tree | 72cb3a18517281777c50a88b1a5aae6251cb00ac /pym | |
parent | bf9c353bd99cebe55b4b06c3630faf6477372d39 (diff) | |
download | portage-36ee257b79158f0636e9eb73d178fcec40a0a697.tar.gz portage-36ee257b79158f0636e9eb73d178fcec40a0a697.tar.bz2 portage-36ee257b79158f0636e9eb73d178fcec40a0a697.zip |
Make the first two positional arguments of digestgen() into keyword arguments
since the first one isn't really needed (when this code is in stable we can
start showing a deprecation warning when the redundant argument is used).
svn path=/main/trunk/; revision=15438
Diffstat (limited to 'pym')
-rw-r--r-- | pym/_emerge/Scheduler.py | 2 | ||||
-rw-r--r-- | pym/portage/__init__.py | 24 |
2 files changed, 19 insertions, 7 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index c760c395e..e508e233f 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -591,7 +591,7 @@ class Scheduler(PollScheduler): if ebuild_path is None: raise AssertionError("ebuild not found for '%s'" % x.cpv) pkgsettings['O'] = os.path.dirname(ebuild_path) - if not portage.digestgen([], pkgsettings, myportdb=portdb): + if not portage.digestgen(mysettings=pkgsettings, myportdb=portdb): writemsg_level( "!!! Unable to generate manifest for '%s'.\n" \ % x.cpv, level=logging.ERROR, noiselevel=-1) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 1b8427c34..b28658f57 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -1376,10 +1376,23 @@ def spawn(mystring, mysettings, debug=0, free=0, droppriv=0, sesandbox=0, fakero return retval >> 8 return retval -def digestgen(myarchives, mysettings, overwrite=None, manifestonly=None, myportdb=None): +def digestgen(myarchives=None, mysettings=None, + overwrite=None, manifestonly=None, myportdb=None): """ Generates a digest file if missing. Fetches files if necessary. + NOTE: myarchives and mysettings used to be positional arguments, + so their order must be preserved for backward compatibility. + @param mysettings: the ebuild config (mysettings["O"] must correspond + to the ebuild's parent directory) + @type mysettings: config + @param myportdb: a portdbapi instance + @type myportdb: portdbapi + @rtype: int + @returns: 1 on success and 0 on failure """ + if mysettings is None: + raise TypeError("portage.digestgen(): missing" + \ + " required 'mysettings' parameter") if myportdb is None: warnings.warn("portage.digestgen() called without 'myportdb' parameter", DeprecationWarning, stacklevel=2) @@ -1500,8 +1513,7 @@ def digestgen(myarchives, mysettings, overwrite=None, manifestonly=None, myportd return 0 writemsg_stdout(_(">>> Creating Manifest for %s\n") % mysettings["O"]) try: - mf.create(requiredDistfiles=myarchives, - assumeDistHashesSometimes=True, + mf.create(assumeDistHashesSometimes=True, assumeDistHashesAlways=( "assume-digests" in mysettings.features)) except portage.exception.FileNotFound as e: @@ -3360,15 +3372,15 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, try: if mydo == "manifest": - return not digestgen(aalist, mysettings, myportdb=mydbapi) + return not digestgen(mysettings=mysettings, myportdb=mydbapi) elif mydo == "digest": - return not digestgen(aalist, mysettings, myportdb=mydbapi) + return not digestgen(mysettings=mysettings, myportdb=mydbapi) elif mydo != 'fetch' and not emerge_skip_digest and \ "digest" in mysettings.features: # Don't do this when called by emerge or when called just # for fetch (especially parallel-fetch) since it's not needed # and it can interfere with parallel tasks. - digestgen(aalist, mysettings, myportdb=mydbapi) + digestgen(mysettings=mysettings, myportdb=mydbapi) except portage.exception.PermissionDenied as e: writemsg(_("!!! Permission Denied: %s\n") % (e,), noiselevel=-1) if mydo in ("digest", "manifest"): |