summaryrefslogtreecommitdiff
path: root/docutils/docs/dev
diff options
context:
space:
mode:
authormilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2019-08-28 09:50:37 +0000
committermilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2019-08-28 09:50:37 +0000
commit28e315785ba2b58d65cfef65d04b86e510553074 (patch)
tree96666a115c6d7488c33353155cff17e2ca7e3d06 /docutils/docs/dev
parente5ab0e0c60c7375a7a17555c66ba0ce178bb6b8c (diff)
downloaddocutils-28e315785ba2b58d65cfef65d04b86e510553074.tar.gz
setup.cfg: Mark wheels as universal
We now have a source tree that's compatible with both Python 2 and Python 3. Time to indicate this. Huzzah! A now obsolete 'wheeling' document is removed. None of the caveats it describes are valid now. The release document is updated. Signed-off-by: Stephen Finucane <stephen@that.guru> git-svn-id: http://svn.code.sf.net/p/docutils/code/trunk@8378 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
Diffstat (limited to 'docutils/docs/dev')
-rw-r--r--docutils/docs/dev/release.txt6
-rw-r--r--docutils/docs/dev/wheeling.txt204
2 files changed, 2 insertions, 208 deletions
diff --git a/docutils/docs/dev/release.txt b/docutils/docs/dev/release.txt
index 31fd3c876..58df155e4 100644
--- a/docutils/docs/dev/release.txt
+++ b/docutils/docs/dev/release.txt
@@ -201,11 +201,9 @@ REWORK FOR SOURCEFORGE REPO
* **build wheels**::
- python3 setup.py sdist bdist_wheel
- python2 setup.py bdist_wheel
+ python setup.py bdist_wheel
- This builds wheels_ (`pure Python wheels`_ for Python 2 and 3
- respectively) by downloading the new release from pypi.
+ This builds wheels_ by downloading the new release from pypi.
Upload the wheels to PyPI::
diff --git a/docutils/docs/dev/wheeling.txt b/docutils/docs/dev/wheeling.txt
deleted file mode 100644
index e0bf7757d..000000000
--- a/docutils/docs/dev/wheeling.txt
+++ /dev/null
@@ -1,204 +0,0 @@
-===========================
- Docutils_ Building Wheels
-===========================
-
-:Authors: engelbert gruber; open to all Docutils developers
-:Contact: docutils-develop@lists.sourceforge.net
-:Date: $Date$
-:Revision: $Revision$
-:Copyright: This document has been placed in the public domain.
-
-.. _Docutils: http://docutils.sourceforge.net/
-
-.. contents::
-
-Abstract
---------
-
-This document documents trials to build python wheels from Docutils. Once it
-is finished it might be driven into distribution or release documentation.
-
-Requests
---------
-
-There is `feature request 43`_ : Make setup.py build wheels.
-
- Just add this to setup.cfg:
-
- [bdist_wheel]
- universal = 1
-
-
- .. warning:: Docutils is not fit for Universal Wheels. It supports both
- Python 2 and 3, but with different code (we use “2to3”). This makes it
- a candidate for `Pure Python wheels`_.
-
- As "universal" is false by default, no change to setup.cfg is required.
- The wheel builder detects that the package is pure Python and generates
- wheels for Py2 and Py3 depending under which python version it runs.
-
-and bugs275_ : Upload wheels to pypi
-
- Currently docutils does not publish any wheels on pypi. Wheels make docutils
- faster to install (no need to run setup.py, which for a large number of
- packages can take some time), and is no more difficult than uploading an
- sdist (see https://packaging.python.org/en/latest/distributing.html#wheels
- for instructions).
-
-Logbook
--------
-
-1. Add ``[bdist_wheel] universal = 0`` to setup.cfg.
-2. Run ``python setup.py bdist_wheel``::
-
- error: invalid command 'bdist_wheel'
-
-3. setuptools is too old. Install the new one by wheel or source or pip or
- easy...
-
-4. try wheel ... first get wheel tar.gz and unpack.
-
-5. try ::
-
- python2.7 wheel-0.24.0/wheel install setuptools-15.0-py2.py3-none-any.whl
-
- no error. But still ``error: invalid command 'bdist_wheel'``::
-
- $ python2.7 setup.py --version
- 0.12
-
- Did wheel install ? If no, why no error, if yes in which place ?
-
-
-Logbook: with setuptools branch
--------------------------------
-
-`gitpull/setuptools`_ sandbox branch introduces `setuptools`_ in ``setup.py``.
-
-As of 2015-04-16: **Not working yet**, ``import docutils`` will raise an
-``ImportError``. Need to get packages detected correctly.
-
-Install::
-
- $ svn checkout svn://svn.code.sf.net/p/docutils/code/trunk/sandbox/gitpull/setuptools docutils-setuptools
- $ cd setuptools
- # create a virtualenv (however you like)
- $ pip install -e .
-
-This includes support for generate ``python setup.py bdist_wheel``::
-
- $ python setup.py bdist_wheel
- running bdist_wheel
- running build
- running build_scripts
- installing to build/bdist.linux-x86_64/wheel
- running install
- running install_egg_info
- running egg_info
- writing docutils.egg-info/PKG-INFO
- writing top-level names to docutils.egg-info/top_level.txt
- writing dependency_links to docutils.egg-info/dependency_links.txt
- reading manifest file 'docutils.egg-info/SOURCES.txt'
- reading manifest template 'MANIFEST.in'
- warning: no files found matching 'MANIFEST'
- warning: no files found matching '*' under directory 'extras'
- warning: no previously-included files matching '.cvsignore' found under directory '*'
- warning: no previously-included files matching '*~' found under directory '*'
- warning: no previously-included files matching '.DS_Store' found under directory '*'
- writing manifest file 'docutils.egg-info/SOURCES.txt'
- Copying docutils.egg-info to build/bdist.linux-x86_64/wheel/docutils-0.13.data/purelib/docutils-0.13-py2.7.egg-info
- running install_scripts
- creating build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2pseudoxml.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2man.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2odt.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2latex.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rstpep2html.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2s5.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2odt_prepstyles.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2html.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2html5.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2xml.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- copying build/scripts-2.7/rst2xetex.py -> build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2pseudoxml.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2man.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2odt.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2latex.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rstpep2html.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2s5.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2odt_prepstyles.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2html.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2html5.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2xml.py to 755
- changing mode of build/bdist.linux-x86_64/wheel/docutils-0.13.data/scripts/rst2xetex.py to 755
- creating build/bdist.linux-x86_64/wheel/docutils-0.13.dist-info/WHEEL
-
-Installation::
-
- # create a fresh virtualenv
- $ pip install -U dist/docutils-0.13-cp27-none-linux_x86_64.whl
- Processing ./dist/docutils-0.13-cp27-none-linux_x86_64.whl
- Installing collected packages: docutils
- Found existing installation: docutils 0.13
- Uninstalling docutils-0.13:
- Successfully uninstalled docutils-0.13
- Successfully installed docutils-0.13
-
-
-Logbook with "pip"
-------------------
-
-Docutils' "setup.py" imports from the stdlib's "distutils" module
-instead of the 3rd party "setuptools". "distutils" cannot build wheels. [#]_
-
-OTOH, pip_ internally uses "setuptools" instead of "distutils". This way, it
-can generate wheels without changes to "setup.py".
-
-1. Install "pip" and "wheels"
-
- Under Debian Gnu/Linux: ``aptitude install python-pip python3-pip``
-
-2. In the repository root directory, run ::
-
- #> pip wheel ./docutils/
- Unpacking ./docutils
- Running setup.py (path:/tmp/pip-Ym9hKL-build/setup.py) egg_info for package from file:///[...]docutils-svn/docutils
-
- warning: no previously-included files matching '.DS_Store' found under directory '*'
- Building wheels for collected packages: docutils
- Running setup.py bdist_wheel for docutils
- Destination directory: /home/milde/Code/Python/docutils-svn/wheelhouse
- Successfully built docutils
- Cleaning up...
-
-3. There is a "pure Python" wheel under
- ``wheelhouse/docutils-0.13-py2-none-any.whl``
-
-4. Repeat with::
-
- #> pip3 wheel ./docutils/
-
- to get ``wheelhouse/docutils-0.13-py3-none-any.whl``
-
-You can also generate wheels for Docutils 0.12 with ``pip wheel docutils``
-and ``pip3 wheel docutils``. The 0.12 archive is downloaded from PIP and
-re-packed as wheel. With "pip3" this includes the 2to3 conversion.
-
-Summary:
- With the "pip" utility, it is possible to generate wheels for Python 2
- and 3 for both, the released and the repository version of Docutils
- without changes to the code base.
-
- The generated wheel can be installed. Installing the Py3k version happens
- "instantaneously".
-
-.. [#] Docutils uses the batteries included with Python and avoids external
- dependencies.
-
-.. _bugs275: https://sourceforge.net/p/docutils/bugs/275/
-.. _pure python wheels:
- https://packaging.python.org/en/latest/distributing.html#pure-python-wheels
-.. _feature request 43: https://sourceforge.net/p/docutils/feature-requests/43/
-.. _gitpull/setuptools: https://sourceforge.net/p/docutils/code/HEAD/tree/trunk/sandbox/gitpull/setuptools/
-.. _setuptools: https://pythonhosted.org/setuptools/
-.. _pip: http://pip.readthedocs.org/en/latest/