Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
The package is now sitting in NEW, waiting to land in experimental. I've also pushed a couple of minor improvements on salsa, waiting for the next upload. As soon as it passes NEW, I plan to upload again to unstable, hoping to make the freeze cut (you never know... :-)) Please let me know if you have objections and please test the package and let this bug report know if you encounter any showstopper. For my part I've migrated my local use of beancount to the current version of the package and it is working just fine for my needs. Cheers. -- Stefano Zacchiroli . z...@upsilon.cc . upsilon.cc/zack . . o . . . o . o Computer Science Professor . CTO Software Heritage . . . . . o . . . o o Former Debian Project Leader & OSI Board Director . . . o o o . . . o . « the first rule of tautology club is the first rule of tautology club »
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
On Mon, Dec 24, 2018 at 07:30:31PM +0200, Martin Michlmayr wrote: > So this issue was reported and fixed already upstream: > > Here's the original bug report: > > https://bitbucket.org/blais/beancount/issues/341/test_utilsfind_repository_root-doesnt-work Thanks Martin for finding this, and thanks James for raising it upstream after last time I tried it out. I've updated the package to a hg snapshot of today (which includes the commits with the fix, and more). The source package as it is on salsa now builds fine on a fresh unstable chroot. Testing welcome. Cheers -- Stefano Zacchiroli . z...@upsilon.cc . upsilon.cc/zack . . o . . . o . o Computer Science Professor . CTO Software Heritage . . . . . o . . . o o Former Debian Project Leader & OSI Board Director . . . o o o . . . o . « the first rule of tautology club is the first rule of tautology club » signature.asc Description: PGP signature
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
So this issue was reported and fixed already upstream: Here's the original bug report: https://bitbucket.org/blais/beancount/issues/341/test_utilsfind_repository_root-doesnt-work "Since the release tarball only contains the README file, not COPYING or PKGINFO, it's not possible for the function to ever succeed. At least COPYING should be in the tarball." -- Martin Michlmayr https://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
Maybe we need this: https://bitbucket.org/blais/beancount/commits/d5bfce77f37548b19037c0e9401d61501164760b ? This on top wouldn't hurt: https://bitbucket.org/blais/beancount/commits/17a36a0603ab3f6bf27abdf581d64f1c2ed8e285 -- Martin Michlmayr https://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
* Stefano Zacchiroli [2018-12-09 18:04]: > The main current issue is that several tests, at least when run under > sbuild/cowbuilder, enters infinite loops stat()-ing forever > "/PKG-INFO". I have been unable to find the cause, but it's somewhat > specific to the Debian build environment in conjunction with pytest. As you know, I'm years out of date with Debian packaging and have no idea how gbp works. However, the /PKG-INFO issue is this: find_repository_root() in beancount/utils/test_utils.py tries to find the root of the reposity by looking for a directory that contains all of COPYING, PKG-INFO and README. However, when I look at the Debian source tree, it seems a lot of files are missing: https://salsa.debian.org/python-team/applications/beancount doesn't have COPYING, nor the examples/ directory. So find_repository_root() fails to find all 3 files (COPYING is missing) and traverses the directory until it ends up in an infinite loop traversing /. (dirname("/")). I just filed this bug about the infinite loop but really the problem is the missing file: https://bitbucket.org/blais/beancount/issues/355 I suspect if you add these missing files, it would just work. It seems: commit 0414a6e19275f4770223add912971762da291ca4 (origin/upstream) Author: Stefano Zacchiroli Date: Fri Oct 5 09:20:03 2018 +0200 New upstream version 2.1.3 deleted COPYING, examples and a bunch of files. Oh, btw, build-package also didn't work for me: I: pybuild pybuild:269: cp -r /home/tbm/beancount/beancount/utils/file_type /home/tbm/beancount/.pybuild/cpython3_3.7/build/beancount/utils; cd /home/tbm/beancount/beancount/parser; cp lexer.l grammar.y parser.h parser.c /home/tbm/beancount/.pybuild/cpython3_3.7/build/beancount/parser cp: cannot stat '/home/tbm/beancount/beancount/utils/file_type': No such file or directory cp: cannot stat 'lexer.l': No such file or directory cp: cannot stat 'grammar.y': No such file or directory /home/tbm/beancount/beancount/utils/file_type has a .py ending and the lexer.l grammar.y are not there. -- Martin Michlmayr https://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
On Sun, Dec 09, 2018 at 05:23:35PM +0200, Martin Michlmayr wrote: > Is the delay because of the test failures mentioned by Zack? The main current issue is that several tests, at least when run under sbuild/cowbuilder, enters infinite loops stat()-ing forever "/PKG-INFO". I have been unable to find the cause, but it's somewhat specific to the Debian build environment in conjunction with pytest. In addition to that there are some test failures too, but they look easy to fix (and the patches should probably be sent upstream for integration). I don't see myself having more time than I already devoted to this in time for the next freeze. But if you're up to tackling this, I can provide more info, e.g., I've a list of the affected tests, in case it might help finding a pattern. The *general* pattern is that tests that exec() stuff are impacted, but it's not specific enough (at least for me) to pinpoint the issue. Cheers -- Stefano Zacchiroli . z...@upsilon.cc . upsilon.cc/zack . . o . . . o . o Computer Science Professor . CTO Software Heritage . . . . . o . . . o o Former Debian Project Leader & OSI Board Director . . . o o o . . . o . « the first rule of tautology club is the first rule of tautology club »
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
Is there any update on this ITP? Is the delay because of the test failures mentioned by Zack? -- Martin Michlmayr https://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
I've updated the package at https://salsa.debian.org/python-team/applications/beancount to match latest release (2.1.2) + mercurial snapshot and fixed one failing test. Two tests still fail. The corresponding functionalities work in the package after installed. Also, they fail in very weird ways, only under python3.7, which are not reproducible outside the package build environment. I'm tempted to just push the attached patch to ignore the two tests and upload. That will give us some user testing time before buster is frozen and, when 3.7 become the default, reassess whether the tests still fail or not. Thoughts? -- Stefano Zacchiroli . z...@upsilon.cc . upsilon.cc/zack . . o . . . o . o Computer Science Professor . CTO Software Heritage . . . . . o . . . o o Former Debian Project Leader & OSI Board Director . . . o o o . . . o . « the first rule of tautology club is the first rule of tautology club » From: Stefano Zacchiroli Date: Mon, 1 Oct 2018 22:58:39 +0200 Subject: ignore tests that fail with pytest 3.7 in a 3.6 environment the tests runs fine outside the build process and the corresponding functionalities work when the package is installed --- beancount/ingest/identify_test.py | 2 ++ beancount/scripts/tutorial_test.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/beancount/ingest/identify_test.py b/beancount/ingest/identify_test.py index f6689da..2d37cb6 100644 --- a/beancount/ingest/identify_test.py +++ b/beancount/ingest/identify_test.py @@ -4,6 +4,7 @@ __license__ = "GNU GPLv2" from os import path from unittest import mock import os +import pytest import re import subprocess import sys @@ -72,6 +73,7 @@ class TestScriptIdentifyFunctions(test_utils.TestTempdirMixin, unittest.TestCase class TestScriptIdentify(scripts_utils.TestScriptsBase): +@pytest.mark.skip def test_identify(self): regexp = textwrap.dedent("""\ \*\*\*\* .*/Downloads/ofxdownload.ofx diff --git a/beancount/scripts/tutorial_test.py b/beancount/scripts/tutorial_test.py index e2b3e32..6dcb5c2 100644 --- a/beancount/scripts/tutorial_test.py +++ b/beancount/scripts/tutorial_test.py @@ -2,6 +2,7 @@ __copyright__ = "Copyright (C) 2014, 2016 Martin Blais" __license__ = "GNU GPLv2" import os +import pytest import shutil import tempfile from os import path @@ -12,6 +13,7 @@ from beancount.scripts import tutorial class TestTutorial(test_utils.TestCase): +@pytest.mark.skip def test_generate_tutorial(self): rootdir = test_utils.find_repository_root(__file__) example_beancount = path.join(rootdir, 'examples', 'example.beancount')
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
* Nicolas Dandrimont[2018-05-01 05:12]: > The packaging is on > https://salsa.debian.org/python-team/applications/beancount > and uses a standard gbp buildpackage (with pristine-tar) workflow. I believe you can drop zip from the build-depends because Martin changed the code to use a Python library (not sure if that needs to be added or it that's built in). "A double-entry bookkeeping computer language" sounds odd to me? Wouldn't "tool" instead of "computer language" make more sense? Can you use GPL-2+ for the packaging? Thanks! -- Martin Michlmayr http://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
* Anthony Towns[2018-04-18 18:02:22 +1000]: > Nicolas Dandrimont wrote: > > * Martin Michlmayr [2018-03-30 17:14:49 +0200]: > > > beancount 2.0 was released a few days ago so it's time to get this > > > into Debian. > > > Anyone interested in packaging it? It's Python code. > > I've been meaning to look into this for a while, as I've been using > > beancount in an org I'm treasurer of. > > I'll put this in the python-team/applications group on > > salsa. Comaintainers welcome! > > Any luck here? I didn't see anything on salsa yet, but maybe I missed it. > Don't suppose you've looked at packaging fava as well? Hi! I've finally gotten around to finalizing the beancount packaging. I've run across a few test failures on the released 2.0.0, but I noticed that they have been fixed by tbm and Martin Blais in upstream PRs; I've followed the easy route and updated the packaging to a snapshot of the upstream mercurial repo: some of the test failures were fixed after a refactoring of the external price source handling, so the patch doesn't apply cleanly to 2.0.0... Yay. The packaging is on https://salsa.debian.org/python-team/applications/beancount and uses a standard gbp buildpackage (with pristine-tar) workflow. The only thing that's not working currently is the dependency split between default dependencies and optional dependencies for extra features. It's not exactly critical but it'd be nice to have. I'd also be happy with better wording for the long description of the packages. Once that's done and if you're happy I think the package should be ready for upload. Cheers, -- Nicolas Dandrimont BOFH excuse #223: The lines are all busy (busied out, that is -- why let them in to begin with?). signature.asc Description: PGP signature
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
Nicolas Dandrimont wrote: > * Martin Michlmayr[2018-03-30 17:14:49 +0200]: > > beancount 2.0 was released a few days ago so it's time to get this > > into Debian. > > Anyone interested in packaging it? It's Python code. > I've been meaning to look into this for a while, as I've been using > beancount in an org I'm treasurer of. > I'll put this in the python-team/applications group on > salsa. Comaintainers welcome! Any luck here? I didn't see anything on salsa yet, but maybe I missed it. Don't suppose you've looked at packaging fava as well? Cheers, aj
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
retitle 799626 ITP: beancount -- command line double-entry bookkeeping system owner 799626 ! thanks * Martin Michlmayr[2018-03-30 17:14:49 +0200]: > * Petter Reinholdtsen [2015-09-21 00:17]: > > * URL : http://furius.ca/beancount/ > > * License : GPL v2+ > > > > A double-entry bookkeeping computer language that lets you define > > financial transaction records in a text file, read them in memory, > > generate a variety of reports from them, and provides a web interface. > > beancount 2.0 was released a few days ago so it's time to get this > into Debian. > > Anyone interested in packaging it? It's Python code. I've been meaning to look into this for a while, as I've been using beancount in an org I'm treasurer of. I'll put this in the python-team/applications group on salsa. Comaintainers welcome! Cheers, -- Nicolas Dandrimont signature.asc Description: PGP signature
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
* Petter Reinholdtsen[2015-09-21 00:17]: > * URL : http://furius.ca/beancount/ > * License : GPL v2+ > > A double-entry bookkeeping computer language that lets you define > financial transaction records in a text file, read them in memory, > generate a variety of reports from them, and provides a web interface. beancount 2.0 was released a few days ago so it's time to get this into Debian. Anyone interested in packaging it? It's Python code. -- Martin Michlmayr http://www.cyrius.com/
Bug#799626: RFP: beancount -- command line double-entry bookkeeping system
Package: wnpp Severity: wishlist * Package name: beancount Version : n/a Upstream Author : Martin Blais * URL : http://furius.ca/beancount/ * License : GPL v2+ Programming Lang: python Description : command line double-entry bookkeeping system A double-entry bookkeeping computer language that lets you define financial transaction records in a text file, read them in memory, generate a variety of reports from them, and provides a web interface. This tools is being considered by SPI for book keeping, and might be useful to include in Debian for this purpose. -- Happy hacking Petter Reinholdtsen