Source code for Gramps Genealogical program
Go to file
Vassilii Khachaturov 63f022348b 7034,7045,7065: back-merge my fixes from trunk
Back-merge from trunk changes to date.py and date_test.py
from the following commits (cumulative, clean apply).

Tests pass (but need to block the CAL_FRENCH on date_test.py:199,
because of bug# 7068 -- skipping it wasn't back-ported in this commit as
it is about the fully fixed issues only!)

	commit fa49752824bd58802773439b35faa39f2d34b151
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 15:44:04 2013 +0000

		provide sensible defautls for all Date.set params

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23126 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 3f32597699f3b372324ad87e6f7a04abac6d19e7
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 15:11:09 2013 +0000

		7045: Setting an invalid date does not raise

		do the sanity checks on a separate date object,
		so that the uncertainty expressed with 0 d/m isn't removed

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23124 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 12edf7e97626e01931c4063b2d94bec3b299a2ed
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 14:23:58 2013 +0000

		7065: Calendar conversion broken for negative date

		fixed, repro steps work as expected now
		date_test still broken due to further blocking issues,
		see #7045

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23123 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 091d4461e9715ab06f1ef6ab3b67517d6608daf3
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 13:24:40 2013 +0000

		7045: Date.set on invalid date does not raise

		refactor _zero_adjust_ymd out of 3 cut-and-paste cases
		the bug with the code inside it remains -- the negative years
		should not be clamped to positive ones!!!!

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23122 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 5987046ac4cac407a4be506da9242f7a5000d878
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 13:00:19 2013 +0000

		7045: Date.set on invalid date does not raise

		Now it does, but another test breaks:

		Traceback (most recent call last):
		  File "/usr/lib/python2.7/unittest/loader.py", line 252, in _find_tests
			module = self._get_module_from_name(name)
		  File "/usr/lib/python2.7/unittest/loader.py", line 230, in _get_module_from_name
			__import__(name)
		  File "/home/vassilii/Gramps/gramps/gen/lib/test/date_test.py", line 136, in <module>
			d.set(quality,modifier,calendar,(4,11,-90,False),"Text comment")
		  File "/home/vassilii/Gramps/gramps/gen/lib/date.py", line 1600, in set
			format(original, value))
		DateError: Invalid year -90 passed in value (4, 11, -90, False)

		because the corresponding year gets adjusted from -90 to 1...

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23121 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit d8876cceb64629ce0a025ff714e4875768ab88a6
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sat Sep 14 11:50:58 2013 +0000

		7034: fix test_copy_ymd_preserves_orig

		broken in r23083

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23120 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 7c163636c8e48149a5b09c211ff3dc146ebd84b2
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Tue Sep 10 17:19:16 2013 +0000

		7034: add remove_stop_date parameter

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23083 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit b45e20da3bd67d864420f99cf59fbb9929c58851
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Mon Sep 9 19:31:13 2013 +0000

		7034: probably_alive() failing when no birth-death

		further refactoring of set_.../set2_... common code
		added accessor get_stop_ymd analogous to get_ymd

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23068 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit f13a3fc23e7f0763c49e605b428b6a175c3f9eeb
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Mon Sep 9 19:31:00 2013 +0000

		7034: probably_alive() failing when no birth-death

		docstring update

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23067 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 9ee312d7ed02520b99d2ca1b28f75c87846aa3c6
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:35:15 2013 +0000

		refactor test

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23059 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 07ca997ebd885ad4d1b205907a00509099ac8f9a
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:23:23 2013 +0000

		consistency between offset and non-offset setters

		added ugly parameter _update2 to set_yr_mon_day, needs refactoring

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23058 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 67a904c529642668fbe34bfc97ef2915278ecbdb
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:23:12 2013 +0000

		fix set_yr_mon_day_offset for compound dates

		now calls set2_yr_mon_day_offset

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23057 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 3db06c36d6449ec75cde49b433349cddad40d596
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:23:02 2013 +0000

		refactor set_yr_mon_day and set2_yr_mon_day

		refactor common base

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23056 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 4192680c72cc0028c22fa207fe3f1ff0940358b3
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:22:52 2013 +0000

		raise DateError in set2_... if not is_compound()

		refactor Date to always use is_compound instead of repeating
		its logic everywhere

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23055 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 44195ede18c5a887d4440b4132bd5321f76ce5ff
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:22:40 2013 +0000

		Add some UT for Date.set2_... and fix bugs

		Cut and paste is evil ;-) fix bugs before I refactor the code...

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23054 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

	commit 14f6e3a3f35e0ff7b67006bf4996ce63ae665098
	Author: Vassilii Khachaturov <vassilii@tarunz.org>
	Date:   Sun Sep 8 19:22:30 2013 +0000

		7034: probably_alive() failing when no birth-death

		docstring fix

		git-svn-id: svn+ssh://svn.code.sf.net/p/gramps/code/trunk@23053 4ae1f11a-8b86-4847-b8af-ab372f36d1fd

svn: r23156
2013-09-17 18:58:06 +00:00
data Move css, javascript and web images to data so that they can be found by webapp 2013-08-28 23:51:42 +00:00
debian .deb package more compliant according to Debian policy 2013-07-29 16:28:34 +00:00
docs 6028: gen module should be gramps.gen 2013-09-13 10:46:43 +00:00
example add some more names to data.gramps (more modern: divorces, etc.) 2013-06-03 20:17:24 +00:00
gramps 7034,7045,7065: back-merge my fixes from trunk 2013-09-17 18:58:06 +00:00
help
images [r22576]Move the HTML resources from gramps/plugins/webstuff 2013-06-23 23:13:13 +00:00
mac Update for Gramps-4.0.1 2013-06-24 18:14:11 +00:00
po update template and french translation 2013-09-17 15:22:01 +00:00
scripts 6283: Re-enable optimization flag (-O) for python 2013-02-25 07:26:36 +00:00
test 7016: new cmdline switches -y/--yes and -q/--quiet 2013-08-29 12:41:31 +00:00
windows Start convertion to introspection. Flat models work, as does relationship view 2012-06-17 21:25:37 +00:00
.gitignore Added tags file 2013-08-06 22:25:52 +00:00
AUTHORS
COPYING
FAQ
Gramps.py [r21613]Determine Paths at Runtime 2013-03-11 22:54:20 +00:00
INSTALL slight tweaks to text, add text property 2013-03-09 17:48:00 +00:00
LICENSE Moved GPLv2 License file up front for easier location and reading. Every project that I have seen has it in the main root directory. 2012-06-09 01:35:37 +00:00
MANIFEST.in need const.py into source tarball 2013-04-06 09:40:49 +00:00
NEWS ready for 4.0.1 2013-06-24 09:10:05 +00:00
README clarify and qualify release information 2013-04-06 16:56:57 +00:00
RELEASE_NOTES road to 4.0.0 2013-05-21 09:15:43 +00:00
setup.py Add command to run unit tests from setup.py 2013-07-31 18:21:33 +00:00
TestPlan.txt
TODO replace with a link to GEPS page 2012-10-27 13:51:56 +00:00

$Id$

Please read the COPYING file first.

If building from source, also read the INSTALL file (at least through the
"SUPER-SHORT VERSION") before going further.

Requirements
--------------------------------
The following packages *MUST* be installed in order for Gramps to work:
   Python 2.7 or greater, Python 3.2 or greater (or both python versions)
   GTK 3.0 or greater
   pygobject 3.3.2 or greater
   cairo, pango, pangocairo with introspection bindings (the gi packages)
   librsvg2 (svg icon view)
   xdg-utils
   bsddb3 is required for Python 3.2 (not python 2.7)

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.


The following packages are *STRONGLY RECOMMENDED* to be installed:

   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
                    http://gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_Main_Window#Geography_Category
                    !! PACKAGERS: unfortunately, at the moment (March 2013),
                    the patches which gramps 4.0 needs osm-gps-map to have
                    are not yet released (as a new osm-gps-map version). The
                    osm-gps-map sources must be dated 6 February 2013 (or
                    later) to have the necessary patches.  You may obtain
                    it from: http://nzjrs.github.com/osm-gps-map/ or else
                    http://sourceforge.net/projects/gramps/files/Dependencies
                    (The necessary version seems to be 0.8 -- or later.)

   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.)

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
                    http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_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.)

   GExiv2           Enables Gramps to manage Exif metadata embedded in your
                    media. Gramps needs version 0.5 or greater.
                    See http://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

   gir-webkit       GObject introspection data of WebKit is required for the
                    hidden view 'Htmlview', which allows websites to be
                    opened in Gramps. Users can unhide the view in the
                    plugin manager.  A html renderer must be installed to
                    use the view.
                    !! PACKAGERS, Test if on your distribution
                    webkit and Gramps is stable. If you obtain crashes, patch 
                    src/plugins/view/htmlrenderer.py and
                    src/plugins/view/geoview.gpr.py, so as to remove:
                       from gi.repository import WebKit as webkit

   goocanvas2:
                    Required for the (user-downloadable) Graphview plugin

No longer needed in 4.0:
   pygoocanvas, pygtk, pyexiv2
No longer needed in 3.3:
   python-enchant Enchant
No longer needed in 3.2:
   python glade bindings
No longer needed in 3.1:
   yelp             Gnome help browser. At the moment no help is shipped


Documentation
---------------------------------
The User Manual is now maintained on the gramps website,
http://www.gramps-project.org/wiki/index.php?title=User_manual

--------------------------------
The Gramps Project
http://gramps-project.org