/PyInform

A Python Wrapper for the Inform Information Analysis Library

Primary LanguagePythonMIT LicenseMIT

PyInform

PyInform is a python wrapper for the C inform library.

Building and Installation

Via Pip

To install via pip, you can run the following :

$ pip install pyinform

Note that on some systems this will require administrative privileges. If you don't have admin privileges or would prefer to install PyInform for your user only, you do so via the --user flag: :

$ pip install --user pyinform

That's it! You're ready to go.

Manually

If you plan on contributing to PyInform, you likely want to build the project manually. Once you have clone the repository, you will need to manually retrieve the most recent version of the inform binaries. The associated zip file should be extracted in the pyinform subdirectory.

PyInform has one python dependency: NumPy. This should be easy to fulfill.

Once NumPy been installed, you can test and install with setup.py:

$ python setup.py test
$ python setup.py install --user

or using pip on your local copy: :

$ python setup.py test
$ pip install --user .

It may also be useful to install an "editable" version of PyInform. This means that any changes you make to your local copy will immediately be accessible in python. To do that just add the --editable flag to pip:

$ pip install --editable --user .

And you are ready to go!

Building the Documentation

To build the documentation you will have to be able to run PyInform as the sphinx documentation generator (also required) uses the docstrings in the source to build the documentation.

Once you have PyInform running and Sphinx installed you can build the HTML and PDF documentation via make:

$ make -C docs html
$ make -C docs latexpdf

or via make.bat on Windows:

$ cd docs
$ make.bat html
$ make.bat latexpd

Of course, to build the PDF documentation you will need have LaTeX installed.

If you do not want to generate the documentation yourself, prebuilt versions can be found here on Google Drive. This include a PDF version as well as tar and zip archives of the HTML documentation. A future release will provide live document hosting.

System Support

So far the python wrapper has been tested under python2.7, python3.4 and python3.5, and on the following platforms:

  • Debian 8
  • Mac OS X 10.11 (El Capitan)
  • Windows 10

Grant Support

This project is supported in part by a grant provided by the Templeton World Charity Foundation as part of the Power Of Information Initiative.