Metadata-Version: 1.1
Name: pylibseq
Version: 0.2.0a0
Summary: Python interface to libsequence.
Home-page: http://molpopgen.github.io/pylibseq
Author: Kevin Thornton
Author-email: krthornt@uci.edu
License: GPL >= 3
Description: pylibseq: Python bindings for libsequence
        ***************************************************************
        
        This package provides Python_ bindings for the C++11 library libsequence_.
        
        The bindings are implemented using pybind11_.
        
        This package serves two roles:
        
        * It provides a means of using some of the more widely-used bits of libsequence_ within the Python language
        * The unit tests of this package also serve as unit tests for libsequence_.
        
        What this package does **not** (currently) do:
        
        * provide an interface for I/O operations.  Python I/O and C++ I/O are fundamentally very different.  Bridging the gap requires either adding features to pybind11 and/or adding modules to this package that depend on the boost_ Python interface, which would add an additional C++ dependency to this package.
        
        Build status
        ==========================================
        
        Master branch:
        
        .. image:: https://travis-ci.org/molpopgen/pylibseq.svg?branch=master
           :target: https://travis-ci.org/molpopgen/pylibseq
           :alt: Travis CI Build Status (master branch)
        
        Development branch:
        
        .. image:: https://travis-ci.org/molpopgen/pylibseq.svg?branch=dev
           :target: https://travis-ci.org/molpopgen/pylibseq
           :alt: Travis CI Build Status (dev branch)
        
        Requirements:
        ===================================
        
        * libsequence_ must be installed on your system.  **Currently, this package requires the dev branch of libsequence**
        * TBB_ must be installed on your system.
        * Python 2 or Python 3
        * An up-to-date C++ compiler that is C++11 compatible via the flag -std=c++11.  Roughly, this means GCC >= 4.8 and clang >= 3.5.
        
        .. note:: If you installing from GitHub, then pybind11_ is a dependency.
        
        The recommended method for installing libsequence_ is bioconda_.  If you do not use that system, then you should install libsequence_ from source.
        
        If you want to modify the package, you will need pybind11_ installed via your favorite Python package manager.
        
        The supported platforms are Linux and OS X.
        
        Changelog (rough)
        ==============================
        
        * 0.1.9: Made memory management more robust: more unique_ptr instead of raw pointers.  Cleanup __dealloc__ functions in extension types.  Package now sets __version__.  Class names are now "Pythonic" (and identical to the corresponding type names from libsequence) due to aliasing the C++ names from libsequence. Change from distutils to setuptools.  Documentation fixes.  Expose haplotype diversity and number of haplotype statistics.  First (very alpha) release of pymsstats.
        * 0.1.8: made sure C++ objects/fxns are declared "nogil".  Raw pointers replaced with C++'s unique_ptr.
        * 0.1.7: improvements to build system.  Add option to build from GitHub.
        * 0.1.6: update to libsequence 1.8.9.  Add --use-cython option to setup.py
        
        Installation:
        =======================
        
        The latest release of the package is available via PyPi_, and can be installed with your favorite Python package manager:
        
        .. code-block:: bash
        
           $ pip install --upgrade pylibseq
        
        Or, you may install from GitHub:
        
        .. note:: The GitHub version does not contain the .cpp files generated by pybind11.  You need to generate those!
        
        .. code-block:: bash
        
           $ git clone http://github.com/molpopgen/pylibseq
           $ cd pylibseq
        
        .. code-block:: bash
        
           $ ./configure
           $ sudo pip install . 
        
        You may also install from GitHub using pip:
        
        .. code-block:: bash
        
           $ pip install git+git://github.com/molpopgen/pylibseq 
        
        If you have libsequence in a "funny location" (*e.g.*, something other that /usr/local):
        
        .. code-block:: bash
        
           $ CPPFLAGS=-I/path/to/libsequence/headers LDFLAGS=-L/path/to/libsequence/library sudo python setup.py install 
        
        For example, if libsequence is installed into /opt:
        
        .. code-block:: bash
        
           $ CPPFLAGS=-I/opt/include LDFLAGS=-L/opt/lib sudo python setup.py install
        
        Unit testing:
        =======================
        
        .. code-block:: bash
        
           $ ./configure
           $ python setup.py build_ext -i 
           $ python -m unittest discover tests
        
        Documentation:
        ======================
        
        * Project homepage_
        * Manual_
        
        .. _libsequence: http://molpopgen.github.io/libsequence/
        .. _boost: http://www.boost.org/
        .. _pybind11: http://pybind11.readthedocs.io/
        .. _Python: http://www.python.org/
        .. _Manual: http://molpopgen.github.io/pylibseq/_build/html/index.html
        .. _homepage: http://molpopgen.github.io/pylibseq/
        .. _PyPi: https://pypi.python.org
        .. _TBB: http://www.threadbuildingblocks.org
        .. _bioconda: https://bioconda.github.io
        
Platform: UNKNOWN
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Requires: pybind11
Requires: numpy
Provides: pylibseq
Obsoletes: none
