A fresh Twisted checkout should support "setup.py sdist"
[email protected] Fri, 27 Nov 2009 06:53:08 -0000
| Newsgroups | gmane.comp.python.twisted.bugs |
|---|---|
| Message-ID | <[email protected]> |
New submission from TimAllen <[email protected]>: This ticket is a stepping-stone towards #1696, but this is an independent, self-contained sub-goal that I expect will involve lots of discussion and exploration of alternatives, so I thought I'd file a new ticket. Steps to reproduce: 1. Download the [http://twistedmatrix.com/trac/wiki/Downloads official Twisted 9.0.0 source tarball] 1. Run the following commands: {{{ tar tjf Twisted-9.0.0.tar.bz2 | sort > /tmp/official-tarball-files tar xjf Twisted-9.0.0.tar.bz2 cd Twisted-9.0.0 ./setup.py sdist tar tzf dist/Twisted-9.0.0.tar.gz | sort > /tmp/sdist-tarball-files }}} 1. Compare `/tmp/official-tarball-files` and `/tmp/sdist-tarball-files` with your favourite diff tool. Expected results: * File lists should be identical, at least as far as executable code and tests go. Actual results: * The `sdist` tarball does not include Pyrex source files for Twisted's extension modules, or various test-data files required by test suites, which rather cripples the resulting tarball. * The `sdist` tarball also does not include documentation, but I'm not so fussed about that (see "as far as executable code and tests" above). Why this is a problem: * People (including but not limited to me) want to build RPMs of Twisted so they can depend on newer versions of Twisted than are shipped with their production platform (say, CentOS or RHEL). * Building RPMs with `bdist_rpm` is superior to building RPMs with `admin/twisted.spec` because: * Nearly every Python project that uses distutils can be built as an RPM this way, reducing documentation and training needs. * For those whose production systems depend on changes to Twisted that will be pushed upstream, running `bdist_rpm` from the branch is much, much simpler than writing a build-system to download official tarballs and bundle a patch-set and custom `twisted.spec`. * Working `sdist` is a precondition for working `bdist_rpm`. ---------- Type : enhancement Component: core Keywords : Priority : normal Nosy : ---------- http://twistedmatrix.com/trac/ticket/4138