Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
print_stderr(color_line(_("Version mismatch:"), 11))
print_stderr(
_("{what} depends on: '{dep}'\n found in '{location}': '{version}'").format(
what=bold_line(exc.who_depends),
dep=exc.dependency_line,
location=exc.location,
version=exc.version_found,
)
)
raise SysExit(131)
else:
self.aur_deps_relations = self.install_info.aur_deps_relations
if self.args.repo and self.not_found_repo_pkgs_names:
print_not_found_packages(self.not_found_repo_pkgs_names, repo=True)
raise SysExit(6)
if self.args.needed:
# check if there are really any new packages need to be installed
need_refetch_info = False
for install_info in (
self.install_info.repo_packages_install_info +
self.install_info.new_repo_deps_install_info +
self.install_info.thirdparty_repo_packages_install_info +
self.install_info.aur_updates_install_info
):
if (
# devel packages will be checked later
# after retrieving their sources
is_devel_pkg(install_info.name) and
(install_info in self.install_info.aur_updates_install_info)
) or (
if not retry_interactive_command(
sudo(
get_pacman_command() + [
'--sync',
] + reconstruct_args(self.args, ignore_args=[
'sync',
'ignore',
'refresh',
]) + self.install_package_names + extra_args
),
pikspect=True,
conflicts=self.resolved_conflicts,
):
if not ask_to_continue(default_yes=False): # pragma: no cover
self._revert_transaction(PackageSource.REPO)
raise SysExit(125)
PackageDB.discard_local_cache()
self._save_transaction(
PackageSource.REPO, installed=self.install_package_names
)
def get_aur_pkgs_info(self, aur_packages_names: List[str]) -> None:
local_pkgs = PackageDB.get_local_dict()
aur_pkg_list, not_found_aur_pkgs = find_aur_packages(aur_packages_names)
if not_found_aur_pkgs:
print_not_found_packages(sorted(not_found_aur_pkgs))
raise SysExit(6)
aur_pkgs = {
aur_pkg.name: aur_pkg
for aur_pkg in aur_pkg_list
}
aur_updates_install_info_by_name: Dict[str, InstallInfo] = {}
if self.args.sysupgrade:
aur_updates_list, not_found_aur_pkgs = find_aur_updates()
self.exclude_ignored_packages(not_found_aur_pkgs, print_packages=False)
if not_found_aur_pkgs:
print_not_found_packages(sorted(not_found_aur_pkgs))
aur_updates_install_info_by_name = {
upd.name: upd for upd in aur_updates_list
}
for pkg_name, aur_pkg in aur_pkgs.items():
if pkg_name in aur_updates_install_info_by_name:
continue
def read_bytes_from_url(url: str) -> bytes:
req = request.Request(url)
try:
response = request.urlopen(req)
except URLError as exc:
print_error('urllib: ' + str(exc.reason))
if ask_to_continue(_('Do you want to retry?')):
return read_bytes_from_url(url)
raise SysExit(102)
result_bytes = response.read()
return result_bytes
self.install_package_names.remove(pkg_name)
try:
self.install_info = InstallInfoFetcher(
install_package_names=self.install_package_names,
not_found_repo_pkgs_names=self.not_found_repo_pkgs_names,
pkgbuilds_paths=self.pkgbuilds_paths,
manually_excluded_packages_names=self.manually_excluded_packages_names,
)
except PackagesNotFoundInAUR as exc:
if exc.wanted_by:
print_error(bold_line(
_("Dependencies missing for {}").format(', '.join(exc.wanted_by))
))
print_not_found_packages(exc.packages)
raise SysExit(131)
except DependencyVersionMismatch as exc:
print_stderr(color_line(_("Version mismatch:"), 11))
print_stderr(
_("{what} depends on: '{dep}'\n found in '{location}': '{version}'").format(
what=bold_line(exc.who_depends),
dep=exc.dependency_line,
location=exc.location,
version=exc.version_found,
)
)
raise SysExit(131)
else:
self.aur_deps_relations = self.install_info.aur_deps_relations
if self.args.repo and self.not_found_repo_pkgs_names:
print_not_found_packages(self.not_found_repo_pkgs_names, repo=True)
)
))
pkgver_result = joined_spawn(
isolate_root_cmd(
MakePkgCommand.get() + [
'--nobuild', '--noprepare', '--nocheck', '--nodeps'
],
cwd=self.build_dir
),
cwd=self.build_dir,
)
if pkgver_result.returncode != 0:
print_error(_("failed to retrieve latest dev sources:"))
print_stderr(pkgver_result.stdout_text)
if not ask_to_continue(default_yes=False):
raise SysExit(125)
SrcInfo(self.build_dir).regenerate()
self._source_repo_updated = True
request_aur = pool.apply_async(
package_search_thread_aur, (search_query,)
) if not REPO_ONLY else None
pool.close()
result_local = request_local.get()
result_repo: List[List[pyalpm.Package]] = []
for request_repo in requests_repo:
pkgs_found = request_repo.get()
if pkgs_found:
result_repo.append(pkgs_found)
try:
result_aur = request_aur.get() if request_aur else None
except AURError as exc:
print_stderr('AUR returned error: {}'.format(exc))
raise SysExit(121)
pool.join()
if not args.quiet:
sys.stderr.write('\n')
repo_result = (
join_search_results(result_repo)
) if result_repo and not AUR_ONLY else []
aur_result = (
join_search_results(list(result_aur.values()))
) if result_aur and not REPO_ONLY else []
return print_package_search_results(
repo_packages=repo_result,
aur_packages=aur_result,
local_pkgs_versions=result_local,
def retry_interactive_command_or_exit(cmd_args: List[str], **kwargs) -> None:
if not retry_interactive_command(cmd_args, **kwargs):
if not ask_to_continue(default_yes=False):
raise SysExit(125)