Source code for Gramps Genealogical program
Go to file
Paul Culley e584704e7b Update Merge tests to actually run
So this was a lot of work...

Updated to use lxml, steep learning curve for someone who never examined XML before...

The merge test code needed some updates because it was last used with an older version of the Gramps XML.

Found another bug in the mergefamilyquery code when test started running; another nonetype issue.

Found another bug in the mergepersonquery code when test started running; another nonetype issue.

Couldn't get the subprocess stuff to work right, so changed code to just call Gramps with capture, similar to export_tests. This in turn required that importxml and exportxml be slightly changed to support StringIO redirection of stdin and stdout.

And test_util needed a change to allow stdout to accept an unencoded stream, so I added an option to use BytesIO for this test as well.

Added some code to save input, result, and expected data to files in Gramps temp directory for debugging whenever an error occurred. Easier to use my editor in diff mode than look at the outputs.
2016-12-06 11:17:54 +11:00
bash Bash completetions: a little cleaning up 2016-05-06 16:02:09 -04:00
data Merge pull request #262 from prculley/bug8887 2016-11-05 14:11:58 +11:00
debian 9801: recommend 'gir1.2-goocanvas-2.0' on debian package 2016-11-26 13:00:21 +01:00
docs Remove PrivateSourceNote as per e64fa655 2016-09-25 10:47:11 +10:00
example move files for testing gramps out of example/gramps, per Nick 2016-10-02 11:39:45 -07:00
gramps Update Merge tests to actually run 2016-12-06 11:17:54 +11:00
help Update COPYING-DOCS 2015-04-03 13:20:27 +11:00
images Feature: Gep-030 FanChart2Way 2016-11-26 18:00:08 +00:00
mac Update graphviz to 2.38. 2016-08-16 12:14:21 -07:00
po czech translation update 2016-12-05 13:23:01 +01:00
scripts 6283: test flag for python on new script, not on Gramps.py... (thank you Paul) 2013-02-25 07:24:40 +00:00
test Create module for database utilities 2016-11-24 17:57:18 +00:00
windows Remove trailing whitespaces 2016-09-01 14:52:45 +10:00
.gitattributes Export test module and some tests 2016-07-07 13:50:26 -05:00
.gitignore 7921 Move holidays.xml.in to data [refactor] 2016-04-16 16:38:43 +10:00
.mailmap remove my personal email address from .mailcap file 2016-04-09 09:29:17 -07:00
.pylintrc Add .pylintrc file 2016-01-10 16:41:44 +00:00
.travis.yml Update Merge tests to actually run 2016-12-06 11:17:54 +11:00
AUTHORS
COPYING 6918: http://lintian.debian.org/tags/old-fsf-address-in-copyright-file.html 2013-11-07 11:26:57 -08:00
FAQ 7553 Change GraphViz to Graphviz 2015-07-19 14:24:33 +10:00
Gramps.py Move GRAMPS_RESOURCE default into grampsapp.main() 2016-04-14 20:58:27 -04:00
INSTALL 8047 - Update INSTALL file to document --resourcepath option 2015-06-15 22:35:32 +02:00
MANIFEST.in Fixes for install after removal of old LICENSE 2016-10-28 08:08:40 +11:00
NEWS 7553 Change GraphViz to Graphviz 2015-07-19 14:24:33 +10:00
README.md 9749: Move experimental Select API code into a branch 2016-10-12 21:46:52 +01:00
RELEASE_NOTES clarify and qualify release information 2013-04-06 16:57:29 +00:00
setup.py add plugins/db/dbapi/settings.ini to setup 2016-11-12 15:01:15 +01:00
TestPlan.txt
TODO replace with a link to GEPS page 2012-10-27 13:51:56 +00:00

The Gramps Project ( https://gramps-project.org ) Build Statuscodecov.io

We strive to produce a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists.

Please read the COPYING file first.

Please read the INSTALL file if you intend to build from source.

Requirements

The following packages MUST be installed in order for Gramps to work:

The following three packages with GObject Introspection bindings (the gi packages)

The following package is needed for full translation of the interface to your language:

  • language-pack-gnome-xx

Translation of GTK elements to your language, with xx your language code; e.g. for Dutch you need language-pack-gnome-nl. The translation of the Gramps strings is included with the gramps source.

  • osmgpsmap

Used to show maps in the geography view. It may be osmgpsmap, osm-gps-map, or python-osmgpsmap, but the Python bindings for this must also be present. Without this the GeoView will not be active, see https://gramps-project.org/wiki/index.php?title=Gramps_4.2_Wiki_Manual_-_Categories#Geography_Category

  • Graphviz

    Enable creation of graphs using Graphviz engine. Without this, three reports cannot be run. Obtain it from: http://www.graphviz.org

  • PyICU

Improves localised sorting in Gramps. In particular, this applies to sorting in the various views and in the Narrative Web output. It is particularly helpful for non-Latin characters, for non-English locales and on MS Windows and Mac OS X platforms. If it is not available, sorting is done through built-in libraries. PyICU is fairly widely available through the package managers of distributions. See http://pyicu.osafoundation.org/ (These are Python bindings for the ICU package. https://pypi.python.org/pypi/PyICU/)

The following packages are optional:

  • gtkspell

Enable spell checking in the notes. Gtkspell depends on enchant. A version of gtkspell with gobject introspection is needed, so minimally version 3.0.0

  • rcs

The GNU Revision Control System (RCS) can be used to manage multiple revisions of your family trees. See info at https://gramps-project.org/wiki/index.php?title=Gramps_4.2_Wiki_Manual_-_Manage_Family_Trees#Archiving_a_Family_Tree Only rcs is needed, NO python bindings are required

  • PIL

Python Image Library is needed to crop images and also to convert non-JPG images to JPG so as to include them in LaTeX output. (For Python3 a different source may be needed, python-imaging or python-pillow or python3-pillow)

  • GExiv2

Enables Gramps to manage Exif metadata embedded in your media. Gramps needs version 0.5 or greater. See https://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#GExiv2_for_Image_metadata

  • ttf-freefont

More font support in the reports

Optional packages required by Third-party Addons

Third-party Addons are written by users and developers and unless stated are not officially part of Gramps. For more information about Addons see: https://gramps-project.org/wiki/index.php?title=Third-party_Plugins

Prerequistes required for the following Addons to work:

No longer needed:

  • Since Gramps 4.2: gir-webkit

  • Since Gramps 4.0: pygoocanvas, pygtk, pyexiv2

  • Since Gramps 3.3: python-enchant Enchant

  • Since Gramps 3.2: python glade bindings

  • Since Gramps 3.1: yelp - Gnome help browser. No offline help is shipped see Gramps website for User manual

Documentation

The User Manual is maintained on the Gramps website: