Skip to content

Commit

Permalink
Added usage for common examples
Browse files Browse the repository at this point in the history
  • Loading branch information
davidfischer committed Aug 17, 2013
1 parent de70666 commit e907e6c
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ Contents:
.. toctree::
:maxdepth: 2

usage
changelog
lowlevel

Expand Down
48 changes: 48 additions & 0 deletions docs/usage.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
Usage
=====

Requirements parser works very similarly to the way pip actually parses
requirement files except that pip typically proceeds to install the
relevant packages.

Requirements come in a variety of forms such as requirement specifiers
(such as requirements>=0.0.5), version control URIs, other URIs and local
file paths.


Parsing requirement specifiers
------------------------------

::

import requirements
req = "django>=1.5,<1.6"
parsed = list(requirements.parse(req))[0]
parsed.name # django
parsed.specs # [('>=', '1.5'), ('<', '1.6')]
parsed.specifier # True


Parsing version control requirements
------------------------------------

::

req = "-e git+git://github.com/toastdriven/django-haystack@259274e4127f723d76b893c87a82777f9490b960#egg=django_haystack"
parsed = list(requirements.parse(req))[0]
parsed.name # django_haystack
parsed.vcs # git
parsed.revision # 259274e4127f723d76b893c87a82777f9490b960
parsed.uri # git+git://github.com/toastdriven/django-haystack
parsed.editable # True (because of the -e option)


Parsing local files
-------------------

::

req = "-e path/to/project"
parsed = list(requirements.parse(req))[0]
parsed.local_file # True
parsed.path # path/to/project

0 comments on commit e907e6c

Please sign in to comment.