1{ lib, buildPythonPackage, fetchPypi
2, setuptools-scm
3, beancount
4, pytestCheckHook
5}:
6
7buildPythonPackage rec {
8 version = "1.0.1";
9 pname = "beancount-docverif";
10 pyproject = true;
11
12 src = fetchPypi {
13 pname = "beancount_docverif";
14 inherit version;
15 hash = "sha256-CFBv1FZP5JO+1MPnD86ttrO42zZlvE157zqig7s4HOg=";
16 };
17
18 nativeBuildInputs = [
19 setuptools-scm
20 ];
21
22 propagatedBuildInputs = [
23 beancount
24 ];
25
26 nativeCheckInputs = [
27 pytestCheckHook
28 ];
29
30 meta = with lib; {
31 homepage = "https://github.com/siriobalmelli/beancount_docverif";
32 description = "Document verification plugin for Beancount";
33 longDescription = ''
34 Docverif is the "Document Verification" plugin for beancount, fulfilling the following functions:
35
36 - Require that every transaction touching an account have an accompanying document on disk.
37 - Explicitly declare the name of a document accompanying a transaction.
38 - Explicitly declare that a transaction is expected not to have an accompanying document.
39 - Look for an "implicit" PDF document matching transaction data.
40 - Associate (and require) a document with any type of entry, including open entries themselves.
41 - Guarantee integrity: verify that every document declared does in fact exist on disk.
42 '';
43 license = licenses.mit;
44 maintainers = with maintainers; [ siriobalmelli ];
45 };
46}