def read_local_settings(self):
        local_settings = qibuild.config.LocalSettings()
        tree = qisys.qixml.read(self.build_worktree.qibuild_xml)
        local_settings.parse(tree)
        self.build_prefix = local_settings.build.prefix
        if self.build_prefix and not os.path.isabs(self.build_prefix):
            self.build_prefix = os.path.join(self.build_worktree.root, self.build_prefix)
            self.build_prefix = qisys.sh.to_native_path(self.build_prefix)

        # Legacy: in .qi/qibuild.xml
        default_config = local_settings.defaults.config
        if not default_config:
            # New location: in ~/.config/qi/qibuild.xml
            self.qibuild_cfg.read()
            default_config = self.qibuild_cfg.get_default_config_for_worktree(
                                    self.build_worktree.root)
        if default_config:
            matching_config = self.qibuild_cfg.configs.get(default_config)
            if not matching_config:
                mess = """ \
Incorrect config detected for worktree in {build_worktree.root}
Default config is {default_config} but this does not match any
config in ~/.config/qi/qibuild.xml
"""
                mess = mess.format(build_worktree=self.build_worktree,
                                default_config=default_config)
                raise qisys.error.Error(mess)
            self._default_config = matching_config.name
            self.set_active_config(matching_config.name)
Check boundaries in the petersen graph
dataset/ETHPy150Open aldebaran/qibuild/python/qibuild/build_config.py/CMakeBuildConfig.read_local_settings--crossover with--dataset/ETHPy150Open gkno/gkno_launcher/src/networkx/algorithms/tests/test_boundary.py/TestBoundary.test_petersen