Skip to content

Jannis/python-consonant

 
 

Repository files navigation

python-consonant
================

python-consonant is a reference implementation of Consonant. It is
written in Python and designed to allow rapid development of command
line applications and web services to run on top of Consonant stores.


What is Consonant?
------------------

Consonant is an object-relational, cross-referenced, verifiable and
service-oriented Git object store and corresponding web API.

The Consonant specification is hosted on

  https://github.com/CodethinkLabs/consonant


Dependencies
------------

python-consonant depends on the following software components:

  * Python >= 2.7.0
  * PyYAML >= 3.10 (with libyaml support)
  * pygit2 >= 0.19.0
  * pylibmc >= 1.2.2
  * python-twisted >= 11.1.0
  * python-twisted-web >= 11.1.0

For running the python-consonant test suite, the following additional
components are required:

  * python-coverage-test-runner >= 1.9
  * pep8 >= 1.4.8
  * pep257 >= 0.2.4
  * memcached >= 1.4.15
  * cmdtest >= 0.9
  * git >= 1.8.0


Testing
-------

python-consonant comes with an elaborate test suite with the following
features:

  * License checking of all source files
  * Unit tests
  * Scenario tests
  * Coding style checks (PEP 8, PEP 257)

These tests can be executed with

    python setup.py check

from the root directory of the source tree. The scenario tests are
executed against a standard set of test schemas and stores. By default,
these are expected to be located in the parent directory of
python-consonant but this can be overriden by providing a different
base URL, e.g.

    TEST_REPO_BASE_URL=/path/to/the/test/repos \
        python setup.py check


Building & Installing
---------------------

Like most Python projects, python-consonant can be using the standard
commands

    python setup.py build
    sudo python setup.py install

from the root directory of the source tree.


Contributing
------------

The development of python-consonant takes place within the Codethink
Labs project on GitHub:

  https://github.com/CodethinkLabs/python-consonant

Anyone interested in improving python-consonant or Consonant itself is
welcome to clone the project repositories and send pull requests.

We currently have no public mailing list set up for discussions around
python-consonant. Feel free to contact jannis.pohlmann@codethink.co.uk
with ideas or comments, however.


License
-------

Copyright (C) 2013-2014 Codethink Limited.

python-consonant is licensed under the GNU General Public License,
version 2 or later (GPLv2+). The full text of the license can be found
in the COPYING file distributed along with this README.

About

Reference implementation of the Consonant object store written in Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published