Commit graph

628 commits

Author SHA1 Message Date
82ec68962a
Use typing.List for compatibility with Python 3.6 2023-01-12 14:09:05 +11:00
71bf8137a5
reconcile.helper: Add entry_point to avoid traceback 2023-01-11 19:36:43 +11:00
026f54bca1
reconcile.helper: Check file specified with --beancount-file exists 2023-01-11 19:36:43 +11:00
7f7f325f73
reconcile.helper: Appease code linter 2023-01-11 19:36:42 +11:00
9be7fdd95f
reconcile.helper: Avoid rt >= 3.0 library due to breaking changes
Error relates to rt.Rt not existing.
2023-01-11 19:36:42 +11:00
Bradley M. Kuhn
c0f83dfda8 payroll_type — Expenses:Payroll:Tax — CA:WCB 2022-03-05 16:08:07 -08:00
581ef0fa23
reconcile: Update docs, move a few things around. 2022-03-03 10:55:09 +11:00
97a05003f3
reconcile: Fix linter warnings. 2022-03-03 09:36:33 +11:00
da5caa3e6c
reconcile: Remove totals, highlight payee mismatches orange. 2022-03-02 18:26:19 +11:00
519542b1fa
reconcile: Add entrypoints for statement reconciler and helper. 2022-03-02 18:26:19 +11:00
20d242c7c7
reconcile: Fix a mutation bug causing not all matches to be passed through. 2022-03-02 18:26:10 +11:00
fb5d0a57f3
reconcile: CLI entrypoint, improve docs. 2022-03-02 10:05:07 +11:00
59dfbb78d1
reconcile: Add prototype CSV reconciliation report. 2022-03-01 23:09:50 +11:00
54d11f2437
reconcile: Add further typing info; update tests. 2022-02-24 22:43:37 +11:00
9ae36feed2
reconciler: Remove debug warning. 2022-02-24 21:11:02 +11:00
72385fd0bd
reconcile: Quote metadata, fix hiding of matched + reconciled lines. 2022-02-24 20:58:04 +11:00
7c5e98c588
reconcile: Simplify multirecord sorting. 2022-02-23 17:34:52 +11:00
405dd553cb
reconcile: Implement "subset sum" feature matching multiple books entries to a single statement entry. 2022-02-23 17:25:02 +11:00
965aeabde9
reconcile: Update tests with renamed module. 2022-02-23 09:58:53 +11:00
e1edffda9a
reconcile: Fix usage docs. 2022-02-23 08:21:06 +11:00
80dace59b3
reconcile: Rename statement reconciler. 2022-02-23 08:18:52 +11:00
517d4027b4
reconcile: Explicitly avoid payee matching when check-id provided in books. 2022-02-21 22:43:22 +11:00
c9dd9ffb28
reconciler: Fix totals. Never consider payee if check_id in books. 2022-02-21 22:22:42 +11:00
3377918279
reconcile: Make bank-statement path relative to $CONSERVANCY_BEANCOUNT.
Also add CSV metadata.
2022-02-21 18:31:07 +11:00
a3e60c639f
reconcile: Add special case for payee first word match. 2022-02-21 12:16:24 +11:00
32fc4517a0
reconcile: show check number, remove duplicate words in payee. 2022-02-19 00:27:48 +11:00
d8f4eac53b
reconcile: Improve reconciler matching and add test cases. 2022-02-18 20:36:11 +11:00
6d7df795cb
reconcile: Move code into functions, add totals. 2022-02-10 22:02:08 +11:00
4bb6177e45
reconcile: Update cleared query. 2022-02-10 10:23:00 +11:00
5d45171ed7
reconcile: Add statement total and cleared total. 2022-02-10 10:15:01 +11:00
042633d82d
reconcile: Update background docs. 2022-02-09 15:12:33 +11:00
bc4d897c92
reconcile: Tweak output. 2022-02-09 14:42:32 +11:00
3bff7845d5
reconcile: Fix usage example. 2022-02-09 14:05:09 +11:00
3f735bec95
reconcile: Show file and line number of mismatches. 2022-02-09 14:03:05 +11:00
6b1ce7d73a
reconcile: Fix edge case in helper when only one unreconciled transaction. 2022-02-09 12:58:11 +11:00
21852845c0
reconcile: Remove debugging lines. 2022-02-09 12:32:14 +11:00
31146b8843
reconcile: Add initial FR support to statement reconciler. 2022-02-09 12:29:44 +11:00
3792d46bcc
reconcile: Prototype writing statement metadata back to books. 2022-02-08 22:06:01 +11:00
dd35ed25c2
doc: Document installation into a virtualenv. 2022-02-04 19:27:58 +11:00
9c69d656a3
Add typing dependencies for requests, dateutil, setuptools and yaml.
Without these, mypy complains that "Library stubs are not installed".
2022-02-04 19:24:02 +11:00
088713060a
reconcile: Add dependency "thefuzz" for fuzzy match of payee text. 2022-02-04 19:15:12 +11:00
ed0bc469ce
reconcile: Add type checking information to new prototype reconcilers. 2022-02-04 19:15:11 +11:00
43548a1ac9
config: Fix mypy error for git.exc.
Error was:

  conservancy_beancount/config.py:142: error: Trying to read deleted variable "exc"

Not entirely sure what's causing this, but since GitPython also imports the
exceptions at the root of the package with "from git.exc import *", we can
import them from there instead, which seems to appease mypy.
2022-02-04 19:13:54 +11:00
7783f7ad10
reports: Fix mypy errors.
Errors were:

  conservancy_beancount/reports/core.py:923: error: Generator has incompatible
  item type "Optional[str]"; expected "str"

  conservancy_beancount/reports/core.py:929: error: Item "None" of
  "Optional[str]" has no attribute "lower"

  conservancy_beancount/reports/ledger.py:534: error: Item "None" of
  "Optional[str]" has no attribute "partition"

  conservancy_beancount/reports/ledger.py:729: error: Item "None" of
  "Optional[str]" has no attribute "lower"

  conservancy_beancount/reports/rewrite.py:563: error: Argument 2 to
  "_iter_yaml" of "RewriteRuleset" has incompatible type "Union[Any, str,
  None]"; expected "str"
2022-02-04 19:11:59 +11:00
0342c5b83e
tests: Replace skipUnless with skipif.
The function skipUnless is available in `unittest`, but not `pytest`.
2022-02-04 19:11:54 +11:00
f3e824f68b
reconcile: Add prototype AMEX statement/books reconciler. 2022-02-01 17:34:15 +11:00
9e6b5b408a
reconcile: Align "N/A" with numbers. 2022-01-28 10:18:02 +11:00
dbe8d02b78
reconcile: Update helper to show N/A when no results, similar to Perl.
Also clarified that a full account name should be passed. This aligns with the
Perl behaviour.
2022-01-28 10:11:48 +11:00
970fea86fd
reconcile: Convert Perl reconciliation helper to Python.
This is a Python version of bc-reconcile-helper.plx.
2022-01-21 18:53:17 +11:00
03533e15e6
reports: Prototype Canadian payroll report. 2022-01-21 18:53:12 +11:00