From 3fdc8c189f0c7dec86aae9f726719985c6618856 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 16 Apr 2019 11:26:37 +0200 Subject: [PATCH] Python generators: console_scripts entry points require setuptools Fixes https://github.com/rpm-software-management/rpm/issues/664 --- scripts/pythondistdeps.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/pythondistdeps.py b/scripts/pythondistdeps.py index ac1cd62299..8d8bbfc19f 100755 --- a/scripts/pythondistdeps.py +++ b/scripts/pythondistdeps.py @@ -102,7 +102,7 @@ lower.endswith('.egg-info') or \ lower.endswith('.dist-info'): # This import is very slow, so only do it if needed - from pkg_resources import Distribution, FileMetadata, PathMetadata + from pkg_resources import Distribution, FileMetadata, PathMetadata, Requirement dist_name = basename(f) if isdir(f): path_item = dirname(f) @@ -174,6 +174,11 @@ if dep in deps: depsextras.remove(dep) deps = depsextras + # console_scripts/gui_scripts entry points need pkg_resources from setuptools + if (dist.get_entry_map('console_scripts') or + dist.get_entry_map('gui_scripts')): + # stick them first so any more specific requirement overrides it + deps.insert(0, Requirement.parse('setuptools')) # add requires/recommends based on egg/dist metadata for dep in deps: if legacy: