Commit 890c8b34 authored by Jason R. Coombs's avatar Jason R. Coombs

Updated documentation to reflect merged target name, only keeping legacy references to Distribute.

--HG--
branch : Setuptools-Distribute merge
extra : source : 7c68dd2a22cf2dc0ad77f1cca857736586aa5753
parent 4a2bb4b6
<h3>Download</h3>
<h3>Download</h3>
<p>Current version: <b>{{ version }}</b></p>
<p>Get Distribute from the <a href="http://pypi.python.org/pypi/distribute"> Python Package Index</a>
<p>Current version: <b>{{ version }}</b></p>
<p>Get Setuptools from the <a href="http://pypi.python.org/pypi/setuptools"> Python Package Index</a>
<h3>Questions? Suggestions? Contributions?</h3>
<p>Visit the <a href="http://bitbucket.org/tarek/distribute">Distribute project page</a> </p>
<p>Visit the <a href="http://bitbucket.org/jaraco/setuptools">Setuptools project page</a> </p>
# -*- coding: utf-8 -*-
#
# Distribute documentation build configuration file, created by
# Setuptools documentation build configuration file, created by
# sphinx-quickstart on Fri Jul 17 14:22:37 2009.
#
# This file is execfile()d with the current directory set to its containing dir.
......@@ -40,8 +40,8 @@ source_suffix = '.txt'
master_doc = 'index'
# General information about the project.
project = u'Distribute'
copyright = u'2009-2011, The fellowship of the packaging'
project = u'Setuptools'
copyright = u'2009-2013, The fellowship of the packaging'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
......@@ -106,10 +106,10 @@ html_theme_path = ['_theme']
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
html_title = "Distribute documentation"
html_title = "Setuptools documentation"
# A shorter title for the navigation bar. Default is the same as html_title.
html_short_title = "Distribute"
html_short_title = "Setuptools"
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
......@@ -161,7 +161,7 @@ html_use_index = False
#html_file_suffix = ''
# Output file base name for HTML help builder.
htmlhelp_basename = 'Distributedoc'
htmlhelp_basename = 'Setuptoolsdoc'
# -- Options for LaTeX output --------------------------------------------------
......@@ -175,7 +175,7 @@ htmlhelp_basename = 'Distributedoc'
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass [howto/manual]).
latex_documents = [
('index', 'Distribute.tex', ur'Distribute Documentation',
('index', 'Setuptools.tex', ur'Setuptools Documentation',
ur'The fellowship of the packaging', 'manual'),
]
......
......@@ -94,7 +94,7 @@ directory, you can also retarget the installation location for scripts so they
go on a directory that's already on the ``PATH``. For more information see the
sections below on `Command-Line Options`_ and `Configuration Files`_. You
can pass command line options (such as ``--script-dir``) to
``distribute_setup.py`` to control where ``easy_install.exe`` will be installed.
``ez_setup.py`` to control where ``easy_install.exe`` will be installed.
......@@ -776,10 +776,12 @@ Command-Line Options
package not being available locally, or due to the use of the ``--update``
or ``-U`` option.
``--no-find-links`` Blocks the addition of any link. (New in Distribute 0.6.11)
This is useful if you want to avoid adding links defined in a project
easy_install is installing (wether it's a requested project or a
dependency.). When used, ``--find-links`` is ignored.
``--no-find-links`` Blocks the addition of any link.
This parameter is useful if you want to avoid adding links defined in a
project easy_install is installing (whether it's a requested project or a
dependency). When used, ``--find-links`` is ignored.
Added in Distribute 0.6.11 and Setuptools 0.7.
``--delete-conflicting, -D`` (Removed in 0.6a11)
(As of 0.6a11, this option is no longer necessary; please do not use it!)
......
Welcome to Distribute's documentation!
======================================
Welcome to Setuptools' documentation!
=====================================
`Distribute` is a fork of the `Setuptools` project.
Setuptools is a fully-featured, actively-maintained, and stable library
designed to facilitate packaging Python projects, where packaging includes:
Distribute is intended to replace Setuptools as the standard method for
working with Python module distributions.
For those who may wonder why they should switch to Distribute over Setuptools, it’s quite simple:
- Distribute is a drop-in replacement for Setuptools
- The code is actively maintained, and has over 10 commiters
- Distribute offers Python 3 support !
- Python package and module definitions
- Distribution package metadata
- Test hooks
- Project installation
- Platform-specific details
- Python 3 support
Documentation content:
......@@ -23,14 +22,3 @@ Documentation content:
setuptools
easy_install
pkg_resources
.. image:: http://python-distribute.org/pip_distribute.png
Design done by Idan Gazit (http://pixane.com) - License: cc-by-3.0
Copy & paste::
curl -O http://python-distribute.org/distribute_setup.py
python distribute_setup.py
easy_install pip
\ No newline at end of file
=====================================================
Supporting both Python 2 and Python 3 with Distribute
Supporting both Python 2 and Python 3 with Setuptools
=====================================================
Starting with version 0.6.2, Distribute supports Python 3. Installing and
using distribute for Python 3 code works exactly the same as for Python 2
code, but Distribute also helps you to support Python 2 and Python 3 from
Starting with Distribute version 0.6.2 and Setuptools 0.7, the Setuptools
project supported Python 3. Installing and
using setuptools for Python 3 code works exactly the same as for Python 2
code, but Setuptools also helps you to support Python 2 and Python 3 from
the same source code by letting you run 2to3 on the code as a part of the
build process, by setting the keyword parameter ``use_2to3`` to True.
Distribute as help during porting
Setuptools as help during porting
=================================
Distribute can make the porting process much easier by automatically running
Setuptools can make the porting process much easier by automatically running
2to3 as a part of the test running. To do this you need to configure the
setup.py so that you can run the unit tests with ``python setup.py test``.
......@@ -24,10 +25,10 @@ The test command will now first run the build command during which the code
will be converted with 2to3, and the tests will then be run from the build
directory, as opposed from the source directory as is normally done.
Distribute will convert all Python files, and also all doctests in Python
Setuptools will convert all Python files, and also all doctests in Python
files. However, if you have doctests located in separate text files, these
will not automatically be converted. By adding them to the
``convert_2to3_doctests`` keyword parameter Distrubute will convert them as
``convert_2to3_doctests`` keyword parameter Setuptools will convert them as
well.
By default, the conversion uses all fixers in the ``lib2to3.fixers`` package.
......@@ -86,12 +87,14 @@ Advanced features
If you don't want to run the 2to3 conversion on the doctests in Python files,
you can turn that off by setting ``setuptools.use_2to3_on_doctests = False``.
Note on compatibility with setuptools
=====================================
Note on compatibility with older versions of setuptools
=======================================================
Setuptools do not know about the new keyword parameters to support Python 3.
Setuptools earlier than 0.7 does not know about the new keyword parameters to
support Python 3.
As a result it will warn about the unknown keyword parameters if you use
setuptools instead of Distribute under Python 2. This is not an error, and
those versions of setuptools instead of Distribute under Python 2. This output
is not an error, and
install process will continue as normal, but if you want to get rid of that
error this is easy. Simply conditionally add the new parameters into an extra
dict and pass that dict into setup()::
......@@ -117,5 +120,5 @@ dict and pass that dict into setup()::
**extra
)
This way the parameters will only be used under Python 3, where you have to
use Distribute.
This way the parameters will only be used under Python 3, where Distribute or
Setuptools 0.7 or later is required.
......@@ -2,85 +2,13 @@
Roadmap
=======
Distribute has two branches:
Setuptools has merged with Distribute and to provide a unified codebase for
ongoing development.
- 0.6.x : provides a Setuptools-0.6cX compatible version
- 0.7.x : will provide a refactoring
0.6.x
=====
Not "much" is going to happen here, we want this branch to be helpful
to the community *today* by addressing the 40-or-so bugs
that were found in Setuptools and never fixed. This is eventually
happen soon because its development is
fast : there are up to 5 commiters that are working on it very often
(and the number grows weekly.)
The biggest issue with this branch is that it is providing the same
packages and modules setuptools does, and this
requires some bootstrapping work where we make sure once Distribute is
installed, all Distribution that requires Setuptools
will continue to work. This is done by faking the metadata of
Setuptools 0.6c9. That's the only way we found to do this.
There's one major thing though: thanks to the work of Lennart, Alex,
Martin, this branch supports Python 3,
which is great to have to speed up Py3 adoption.
The goal of the 0.6.x is to remove as much bugs as we can, and try if
possible to remove the patches done
on Distutils. We will support 0.6.x maintenance for years and we will
promote its usage everywhere instead of
Setuptools.
Some new commands are added there, when they are helpful and don't
interact with the rest. I am thinking
about "upload_docs" that let you upload documentation to PyPI. The
goal is to move it to Distutils
at some point, if the documentation feature of PyPI stays and starts to be used.
0.7.x
=====
We've started to refactor Distribute with this roadmap in mind (and
no, as someone said, it's not vaporware,
we've done a lot already)
- 0.7.x can be installed and used with 0.6.x
- easy_install is going to be deprecated ! use Pip !
- the version system will be deprecated, in favor of the one in Distutils
- no more Distutils monkey-patch that happens once you use the code
(things like 'from distutils import cmd; cmd.Command = CustomCommand')
- no more custom site.py (that is: if something misses in Python's
site.py we'll add it there instead of patching it)
- no more namespaced packages system, if PEP 382 (namespaces package
support) makes it to 2.7
- The code is splitted in many packages and might be distributed under
several distributions.
- distribute.resources: that's the old pkg_resources, but
reorganized in clean, pep-8 modules. This package will
only contain the query APIs and will focus on being PEP 376
compatible. We will promote its usage and see if Pip wants
to use it as a basis.
It will probably shrink a lot though, once the stdlib provides PEP 376 support.
- distribute.entrypoints: that's the old pkg_resources entry points
system, but on its own. it uses distribute.resources
- distribute.index: that's package_index and a few other things.
everything required to interact with PyPI. We will promote
its usage and see if Pip wants to use it as a basis.
- distribute.core (might be renamed to main): that's everything
else, and uses the other packages.
Goal: A first release before (or when) Python 2.7 / 3.2 is out.
This new effort will draw from the resources of both projects to leverage
community contribution for ongoing advancement but also maintain stability
for the user base.
An initial release of Setuptools 0.7 will attempt to be compatible both with
Setuptools 0.6c11 and Distribute 0.6.36. Where compatibility cannot be
achieved, the changes should be well-documented.
==================================================
Building and Distributing Packages with Distribute
Building and Distributing Packages with Setuptools
==================================================
``Distribute`` is a collection of enhancements to the Python ``distutils``
``Setuptools`` is a collection of enhancements to the Python ``distutils``
(for Python 2.3.5 and up on most platforms; 64-bit platforms require a minimum
of Python 2.4) that allow you to more easily build and distribute Python
packages, especially ones that have dependencies on other packages.
......@@ -15,7 +15,7 @@ including just a single `bootstrap module`_ (an 8K .py file), your package will
automatically download and install ``setuptools`` if the user is building your
package from source and doesn't have a suitable version already installed.
.. _bootstrap module: http://nightly.ziade.org/distribute_setup.py
.. _bootstrap module: http://bitbucket.org/jaraco/setuptools/downloads/ez_setup.py
Feature Highlights:
......
================================
Using Distribute in your project
Using Setuptools in your project
================================
To use Distribute in your project, the recommended way is to ship
`distribute_setup.py` alongside your `setup.py` script and call
To use Setuptools in your project, the recommended way is to ship
`ez_setup.py` alongside your `setup.py` script and call
it at the very begining of `setup.py` like this::
from distribute_setup import use_setuptools
from ez_setup import use_setuptools
use_setuptools()
Another way is to add ``Distribute`` in the ``install_requires`` option::
from setuptools import setup
setup(...
install_requires=['distribute']
)
XXX to be finished
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment