ParIT's package and Python bindings examples?

Mark Jenkins mark at parit.ca
Sat Sep 18 15:13:46 EDT 2010


offonoffoff.... wrote:
 > oops, http://parit.ca/projects/pythongnucash/ is out of date
 >
 > http://www.parit.ca/products/finance/apt-repository

My apologies for not jumping in here sooner offonoffoff...., I've been 
meaning to put an http redirect in place for those pages for a long 
time; finally did so this morning, 
http://parit.ca/projects/pythongnucash/ and 
http://parit.ca/projects/gnucash/ now redirect to
http://www.parit.ca/products/finance/

Should update that old Savannah page to redirect folks here upstream as 
well.

 > But i did not find any example code in the unpacked source
 > Used
 >
 > http://www.parit.ca/products/finance/apt-repository

You should note that GnuCash 2.2.x was never available here upstream 
with python bindings; the python bindings that appear in ParIT's 
releases are a backport of the submission that was made to GnuCash 
trunk. Our 2.2.9 backport hasn't been updated since April 2009, but a 
lot of things things have changed here in trunk since that time, so you 
can't really apply much that you learn about them here in trunk to using 
those.

Figuring out what aspects of the new example scripts are applicable to 
the old bindings definitely requires reading the bindings source and 
gnucash headers source to figure out what functions are available. Doing 
any further backporting of the work that has took place in trunk back to 
2.2.9 definitely requires understanding what the source does.

ParIT isn't planning any further work backporting gnucash trunk work to 
2.2.9 backport either (unless someone wanted to pay us for it); as we're 
looking forward to distributing and offering support services for 
GnuCash 2.4 when its ready.

Here are the 2.2 python binding example scripts which we believe will 
work with that old release.
http://svn.parit.ca/gnucash/branches/2.2-python-bindings/src/optional/python-bindings/example_scripts/ 

If there is any problem with those, you should ask me for help, as 
gnucash 2.2.9 + patches is of no concern here upstream where the only 
rightful concern is trunk and making GnuCash 2.4 happen.

The reason the example scripts didn't make it into our source tarball:
http://repo.parit.ca/hardy/gnucash_2.2.9-parit2009.04.0.tar.gz
was that this automake file was lacking the right magic to export the 
example scripts on $ make dist
http://svn.parit.ca/gnucash/branches/2.2-python-bindings/src/optional/python-bindings/Makefile.am

These test files may work too
http://svn.parit.ca/gnucash/branches/2.2-python-bindings/src/optional/python-bindings/tests/

I regret that we weren't able to distribute an upstream gnucash 2.2.9 
tarball plus patches in a standard debian tar + patches style to make 
this distinction between original 2.2.9 and our patches more clear, and 
that instead we ended up shipping a monolithic tarball.

The differences between 2.2.9 upstream and our 2.2.9 build are the 
following:

Python bindings (backported from upstream trunk)
svn diff -c 225 \
http://svn.parit.ca/gnucash/branches/2.2-parit-releases/

Multicurrency support (backported from upstream trunk)
svn diff -r 225:227 \
http://svn.parit.ca/gnucash/branches/2.2-parit-releases/

Different splash screen
http://svn.parit.ca/gnucash/branches/2.2-parit-releases/src/pixmaps/gnucash_splash.png


For now, if you're interested in the python bindings you're going to 
have to choose between using gnucash trunk, which can be hard to build, 
or ParIT's 2.2.9 build, which I wouldn't expect the upstream community 
here to offer support for. The python bindings api has changed, so code 
written for one set of bindings does have to be ported carefully to the 
other.

ParIT does have funding in place to package GnuCash 2.4 for Ubuntu 
10.04, pre-compiled for i386 and x86_64 with python bindings enabled, 
which we'll be hosting in our apt repository when its ready. Might try 
to get this into more official Ubuntu backport repos as well.

I might even get started on that prior to the 2.4 release by using 
trunk. It looks like this would of saved you a world of trouble; and 
this may motivate me to get moving on that sooner so that others with 
interest in the python bindings don't get stuck like you have and can 
try it out as soon as possible.

So I'd recommend just waiting until that comes along or trying to get 
trunk working yourself instead of bothering with 2.2.9; as it is indeed 
yesteryears news.


Mark Jenkins
Member
ParIT Worker Co-op

cc GnuCash devel
cc Christoph Holtermann
cc fellow ParIT members
cc Scott Balneaves
cc Mike Evans


More information about the gnucash-devel mailing list