[Distutils] defining requirements on pypi

Donald Stufft donald at stufft.io
Fri Aug 29 00:11:12 CEST 2014


PyPI doesn’t parse anything, metadata is passed alongside the file upload. This means that for sdists it would just need modified to communicate that information to PyPI. PyPI won’t show metadata for Wheels either unless you upload them with Twine.


> On Aug 28, 2014, at 6:02 PM, Daniel Holth <dholth at gmail.com> wrote:
> 
> Pypi only parses requirements from wheels for display but this doesn't affect installation.
> 
> On Aug 28, 2014 7:49 AM, "Brett Graham" <brettgraham at gmail.com <mailto:brettgraham at gmail.com>> wrote:
> Hi,
> 
> I feel like these are stupid questions but I cannot seem to find a straight answer.
> 
> In brief,
> 
> 1) what is egg-info/requires.txt used for?
> 2) how do I properly define requirements for pypi?
> 
> The details are:
> 
> I'm updating some packages on pypi and am having difficulty defining requirements.
> 
> One of the packages in question is: pypi.python.org/pypi/jsui <http://pypi.python.org/pypi/jsui>
> 
> I'm initially defining the requirements in a requirements.txt that then gets parsed in setup.py and install_requires gets set to the contents of requirements.txt. Some of the output from python setup.py sdist build is below. The resulting requires.txt in jsui.egg-info is:
> 
> flask
> wsrpc
> 
> However, when I upload this to pypi with "python setup.py sdist upload" I'm not seeing these requirements listed nor does pip installing the package install the requirements.
>  
> Thanks for your help.
> 
> ==== python setup.py sdist build partial output ====
> 
> running sdist
> running egg_info
> writing requirements to jsui.egg-info/requires.txt
> writing jsui.egg-info/PKG-INFO
> writing top-level names to jsui.egg-info/top_level.txt
> writing dependency_links to jsui.egg-info/dependency_links.txt
> reading manifest file 'jsui.egg-info/SOURCES.txt'
> writing manifest file 'jsui.egg-info/SOURCES.txt'
> running check
> warning: check: missing required meta-data: url
> 
> creating jsui-0.0.1
> creating jsui-0.0.1/jsui
> creating jsui-0.0.1/jsui.egg-info
> making hard links in jsui-0.0.1...
> hard linking README -> jsui-0.0.1
> hard linking setup.py -> jsui-0.0.1
> hard linking jsui/__init__.py -> jsui-0.0.1/jsui
> hard linking jsui/serve.py -> jsui-0.0.1/jsui
> hard linking jsui.egg-info/PKG-INFO -> jsui-0.0.1/jsui.egg-info
> hard linking jsui.egg-info/SOURCES.txt -> jsui-0.0.1/jsui.egg-info
> hard linking jsui.egg-info/dependency_links.txt -> jsui-0.0.1/jsui.egg-info
> hard linking jsui.egg-info/requires.txt -> jsui-0.0.1/jsui.egg-info
> hard linking jsui.egg-info/top_level.txt -> jsui-0.0.1/jsui.egg-info
> Writing jsui-0.0.1/setup.cfg
> Creating tar archive
> removing 'jsui-0.0.1' (and everything under it)
> running build
> running build_py
> 
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org <mailto:Distutils-SIG at python.org>
> https://mail.python.org/mailman/listinfo/distutils-sig <https://mail.python.org/mailman/listinfo/distutils-sig>
> 
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig

---
Donald Stufft
PGP: 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20140828/b994feb2/attachment-0001.html>


More information about the Distutils-SIG mailing list