From 103db0d62d12714e3fe7172df67d0b91dcaac308 Mon Sep 17 00:00:00 2001 From: Marcus Smith Date: Wed, 30 Jan 2013 20:59:44 -0800 Subject: [PATCH] docs and cli error text updates --- docs/development.txt | 80 +++++++++++++++++++++++++++++++++++++++----- docs/index.txt | 7 ++++ pip/req.py | 2 +- pip/vcs/__init__.py | 2 +- 4 files changed, 80 insertions(+), 11 deletions(-) diff --git a/docs/development.txt b/docs/development.txt index 2feae9928..216e6bd66 100644 --- a/docs/development.txt +++ b/docs/development.txt @@ -2,19 +2,27 @@ Development =========== -.. include:: ../PROJECT.txt - - Pull Requests ============= -* Submit Pull Requests against the `develop` branch. -* Provide a good description of what your doing and why. -* Provide tests that cover your changes. -* Please try to run the tests locally first. -* All pull requests are tested using Travis upon submission. -* The only way to trigger Travis to run again, is to submit a change to the pull branch. +Submit Pull Requests against the `develop` branch. +Provide a good description of what your doing and why. + +Provide tests that cover your changes and try to run the tests locally first. + +Automated Testing +================= + +All pull requests and merges to 'develop' branch are tested in `Travis `_ +based on our `.travis.yml file `_. + +Usually, a link to your specific travis build appears in pull requests, but if not, +you can find it on our `travis pull requests page `_ + +The only way to trigger Travis to run again for a pull request, is to submit another change to the pull branch. + +We also have Jenkins CI that runs regularly for certain python versions on windows and centos. Running tests ============= @@ -42,6 +50,60 @@ The pip project welcomes help in the following ways: - Helping to answer questions on the mailing list. If you want to become an official maintainer, start by helping out. + Later, when you think you're ready, get in touch with one of the maintainers, and they will initiate a vote. +Release Process +=============== + +This process includes virtualenv, since pip releases necessitate a virtualenv release. + +:/: refers to the old and new versions of pip. +:/: refers to the old and new versions of virtualenv. + +1. Upgrade distribute, if needed: + #. Upgrade distribute in ``virtualenv:develop`` using the :ref:`Refresh virtualenv` process. + #. Create a pull request against ``pip:develop`` with a modified ``.travis.yml`` file that installs virtualenv from ``virtualenv:develop``, to confirm the travis builds are still passing. +3. Create Release branches: + #. Create ``pip:`` branch. + #. In ``pip:develop``, change ``pip.version`` to '.post1'. + #. Create ``virtualenv:`` branch. + #. In ``virtualenv:develop``, change ``virtualenv.version`` to '.post1'. +4. Prepare "rcX": + #. In ``pip:``, change ``pip.version`` to 'rcX', and tag with 'rcX'. + #. Build a pip sdist from ``pip:``, and build it into ``virtualenv:`` using the :ref:`Refresh virtualenv` process. + #. In ``virtualenv:``, change ``virtualenv.version`` to 'rcX', and tag with 'rcX'. +5. Announce ``pip-rcX`` and ``virtualenv-rcX`` with the :ref:`RC Install Instructions` and elicit feedback. +6. Apply fixes to 'rcX': + #. Apply fixes to ``pip:`` and ``virtualenv:`` + #. Periodically merge fixes to ``pip:develop`` and ``virtualenv:develop`` +7. Repeat #4 thru #6 if needed. +8. Final Release: + #. In ``pip:``, change ``pip.version`` to '', and tag with ''. + #. Merge ``pip:`` to ``pip:master``. + #. Build a pip sdist from ``pip:``, and load it into ``virtualenv:`` using the :ref:`Refresh virtualenv` process. + #. Merge ``vitualenv:`` to ``virtualenv:develop``. + #. In ``virtualenv:``, change ``virtualenv.version`` to '', and tag with ''. + #. Merge ``virtualenv:`` to ``virtualenv:master`` + +.. _`Refresh virtualenv`: + +Refresh virtualenv +++++++++++++++++++ + +#. Set the embedded versions of pip, distribute and setuptools in ``bin/refresh-support-files.py`` +#. Additionally, set the version of distribute in ``virtualenv_embedded/distribute_setup.py``, and setuptools in ``virtualenv_embedded/ez_setup.py`` +#. Run ``bin/refresh-support-files.py`` to download the latest versions. + When specifying a beta of pip not on pypi, the last part of this script will fail. In this case, the pip sdist needs to be placed manually into ``virtualenv_support``. +#. Run ``bin/rebuild-script.py`` to rebuild virtualenv based on the latest versions. + + +.. _`RC Install Instructions`: + +RC Install Instructions ++++++++++++++++++++++++ + +#. Download and unpack ``https://github.com/pypa/virtualenv/archive/rcX.tar.gz`` +#. Run: ``python virtualenv-rcX/virtualenv.py myVE`` +#. ``myVE/bin/pip`` will be the rcX version of pip. diff --git a/docs/index.txt b/docs/index.txt index 895d7b749..1507116a6 100644 --- a/docs/index.txt +++ b/docs/index.txt @@ -3,6 +3,13 @@ pip A tool for installing and managing Python packages. +`Mailing list `_ ``|`` +`Issues `_ ``|`` +`Github `_ ``|`` +`PyPI `_ ``|`` +irc:#pip + + .. toctree:: :maxdepth: 2 diff --git a/pip/req.py b/pip/req.py index 2a5d7331d..2c45928ca 100644 --- a/pip/req.py +++ b/pip/req.py @@ -1393,7 +1393,7 @@ def parse_editable(editable_req, default_vcs=None): url = default_vcs + '+' + url else: raise InstallationError( - '--editable=%s should be formatted with svn+URL, git+URL, hg+URL or bzr+URL' % editable_req) + '%s should either by a path to a local project or a VCS url beginning with svn+, git+, hg+, or bzr+' % editable_req) vc_type = url.split('+', 1)[0].lower() if not vcs.get_backend(vc_type): error_message = 'For --editable=%s only ' % editable_req + \ diff --git a/pip/vcs/__init__.py b/pip/vcs/__init__.py index a4b48a538..36ad676c5 100644 --- a/pip/vcs/__init__.py +++ b/pip/vcs/__init__.py @@ -119,7 +119,7 @@ class VersionControl(object): """ error_message= ( "Sorry, '%s' is a malformed VCS url. " - "Ihe format is +://, " + "The format is +://, " "e.g. svn+http://myrepo/svn/MyApp#egg=MyApp") assert '+' in self.url, error_message % self.url url = self.url.split('+', 1)[1]