A tool for converting between pip-style and pipfile requirements.
Project description
RequirementsLib: Requirement Management Library for Pip and Pipenv
===================================================================
.. image:: https://img.shields.io/pypi/v/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://img.shields.io/pypi/l/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://travis-ci.org/techalchemy/requirementslib.svg?branch=master
:target: https://travis-ci.org/techalchemy/requirementslib
.. image:: https://ci.appveyor.com/api/projects/status/n16s8fhn71o0v0tl/branch/master?svg=true
:target: https://ci.appveyor.com/project/techalchemy/requirementslib/branch/master
.. image:: https://img.shields.io/pypi/pyversions/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg
:target: https://saythanks.io/to/techalchemy
.. image:: https://readthedocs.org/projects/requirementslib/badge/?version=master
:target: http://requirementslib.readthedocs.io/en/master/?badge=master
:alt: Documentation Status
Installation
*************
Install from `PyPI`_:
::
$ pipenv install --pre requirementslib
Install from `Github`_:
::
$ pipenv install -e git+https://github.com/techalchemy/requirementslib.git#egg=requirementslib
.. _PyPI: https://www.pypi.org/project/requirementslib
.. _Github: https://github.com/techalchemy/requirementslib
.. _`Summary`:
Summary
********
RequirementsLib provides a simple layer for building and interacting with
requirements in both the `Pipfile <https://github.com/pypa/pipfile/>`_ format
and the `requirements.txt <https://github.com/pypa/pip/>`_ format. This library
was originally built for converting between these formats in `Pipenv <https://github.com/pypa/pipenv>`_.
.. _`Usage`:
Usage
******
Import the library and create a requirement object from *requirements.txt* format:
::
>>> from requirementslib import Requirement
>>> r = Requirement.from_line('-e git+https://github.com/pypa/pipenv.git@master#egg=pipenv')
>>> print(r)
Requirement(name='pipenv', vcs='git', req=VCSRequirement(editable=True, uri='git+https://github.com/pypa/pipenv.git', path=None, vcs='git', ref='master', subdirectory=None, name='pipenv', link=<Link git+https://github.com/pypa/pipenv.git@master#egg=pipenv>, req=<Requirement: "-e git+https://github.com/pypa/pipenv.git@master#egg=pipenv">), markers=None, specifiers=None, index=None, editable=True, hashes=[], extras=[])
>>> r.as_pipfile()
{'pipenv': {'editable': True, 'ref': 'master', 'git': 'https://github.com/pypa/pipenv.git'}}
Or move from *Pipfile* format to *requirements.txt*:
::
>>> r = Requirement.from_pipfile(name='pythonfinder', indexes=[], pipfile={'path': '../pythonfinder', 'editable': True})
>>> r.as_line()
'-e ../pythonfinder'
Integrations
*************
* `Pip <https://github.com/pypa/pip>`_
* `Pipenv <https://github.com/pypa/pipenv>`_
* `Pipfile <https://github.com/pypa/pipfile>`_
===================================================================
.. image:: https://img.shields.io/pypi/v/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://img.shields.io/pypi/l/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://travis-ci.org/techalchemy/requirementslib.svg?branch=master
:target: https://travis-ci.org/techalchemy/requirementslib
.. image:: https://ci.appveyor.com/api/projects/status/n16s8fhn71o0v0tl/branch/master?svg=true
:target: https://ci.appveyor.com/project/techalchemy/requirementslib/branch/master
.. image:: https://img.shields.io/pypi/pyversions/requirementslib.svg
:target: https://pypi-hypernode.com/pypi/requirementslib
.. image:: https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg
:target: https://saythanks.io/to/techalchemy
.. image:: https://readthedocs.org/projects/requirementslib/badge/?version=master
:target: http://requirementslib.readthedocs.io/en/master/?badge=master
:alt: Documentation Status
Installation
*************
Install from `PyPI`_:
::
$ pipenv install --pre requirementslib
Install from `Github`_:
::
$ pipenv install -e git+https://github.com/techalchemy/requirementslib.git#egg=requirementslib
.. _PyPI: https://www.pypi.org/project/requirementslib
.. _Github: https://github.com/techalchemy/requirementslib
.. _`Summary`:
Summary
********
RequirementsLib provides a simple layer for building and interacting with
requirements in both the `Pipfile <https://github.com/pypa/pipfile/>`_ format
and the `requirements.txt <https://github.com/pypa/pip/>`_ format. This library
was originally built for converting between these formats in `Pipenv <https://github.com/pypa/pipenv>`_.
.. _`Usage`:
Usage
******
Import the library and create a requirement object from *requirements.txt* format:
::
>>> from requirementslib import Requirement
>>> r = Requirement.from_line('-e git+https://github.com/pypa/pipenv.git@master#egg=pipenv')
>>> print(r)
Requirement(name='pipenv', vcs='git', req=VCSRequirement(editable=True, uri='git+https://github.com/pypa/pipenv.git', path=None, vcs='git', ref='master', subdirectory=None, name='pipenv', link=<Link git+https://github.com/pypa/pipenv.git@master#egg=pipenv>, req=<Requirement: "-e git+https://github.com/pypa/pipenv.git@master#egg=pipenv">), markers=None, specifiers=None, index=None, editable=True, hashes=[], extras=[])
>>> r.as_pipfile()
{'pipenv': {'editable': True, 'ref': 'master', 'git': 'https://github.com/pypa/pipenv.git'}}
Or move from *Pipfile* format to *requirements.txt*:
::
>>> r = Requirement.from_pipfile(name='pythonfinder', indexes=[], pipfile={'path': '../pythonfinder', 'editable': True})
>>> r.as_line()
'-e ../pythonfinder'
Integrations
*************
* `Pip <https://github.com/pypa/pip>`_
* `Pipenv <https://github.com/pypa/pipenv>`_
* `Pipfile <https://github.com/pypa/pipfile>`_
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
requirementslib-0.0.4.tar.gz
(13.2 kB
view hashes)
Built Distribution
Close
Hashes for requirementslib-0.0.4-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | feb866f4831849a4d623a4b241bcc723513c4b9fd4cb751e32b234d922c92041 |
|
MD5 | 07beec4c69f23b0aa230e6582d1b6d22 |
|
BLAKE2b-256 | b22ac7e91d47afc08f716991301e26614597d184ec2a1d0be34ee7af7e2f16a8 |