Error after upgrade, roster nuked.
Bug description
I updated gajim to latest version from hg and this is what happened: At first an error occured:
AttributeError: 'module' object has no attribute 'Element'
Traceback (most recent call last):
File "gajim.py", line 409, in \<module>
interface = Interface()
File "/usr/share/gajim/src/gui_interface.py", line 3191, in __init__
cfg_was_read = parser.read()
File "/usr/share/gajim/src/common/optparser.py", line 78, in read
self.update_config(old_version, new_version)
File "/usr/share/gajim/src/common/optparser.py", line 221, in update_config
caps.capscache.initialize_from_db()
File "/usr/share/gajim/src/common/caps.py", line 335, in initialize_from_db
self._remove_outdated_caps()
File "/usr/share/gajim/src/common/caps.py", line 347, in _remove_outdated_caps
self.logger.clean_caps_table()
File "/usr/share/gajim/src/common/logger.py", line 907, in clean_caps_table
self.simple_commit(sql)
File "/usr/share/gajim/src/common/logger.py", line 152, in simple_commit
self.cur.execute(sql_to_commit)
sqlite3.OperationalError: no such column: last_seen
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File "/usr/lib64/python2.6/atexit.py", line 24, in _run_exitfuncs
func(*targs, **kargs)
File "gajim.py", line 365, in on_exit
gajim.interface.roster.prepare_quit()
AttributeError: Interface instance has no attribute 'roster'
Error in sys.exitfunc:
Traceback (most recent call last):
File "/usr/lib64/python2.6/atexit.py", line 24, in _run_exitfuncs
func(*targs, **kargs)
File "gajim.py", line 365, in on_exit
gajim.interface.roster.prepare_quit()
AttributeError: Interface instance has no attribute 'roster'
probably because database was not converted between versions.
The worse is - my roster got nuked.
Steps to reproduce
Have gajim 0.13.1 installed and then install "svn" version and run it.
Software versions
OS version: Gentoo Linux
GTK version: 2.16.6
PyGTK version: 2.16.0