Plugin, library, and reports for reading Conservancy's books
Find a file
Brett Smith f23e0431e2 reconcile: New statement reconciler.
For now, this is basically just a specialized ledger report. It highlights
rows that already appear reconciled, and reports different balances, with
appropriate formulas to assist interactive reconciliation.

In the future I hope we can extend this to read various CSV statements and
then highlight rows different based on discrepancies between the statement
and the books, sort of like the PayPal reconciler does now.
2021-01-31 17:06:40 -05:00
conservancy_beancount reconcile: New statement reconciler. 2021-01-31 17:06:40 -05:00
tests reports: Add BaseODS.row_count() method. 2021-01-29 14:26:54 -05:00
.gitignore tox: Start configuration to test on Py3.6 and Py3.7. 2020-04-06 15:25:14 -04:00
AGPLv3.txt Clarify and organize license info including additional permission. 2021-01-08 16:58:04 -05:00
LICENSE.txt setup: New release for pdfforms tools. 2021-01-09 10:11:56 -05:00
README.rst setup: New release for pdfforms tools. 2021-01-09 10:11:56 -05:00
setup.cfg setup: Incorporate pytest.ini. 2020-07-15 10:27:05 -04:00
setup.py reconcile: New statement reconciler. 2021-01-31 17:06:40 -05:00

Beancount plugin and tools for Conservancy's books
==================================================

Installation
------------

``cd`` to this directory with your checkout and then run::

  python3 -m pip install --user --upgrade .

Of course, if you're familiar with Python development tools, you're welcome to install the module in a virtualenv, somewhere else, etc.

Running all tests
-----------------

The project comes with a Tox configuration that defines all the tests we expect to pass, across all the different environments we support. To run them all, run::

  tox

The next sections describe how to run them standalone in your own development environment, for faster iteration or simpler isolation of problems.

Running unit tests
------------------

Run::

  ./setup.py test

Type checking
-------------

Most of the code is typed, except for very dynamic loader methods. To run the type checker::

  ./setup.py typecheck

This is expected to pass just like the unit tests.

Legal
-----

Copyright © 2020, 2021  Brett Smith and others. Licensed under the GNU Affero General Public License, either version 3 of the License, or (at your option) any later version; with an additional permission. Refer to ``LICENSE.txt`` for details.