From 0aa6a4de5931d02876428388678802db2371fd37 Mon Sep 17 00:00:00 2001 From: Richard Ipsum Date: Mon, 3 Nov 2014 14:06:44 +0000 Subject: Make egg_info command write out setup requirements This commit makes the egg_info command write out setup requirements as well as install requirements, setup requirements are written to a setup_requires.txt file. The commit adds a new function write_setup_requirements which uses the existing _write_requirements function to write setup requirements out to a file and adds a new entry point to the egg_info.writers group. --- setup.py | 1 + setuptools/command/egg_info.py | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/setup.py b/setup.py index bac4e29d..ca312c01 100755 --- a/setup.py +++ b/setup.py @@ -163,6 +163,7 @@ setup_params = dict( "egg_info.writers": [ "PKG-INFO = setuptools.command.egg_info:write_pkg_info", "requires.txt = setuptools.command.egg_info:write_requirements", + "setup_requires.txt = setuptools.command.egg_info:write_setup_requirements", "entry_points.txt = setuptools.command.egg_info:write_entries", "eager_resources.txt = setuptools.command.egg_info:overwrite_arg", "namespace_packages.txt = setuptools.command.egg_info:overwrite_arg", diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py index 06764a17..78d86981 100755 --- a/setuptools/command/egg_info.py +++ b/setuptools/command/egg_info.py @@ -382,6 +382,12 @@ def write_requirements(cmd, basename, filename): cmd.write_or_delete_file("requirements", filename, data.getvalue()) +def write_setup_requirements(cmd, basename, filename): + data = StringIO() + _write_requirements(data, cmd.distribution.setup_requires) + cmd.write_or_delete_file("setup-requirements", filename, data.getvalue()) + + def write_toplevel_names(cmd, basename, filename): pkgs = dict.fromkeys( [ -- cgit v1.2.1