-
Notifications
You must be signed in to change notification settings - Fork 290
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Beangulp (more generally beancount v3) compatibility #1831
Comments
I was thinking about this a little more and I think one way out of this might be to embrace the "The user will be expected to write their own script." part of the beangulp paradigm and make the interface between Fava and importers be the script itself, with @yagebu, thoughts? If this seems OK, I'm happy to take a stab at implementing this. |
Overall, I think this can be done in version of Fava that is compatible to Beancount v2 and v3 and compatible to v2 style Importers as well as beangulp-style importers. See #1860 for a PR that implements this (beangulp-style importers are not yet supported). Doesn't seem like this adds to much of a maintenance burden, there's just minor breaking differences, beanquery works with both and for importers we'll need some conditional logic (to just wrap ImporterProtocol ones in Adapters most likely).
I don't think that the "The user will be expected to write their own script." requires a different approach from what we were doing so far. That seems to mostly apply to the "how do I run my importers from the command line", where the trampoline logic in v2 complicated things maybe. I don't see the need to drop down from Python interfaces to just strings and the command line. Importers are still just Python classes that implement a certain interface.
So the in-memory cache used by the v2 importer compatibility layer has this "problem", the one in the |
@blais recently wrote (I'm paraphrasing) that Beancount v2 is now deprecated, I'm wondering if there is a comprehensive list of blockers for Beancount v3 compatibility.
From what I can tell, the biggest blocker is probably beangulp support. I haven't tried, but it looks like beanquery also needs some work (#1824).
Is there a plan for making fava compatible with beancount v3? If this hasn't already been discussed (sorry if I missed it), I can see two approaches:
beancount.ingest
cannot be imported). In other words, evolve Fava so that it is backwards compatible with Beancount v2 (I imagine this will have a larger maintenance cost). Or,If there's already a plan (or one of the approaches above gets chosen), I'm happy to contribute code.
Two issues that I immediately see with integrating fava with beangulp are:
The text was updated successfully, but these errors were encountered: