Difference between revisions of "GRAMPS work required for Python 2.6"
(→Database Change) |
(→Database Change) |
||
Line 21: | Line 21: | ||
* The log system must be changed: | * The log system must be changed: | ||
− | ** 4.6: db.DB_LOG_AUTOREMOVE ==> 4.7: db.DB_LOG_AUTO_REMOVE (there is a customized dbdir.py on [http://timaba.de/packages/archlinux/i686/dbdir.py]) | + | ** 4.6: db.DB_LOG_AUTOREMOVE ==> 4.7: db.DB_LOG_AUTO_REMOVE. '''FIXED in branch/trunk''', see [http://www.gramps-project.org/bugs/view.php?id=2483 2483] (there is also a customized dbdir.py on [http://timaba.de/packages/archlinux/i686/dbdir.py]) |
*** This change to dbdir.py allows gramps to start up and load a db. A log subsystem error is raised if Rebuild Reference Maps is run (Repair Database in the Family Tree editor runs without apparent error). | *** This change to dbdir.py allows gramps to start up and load a db. A log subsystem error is raised if Rebuild Reference Maps is run (Repair Database in the Family Tree editor runs without apparent error). | ||
− | ** method set_flags must be researched. Change to log_set_config() method where needed. | + | ** method DB->set_flags must be researched. Change to log_set_config() method where needed. '''SHOULD BE FIXED in branch/trunk''', see [http://www.gramps-project.org/bugs/view.php?id=2483 2483] |
From the above it looks like we will need two parellel implementations, so in config a flag will need to be raised: 4.6- database engine or 4.6+ database engine. For the first, the code is as today, for the second, use the new methods. Is this the best way to handle this?? | From the above it looks like we will need two parellel implementations, so in config a flag will need to be raised: 4.6- database engine or 4.6+ database engine. For the first, the code is as today, for the second, use the new methods. Is this the best way to handle this?? |
Revision as of 08:33, 13 November 2008
Work to do to have GRAMPS work in python 2.6
Required Changes
- Change md5 module by hashlib.
- where is this used? Keys? Website? Do the keys remain the same after changing to hashlib?
Database Change
Python 2.6 will normally ship with bsddb 4.7.x , which has some important changes from 4.6.x.
Details:
Points:
- Is upgrade of the old database possible?? So can a database created with 4.6 be opened with 4.7? We can expect the reverse not to be possible? If so, do we need a new database version just for this, so we can stop users opening the db made with 4.7 again with 4.6 ?
- A database created with bsddb 4.6 can be opened with 4.7 if minor changes are made to dbdir.py (as below for DB_LOG_AUTOREMOVE).
- The log system must be changed:
- 4.6: db.DB_LOG_AUTOREMOVE ==> 4.7: db.DB_LOG_AUTO_REMOVE. FIXED in branch/trunk, see 2483 (there is also a customized dbdir.py on [3])
- This change to dbdir.py allows gramps to start up and load a db. A log subsystem error is raised if Rebuild Reference Maps is run (Repair Database in the Family Tree editor runs without apparent error).
- method DB->set_flags must be researched. Change to log_set_config() method where needed. SHOULD BE FIXED in branch/trunk, see 2483
- 4.6: db.DB_LOG_AUTOREMOVE ==> 4.7: db.DB_LOG_AUTO_REMOVE. FIXED in branch/trunk, see 2483 (there is also a customized dbdir.py on [3])
From the above it looks like we will need two parellel implementations, so in config a flag will need to be raised: 4.6- database engine or 4.6+ database engine. For the first, the code is as today, for the second, use the new methods. Is this the best way to handle this??