Metadata-Version: 1.1
Name: pytoolbox
Version: 9.6.1
Summary: Toolbox for Python scripts
Home-page: https://github.com/davidfischer-ch/pytoolbox
Author: David Fischer
Author-email: david.fischer.ch@gmail.com
License: EUPL 1.1
Description: =========
        pytoolbox
        =========
        
        .. image:: https://badge.fury.io/py/pytoolbox.png
           :target: http://badge.fury.io/py/pytoolbox
        
        .. image:: https://pypip.in/d/pytoolbox/badge.png
           :target: https://crate.io/packages/pytoolbox/
        
        .. image:: https://secure.travis-ci.org/davidfischer-ch/pytoolbox.png
           :target: http://travis-ci.org/davidfischer-ch/pytoolbox
        
        .. image:: https://coveralls.io/repos/davidfischer-ch/pytoolbox/badge.png
           :target: https://coveralls.io/r/davidfischer-ch/pytoolbox
        
        .. image:: https://landscape.io/github/davidfischer-ch/pytoolbox/master/landscape.png
           :target: https://landscape.io/github/davidfischer-ch/pytoolbox/master
        
        .. image:: https://badge.waffle.io/davidfischer-ch/pytoolbox.png?label=ready&title=Ready
           :target: https://waffle.io/davidfischer-ch/pytoolbox
           :alt: 'Stories in Ready'
        
        Afraid of red status ? Please click on the link, sometimes this is not my fault ;-)
        
        This module is a Toolbox for Python scripts.
        
        This library supports Python 2.6, 2.7, 3.2, 3.3, 3.4 and PyPy.
        
        
        ------------------------------------
        What the release number stands for ?
        ------------------------------------
        
        I do my best to follow this interesting recommendation : `Semantic Versioning 2.0.0 <http://semver.org/>`_
        
        --------------------------------
        How to install it (Python 2.7) ?
        --------------------------------
        
        Install some packages that are not handled by pip::
        
            sudo apt-add-repository ppa:mc3man/trusty-media
            sudo apt-get update
            sudo apt-get install ffmpeg git-core libyaml-dev libxml2-dev libxslt-dev libz-dev python-dev python-pip screen
            sudo apt-get install gir1.2-gexiv2-0.10 libexiv2-dev python-gi
        
        Make sure that pip is up-to-date (PIPception)::
        
            sudo pip-2.7 install --upgrade pip
        
        Then, you only need to run ``setup.py``::
        
            python2 setup.py test
            sudo python2 setup.py install
        
        --------------------------------
        How to install it (Python 3.3) ?
        --------------------------------
        
        Install some packages that are not handled by pip::
        
            sudo apt-add-repository ppa:mc3man/trusty-media
            sudo apt-get update
            sudo apt-get install ffmpeg git-core libyaml-dev libxml2-dev libxslt-dev libz-dev python3-dev python3-pip screen
            sudo apt-get install gir1.2-gexiv2-0.10 libexiv2-dev python3-gi
        
        Make sure that pip is up-to-date (PIPception)::
        
            sudo pip-3.3 install --upgrade pip
        
        Then, you only need to run ``setup.py``::
        
            python3 setup.py test
            sudo python3 setup.py install
        
        --------------------------------
        How to enable features/modules ?
        --------------------------------
        
        Example::
        
            sudo python setup.py install --help
            usage: setup.py [-h] [--extra-flask] [--extra-ming] [--extra-mongo]
                            [--extra-smpte2022] [--extra-django] [--extra-all]
        
            optional arguments:
              -h, --help         show this help message and exit
              --extra-flask      Install dependencies for the module/feature flask. (default: False)
              --extra-ming       Install dependencies for the module/feature ming. (default: False)
              --extra-mongo      Install dependencies for the module/feature mongo. (default: False)
              --extra-smpte2022  Install dependencies for the module/feature smpte2022. (default: False)
              --extra-django     Install dependencies for the module/feature django. (default: False)
              --extra-all        Install dependencies for all modules/features. (default: False)
        
            Some Python utility functions
        
            sudo python setup.py install --extra-smpte2022
        
        Another way to do this, with ``pip``::
        
            sudo pip install -e .[django,flask,ming,mongo,smpte2022] --use-mirrors
        
        -----------------------
        How to check coverage ?
        -----------------------
        
        ::
        
            python setup.py test
            xdg-open tests/cover/index.html
        
        ---------------
        How to use it ?
        ---------------
        
        Here is an example ``hello.py`` using the cmd function provided by ``pytoolbox``::
        
            from pytoolbox.subprocess import cmd
        
            print(cmd('echo Hello World!')['stdout'])
        
        -------------------------------
        How to generate documentation ?
        -------------------------------
        
        The documentation is generated by `Sphinx <http://sphinx-doc.org/ext/autodoc.html>`_.
        In fact this documentation is extracted from the docstrings of the modules.
        
        I am not fully happy with the actual results, for example it miss some parts of the modules ...
        It probably requires some tweaks in order to fix this.
        
        Here is the procedure::
        
            cd doc/
            python update.py
            xdg-open doc/build/html/index.html
        
        -------------------------------------------------
        How to add it to dependencies of my own project ?
        -------------------------------------------------
        
        Here is an example ``setup.py`` for a project called *my-cool-project*::
        
        	from setuptools import setup
        
        	setup(name='my-cool-project',
        		  version='0.8',
        		  author='Firstname Lastname',
        		  author_email='author@something.com',
        		  install_requires=['...', 'pytoolbox', '...'],
        		  tests_require=['nose'],
        		  license='GPLv3',
        		  url='https://github.com/nickname/my-cool-project',
        		  packages=['my_cool_project'])
        
        
        See `pip vcs support <http://www.pip-installer.org/en/latest/logic.html#vcs-support>`_ to get further details about this.
        
        You also need to install ``git-core``, but it is probably already the case, at least on your development computer ;-)
        
        2014 - David Fischer
        
Keywords: celery,ffmpeg,django,flask,json,juju,mock,mongodb,rsync,rtp,smpte 2022-1,screen,subprocess
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Framework :: Flask
Classifier: License :: OSI Approved :: European Union Public Licence 1.1 (EUPL 1.1)
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
