Metadata-Version: 2.1
Name: pythonfinder
Version: 0.0.1.dev1
Summary: A cross-platform python discovery tool to help locate python on any system.
Home-page: https://github.com/techalchemy
Author: Dan Ryan
Author-email: dan@danryan.co
License: MIT
Keywords: pythonfinder path finder pathfinder which pep514 pyenv
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Build Tools
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*
Provides-Extra: testing
Requires-Dist: click
Requires-Dist: packaging
Requires-Dist: six
Requires-Dist: delegator.py
Requires-Dist: pathlib2; python_version < "3.0"
Provides-Extra: testing
Requires-Dist: pytest; extra == 'testing'
Requires-Dist: pytest-xdist; extra == 'testing'

PythonFinder: Cross Platform Search Tool for Finding Pythons
=============================================================

Installation
*************

Install from `PyPI`_:

  ::

    $ pipenv install --pre pythonfinder

Install from `Github`_:

  ::

    $ pipenv install -e git+https://github.com/techalchemy/pythonfinder.git#egg=pythonfinder


.. _PyPI: https://www.pypi.org/projects/pythonfinder
.. _Github: https://github.com/techalchemy/pythonfinder


.. _`Usage`:

Usage
******

Using PythonFinder is easy.  Simply import it and ask for a python:

  ::

    >>> from pythonfinder import PythonFinder
    >>> PythonFinder.from_line('python3')
    '/home/techalchemy/.pyenv/versions/3.6.5/python3'

    >>> PythonFinder.from_version('2.7')
    '/home/techalchemy/.pyenv/versions/2.7.14/python'

PythonFinder can even find beta releases!

  ::

    >>> PythonFinder.from_version('3.7')
    '/home/techalchemy/.pyenv/versions/3.7.0b1/bin/python'

Windows Support
****************

PythonFinder natively supports windows via both the *PATH* environment variable and `PEP-514 <https://www.python.org/dev/peps/pep-0514/>`_ compliant finder which comes by default with python 3. Usage on windows becomes:

  ::

    >>> PythonFinder.from_line('python')
    "C:\\Program\\\\ Files\\Python36\\python.exe"

    >>> PythonFinder.from_version('2.7')
    "C:\\Python27\\python.exe"

    >>> PythonFinder.from_line('py -3')
    "C:\\Program\\\\ Files\\Python36\\python.exe"

Integrations
*************

* `Pyenv <https://github.com/pyenv/pyenv>`_
* `PEP-514 <https://www.python.org/dev/peps/pep-0514/>`_
* `Virtualenv <https://github.com/pypa/virtualenv>`_
* `Pipenv <https://pipenv.org>`_


