def __init__(self, dbs, per_repo_strategy, global_strategy=None, depset_reorder_strategy=None, process_built_depends=False, drop_cycles=False, debug=False, debug_handle=None): if debug_handle is None: debug_handle = sys.stdout self.debug_handler = debug_handle self._dprint = partial(dprint, debug_handle) if not isinstance(dbs, (list, tuple)): dbs = [dbs] if global_strategy is None: global_strategy = self.default_global_strategy if depset_reorder_strategy is None: depset_reorder_strategy = self.default_depset_reorder_strategy self.depset_reorder = depset_reorder_strategy self.per_repo_strategy = per_repo_strategy self.total_ordering_strategy = global_strategy self.all_raw_dbs = [ misc.caching_repo(x, self.per_repo_strategy) for x in dbs ] self.all_dbs = global_strategy(self.all_raw_dbs) self.default_dbs = self.all_dbs self.state = state.plan_state() vdb_state_filter_restrict = MutableContainmentRestriction( self.state.vdb_filter) self.livefs_dbs = multiplex.tree(*[ visibility.filterTree(x, vdb_state_filter_restrict) for x in self.all_raw_dbs if x.livefs ]) self.insoluble = set() self.vdb_preloaded = False self._ensure_livefs_is_loaded = \ self._ensure_livefs_is_loaded_nonpreloaded self.drop_cycles = drop_cycles self.skipdeps = () self.process_built_depends = process_built_depends self._debugging = debug if debug: self._rec_add_atom = partial(self._stack_debugging_rec_add_atom, self._rec_add_atom) self._debugging_depth = 0 self._debugging_drop_cycles = False
def __init__(self, dbs, per_repo_strategy, global_strategy=None, depset_reorder_strategy=None, process_built_depends=False, drop_cycles=False, debug=False, debug_handle=None): if debug: if debug_handle is None: debug_handle = sys.stdout self._dprint = partial(dprint, debug_handle) else: # don't run debug func when debugging is disabled self._dprint = lambda *args, **kwargs: None if not isinstance(dbs, (util.RepositoryGroup, list, tuple)): dbs = [dbs] if global_strategy is None: global_strategy = self.default_global_strategy if depset_reorder_strategy is None: depset_reorder_strategy = self.default_depset_reorder_strategy self.depset_reorder = depset_reorder_strategy self.all_raw_dbs = [ misc.caching_repo(x, per_repo_strategy) for x in dbs ] self.all_dbs = global_strategy(self.all_raw_dbs) self.default_dbs = self.all_dbs self.state = state.plan_state() vdb_state_filter_restrict = MutableContainmentRestriction( self.state.vdb_filter) self.livefs_dbs = multiplex.tree(*[ filtered.tree(x, vdb_state_filter_restrict) for x in self.all_raw_dbs if x.livefs ]) self.insoluble = set() self.vdb_preloaded = False self._ensure_livefs_is_loaded = \ self._ensure_livefs_is_loaded_nonpreloaded self.drop_cycles = drop_cycles self.process_built_depends = process_built_depends self._debugging = debug if debug: self._rec_add_atom = partial(self._stack_debugging_rec_add_atom, self._rec_add_atom) self._debugging_depth = 0 self._debugging_drop_cycles = False
def __init__(self, dbs, per_repo_strategy, global_strategy=None, depset_reorder_strategy=None, process_built_depends=False, drop_cycles=False, debug=False, debug_handle=None): if debug_handle is None: debug_handle = sys.stdout self.debug_handler = debug_handle self._dprint = partial(dprint, debug_handle) if not isinstance(dbs, (list, tuple)): dbs = [dbs] if global_strategy is None: global_strategy = self.default_global_strategy if depset_reorder_strategy is None: depset_reorder_strategy = self.default_depset_reorder_strategy self.depset_reorder = depset_reorder_strategy self.per_repo_strategy = per_repo_strategy self.total_ordering_strategy = global_strategy self.all_raw_dbs = [misc.caching_repo(x, self.per_repo_strategy) for x in dbs] self.all_dbs = global_strategy(self, self.all_raw_dbs) self.default_dbs = self.all_dbs self.state = state.plan_state() vdb_state_filter_restrict = MutableContainmentRestriction(self.state.vdb_filter) self.livefs_dbs = multiplex.tree( *[visibility.filterTree(x, vdb_state_filter_restrict) for x in self.all_raw_dbs if x.livefs]) self.insoluble = set() self.vdb_preloaded = False self._ensure_livefs_is_loaded = \ self._ensure_livefs_is_loaded_nonpreloaded self.drop_cycles = drop_cycles self.process_built_depends = process_built_depends self._debugging = debug if debug: self._rec_add_atom = partial(self._stack_debugging_rec_add_atom, self._rec_add_atom) self._debugging_depth = 0 self._debugging_drop_cycles = False