aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Erdmann <dywi@mailerd.de>2012-07-12 19:48:59 +0200
committerAndré Erdmann <dywi@mailerd.de>2012-07-12 20:19:55 +0200
commit7ebbaf11c479641eb8cc67267266c1d1862ca21d (patch)
treef3c790c3d7b9154bf96bc4e9c07f27692696f0ce /roverlay/recipe/easyresolver.py
parentunused functions commented out (diff)
downloadR_overlay-7ebbaf11c479641eb8cc67267266c1d1862ca21d.tar.gz
R_overlay-7ebbaf11c479641eb8cc67267266c1d1862ca21d.tar.bz2
R_overlay-7ebbaf11c479641eb8cc67267266c1d1862ca21d.zip
introducing dependency types
The dependency resolver can now differentiate between dependency types The actual deptype is a bit field that sets flags like 'is mandatory', 'is an external dep', 'try other dep types, too'. Functionality for this has been added to most modules/classes, particularly to EbuildJobChannel and ebuild/depres, but not to the rule reader, which means that there's currently no way to _use_ the dep types! Also added an ErrorQueue implementation that saves some "if <has err_queue>" checks. It's also able to unblock waiting queues, which helps to end threads when an exception has been raised.
Diffstat (limited to 'roverlay/recipe/easyresolver.py')
-rw-r--r--roverlay/recipe/easyresolver.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/roverlay/recipe/easyresolver.py b/roverlay/recipe/easyresolver.py
index 749396b..1ed75fa 100644
--- a/roverlay/recipe/easyresolver.py
+++ b/roverlay/recipe/easyresolver.py
@@ -1,19 +1,19 @@
from roverlay import config
-from roverlay.depres import listeners
+from roverlay.depres import listeners, deptype
from roverlay.depres.depresolver import DependencyResolver
from roverlay.depres.simpledeprule import SimpleDependencyRulePool
-def setup():
- res = DependencyResolver()
+def setup ( err_queue ):
+ res = DependencyResolver ( err_queue=err_queue )
# log everything
res.set_logmask ( -1 )
srule_files = config.get ( 'DEPRES.simple_rules.files', None )
if srule_files:
- srule_pool = SimpleDependencyRulePool ( 'default pool', priority=45 )
+ srule_pool = SimpleDependencyRulePool ( 'default pool', priority=45, deptype_mask=deptype.RESOLVE_ALL, )
srule_pool.get_reader().read ( srule_files )
res.add_rulepool ( srule_pool )