[Zeitgeist] [Bug 660440] Re: Using logging output for debugging purposes
forget me...i've deleted my branch...Mohamed Amine IL is already working on this... -- Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: In Progress Bug description: Right now, whenever we get a bugreport from a user who is zeitgeist `indirectly` (via unity, gnome-activity-journal, ...) we have to ask the reporter to "open a terminal, run zeitgeist-daemon, do your usual stuff, get us the logging output" This is not optimal, as we a requesting some extra work from our users (who maybe don't care about zeitgeist, they just want there clients to work) and it might also take a long time to get the debugging output, we are depending on our users here. It would be much easier if zeitgeist would also log to a file (or even better to a rotating set of files). On ubuntu we can then make apport to add such files to a bugreport. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 660440] Re: Using logging output for debugging purposes
** Branch linked: lp:~cando/zeitgeist/logging-fixed -- Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: In Progress Bug description: Right now, whenever we get a bugreport from a user who is zeitgeist `indirectly` (via unity, gnome-activity-journal, ...) we have to ask the reporter to "open a terminal, run zeitgeist-daemon, do your usual stuff, get us the logging output" This is not optimal, as we a requesting some extra work from our users (who maybe don't care about zeitgeist, they just want there clients to work) and it might also take a long time to get the debugging output, we are depending on our users here. It would be much easier if zeitgeist would also log to a file (or even better to a rotating set of files). On ubuntu we can then make apport to add such files to a bugreport. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 660440] Re: Using logging output for debugging purposes
** Branch unlinked: lp:~cando/zeitgeist/logging -- Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: In Progress Bug description: Right now, whenever we get a bugreport from a user who is zeitgeist `indirectly` (via unity, gnome-activity-journal, ...) we have to ask the reporter to "open a terminal, run zeitgeist-daemon, do your usual stuff, get us the logging output" This is not optimal, as we a requesting some extra work from our users (who maybe don't care about zeitgeist, they just want there clients to work) and it might also take a long time to get the debugging output, we are depending on our users here. It would be much easier if zeitgeist would also log to a file (or even better to a rotating set of files). On ubuntu we can then make apport to add such files to a bugreport. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Merge] lp:~cando/zeitgeist/logging-fixed into lp:zeitgeist
Cando has proposed merging lp:~cando/zeitgeist/logging-fixed into lp:zeitgeist. Requested reviews: Zeitgeist Framework Team (zeitgeist) Related bugs: #660440 Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 In this branch i've implemented the logging into a file feature, adding the improvements requested by Seif and Markus in this merge proposal: https://code.launchpad.net/~ilidrissi.amine/zeitgeist/zeitgeist-logging/+merge/39237 -- https://code.launchpad.net/~cando/zeitgeist/logging-fixed/+merge/39781 Your team Zeitgeist Framework Team is requested to review the proposed merge of lp:~cando/zeitgeist/logging-fixed into lp:zeitgeist. === modified file '_zeitgeist/engine/__init__.py' --- _zeitgeist/engine/__init__.py 2010-10-19 13:54:12 + +++ _zeitgeist/engine/__init__.py 2010-11-01 20:58:45 + @@ -48,6 +48,7 @@ BaseDirectory.save_data_path("zeitgeist")) DATABASE_FILE = os.environ.get("ZEITGEIST_DATABASE_PATH", os.path.join(DATA_PATH, "activity.sqlite")) + LOG_PATH = os.path.join(BaseDirectory.xdg_cache_home, "zeitgeist", "daemon.log") # D-Bus DBUS_INTERFACE = ZeitgeistDBusInterface.INTERFACE_NAME === modified file 'zeitgeist-daemon.py' --- zeitgeist-daemon.py 2010-10-20 10:24:42 + +++ zeitgeist-daemon.py 2010-11-01 20:58:45 + @@ -25,18 +25,18 @@ import dbus.mainloop.glib import gettext import logging +import logging.handlers import optparse import signal from subprocess import Popen, PIPE +from xdg import BaseDirectory # Make sure we can find the private _zeitgeist namespace from zeitgeist import _config _config.setup_path() -# Make sure we can load user extensions, and that they take priority over -# system level extensions from _zeitgeist.engine import constants -sys.path.insert(0, constants.USER_EXTENSION_PATH) +LOG_PATH = constants.LOG_PATH gettext.install("zeitgeist", _config.localedir, unicode=True) @@ -60,6 +60,7 @@ p.wait() return p.stdout.read().strip() or None +<<< TREE def parse_commandline(): parser = optparse.OptionParser(version = _config.VERSION, option_class=Options) parser.add_option( @@ -86,9 +87,50 @@ return parser def do_shell_completion(parser): +=== +class Options(optparse.Option): + + TYPES = optparse.Option.TYPES + ("log_levels",) + TYPE_CHECKER = copy(optparse.Option.TYPE_CHECKER) + TYPE_CHECKER["log_levels"] = check_loglevel + + log_levels = ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL') + +parser = optparse.OptionParser(version = _config.VERSION, option_class=Options) +parser.add_option( + "-r", "--replace", + action = "store_true", default=False, dest = "replace", + help = _("if another Zeitgeist instance is already running, replace it")) +parser.add_option( + "--no-datahub", "--no-passive-loggers", + action = "store_false", default=True, dest = "start_datahub", + help = _("do not start zeitgeist-datahub automatically")) +parser.add_option( + "--log-level", + action = "store", type="log_levels", default="DEBUG", dest="log_level", + help = _("how much information should be printed; possible values:") + \ + " %s" % ', '.join(Options.log_levels)) +parser.add_option( + "--quit", + action = "store_true", default=False, dest = "quit", + help = _("if another Zeitgeist instance is already running, replace it")) +parser.add_option( + "--shell-completion", + action = "store_true", default=False, dest = "shell_completion", + help = optparse.SUPPRESS_HELP) +parser.add_option( + "--log-file", + action = "store", default = LOG_PATH, dest = "log_file", + help = _("Specifies where the log file is saved")) + +(_config.options, _config.arguments) = parser.parse_args() + +if _config.options.shell_completion: +>>> MERGE-SOURCE options = set() for option in (str(option) for option in parser.option_list): options.update(option.split("/")) +<<< TREE print " ".join(options) return 0 @@ -100,6 +142,48 @@ def start_datahub(): DATAHUB = "zeitgeist-datahub" +=== + print ' '.join(options) + sys.exit(0) + +if _config.options.log_file == LOG_PATH: + try: + os.mkdir(os.path.join(BaseDirectory.xdg_cache_home, "zeitgeist")) + except OSError: + pass # directory is already there +# +# Logger stuffs +# +logging.basicConfig(format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", +level=getattr(logging, _config.options.log_level)) + +# create the rotating file handler +log_handler = logging.handlers.RotatingFileHandler( + filename=_config.options.log_file, maxBytes=20971520, backupCount=3) + +log_formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s") +log_handler.setFormatter(log_formatter) + +logging.getLogger().addHandler(log_handler) + + +# Make sure we can load user extensions, and that they take priority over +# system level extensions +sys.path.insert(0, constants.USER_EXTENSION_PATH) + +from _zeitgeist.engine.remote import RemoteInterface + +dbus.mainloop.glib.DBusGMainLoop(set_as_defau
[Zeitgeist] [Merge] lp:~cando/zeitgeist/logging into lp:zeitgeist
The proposal to merge lp:~cando/zeitgeist/logging into lp:zeitgeist has been updated. Description changed to: In this branch i've implemented the logging into a file feature, adding the improvements requested by Seif and Markus in this merge proposal: https://code.launchpad.net/~ilidrissi.amine/zeitgeist/zeitgeist-logging/+merge/39237 -- https://code.launchpad.net/~cando/zeitgeist/logging/+merge/39780 Your team Zeitgeist Framework Team is requested to review the proposed merge of lp:~cando/zeitgeist/logging into lp:zeitgeist. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Merge] lp:~cando/zeitgeist/logging into lp:zeitgeist
Cando has proposed merging lp:~cando/zeitgeist/logging into lp:zeitgeist. Requested reviews: Zeitgeist Framework Team (zeitgeist) Related bugs: #660440 Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 In this branch i've implemented the logging into a file feature, adding the improvements requested by Seif and Markus in this merge proposal: https://code.launchpad.net/~ilidrissi.amine/zeitgeist/zeitgeist-logging/+merge/39237 -- https://code.launchpad.net/~cando/zeitgeist/logging/+merge/39780 Your team Zeitgeist Framework Team is requested to review the proposed merge of lp:~cando/zeitgeist/logging into lp:zeitgeist. === modified file '_zeitgeist/engine/__init__.py' --- _zeitgeist/engine/__init__.py 2010-10-19 13:54:12 + +++ _zeitgeist/engine/__init__.py 2010-11-01 20:41:50 + @@ -48,6 +48,7 @@ BaseDirectory.save_data_path("zeitgeist")) DATABASE_FILE = os.environ.get("ZEITGEIST_DATABASE_PATH", os.path.join(DATA_PATH, "activity.sqlite")) + LOG_PATH = os.path.join(BaseDirectory.xdg_cache_home, "zeitgeist", "daemon.log") # D-Bus DBUS_INTERFACE = ZeitgeistDBusInterface.INTERFACE_NAME === modified file 'zeitgeist-daemon.py' --- zeitgeist-daemon.py 2010-10-20 10:24:42 + +++ zeitgeist-daemon.py 2010-11-01 20:41:50 + @@ -25,18 +25,18 @@ import dbus.mainloop.glib import gettext import logging +import logging.handlers import optparse import signal from subprocess import Popen, PIPE +from xdg import BaseDirectory # Make sure we can find the private _zeitgeist namespace from zeitgeist import _config _config.setup_path() -# Make sure we can load user extensions, and that they take priority over -# system level extensions from _zeitgeist.engine import constants -sys.path.insert(0, constants.USER_EXTENSION_PATH) +LOG_PATH = constants.LOG_PATH gettext.install("zeitgeist", _config.localedir, unicode=True) @@ -60,6 +60,7 @@ p.wait() return p.stdout.read().strip() or None +<<< TREE def parse_commandline(): parser = optparse.OptionParser(version = _config.VERSION, option_class=Options) parser.add_option( @@ -86,9 +87,50 @@ return parser def do_shell_completion(parser): +=== +class Options(optparse.Option): + + TYPES = optparse.Option.TYPES + ("log_levels",) + TYPE_CHECKER = copy(optparse.Option.TYPE_CHECKER) + TYPE_CHECKER["log_levels"] = check_loglevel + + log_levels = ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL') + +parser = optparse.OptionParser(version = _config.VERSION, option_class=Options) +parser.add_option( + "-r", "--replace", + action = "store_true", default=False, dest = "replace", + help = _("if another Zeitgeist instance is already running, replace it")) +parser.add_option( + "--no-datahub", "--no-passive-loggers", + action = "store_false", default=True, dest = "start_datahub", + help = _("do not start zeitgeist-datahub automatically")) +parser.add_option( + "--log-level", + action = "store", type="log_levels", default="DEBUG", dest="log_level", + help = _("how much information should be printed; possible values:") + \ + " %s" % ', '.join(Options.log_levels)) +parser.add_option( + "--quit", + action = "store_true", default=False, dest = "quit", + help = _("if another Zeitgeist instance is already running, replace it")) +parser.add_option( + "--shell-completion", + action = "store_true", default=False, dest = "shell_completion", + help = optparse.SUPPRESS_HELP) +parser.add_option( + "--log-file", + action = "store", default = LOG_PATH, dest = "log_file", + help = _("Specifies where the log file is saved")) + +(_config.options, _config.arguments) = parser.parse_args() + +if _config.options.shell_completion: +>>> MERGE-SOURCE options = set() for option in (str(option) for option in parser.option_list): options.update(option.split("/")) +<<< TREE print " ".join(options) return 0 @@ -100,6 +142,48 @@ def start_datahub(): DATAHUB = "zeitgeist-datahub" +=== + print ' '.join(options) + sys.exit(0) + +if _config.options.log_file == LOG_PATH: + try: + os.mkdir(os.path.join(BaseDirectory.xdg_cache_home, "zeitgeist")) + except OSError: + pass # directory is already there +# +# Logger stuffs +# +logging.basicConfig(format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", +level=getattr(logging, _config.options.log_level)) + +# create the rotating file handler +log_handler = logging.handlers.RotatingFileHandler( + filename=_config.options.log_file, maxBytes=20971520, backupCount=3) + +log_formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s") +log_handler.setFormatter(log_formatter) + +logging.getLogger().addHandler(log_handler) + + +# Make sure we can load user extensions, and that they take priority over +# system level extensions +sys.path.insert(0, constants.USER_EXTENSION_PATH) + +from _zeitgeist.engine.remote import RemoteInterface + +dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) +mainlo
[Zeitgeist] [Bug 660440] Re: Using logging output for debugging purposes
i've linked my branch with my changes...I've seen that Mohamed Amine IL has already fixed something...anyway my branch is a bit different... ** Branch linked: lp:~cando/zeitgeist/logging -- Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: In Progress Bug description: Right now, whenever we get a bugreport from a user who is zeitgeist `indirectly` (via unity, gnome-activity-journal, ...) we have to ask the reporter to "open a terminal, run zeitgeist-daemon, do your usual stuff, get us the logging output" This is not optimal, as we a requesting some extra work from our users (who maybe don't care about zeitgeist, they just want there clients to work) and it might also take a long time to get the debugging output, we are depending on our users here. It would be much easier if zeitgeist would also log to a file (or even better to a rotating set of files). On ubuntu we can then make apport to add such files to a bugreport. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 663552] Re: can't disable recently used documents
Changing target back to 'unity-place-files' because this bug is about a missing toggle in the UI ** Project changed: zeitgeist => unity-place-files -- can't disable recently used documents https://bugs.launchpad.net/bugs/663552 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Unity Files Place: Incomplete Bug description: I think this is a privacy/ security issue. I can't seem to find a way to disable the logging and display of most recently used files in unity. Privacy values in the open source community would seem to dictate that the user should be able to disable this feature. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 660423] Re: add `make run` targets to rootlevel Makefile
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- add `make run` targets to rootlevel Makefile https://bugs.launchpad.net/bugs/660423 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: While working on some changes in zeitgeist-daemon.py I realized that testing changes to the actual zeitgeist-daemon is hard, I always have to remember to run make && ./zeitgeist-daemon The `make run` target should do the right thing and simply wrap the command above. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 397715] Re: I18N of zeitgeist
One part of this bug, not using lp:zeitgeist as target branch for translations, has been fixed, but there are still some issues with i18n in zeitgeist, as mentioned in the description and in one of my last comments. ** Changed in: zeitgeist Milestone: 0.6 => 0.7 -- I18N of zeitgeist https://bugs.launchpad.net/bugs/397715 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Confirmed Bug description: zeitgeist is using gettext for I18N in various places, but its usage is inconsistent. A quick grep with `grep -R -E "[^\_]\_{1}\(" .` shows we are using gettext for: - some logging messages - the name and description of the FF DataProvider - display name of Content and Source objects in our datamodel (real gettext support is not implemented yet) Thinking about this three items a bit I think none of them make sense at all. Logging is for debugging purposes, in the future we will ask our user to add a log file to a bugreport. If the logging messages are translated to a random language we will hardly understand the content. Translating the display name of Content and Source object also makes no sense, instead of this it should be done by the client. This way one database can be accessed with different language settings. And if we agree on the last two arguments, it also makes less sense for the last item. But just in case I'm missing the point here, and we decide to have I18N support in zeitgeist we should decide which parts we would exactly like to translate, and dig trough the code to add language support to related elements consistently. Markus ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 598666] Re: Error when trying to fetch items
** Changed in: zeitgeist Milestone: 0.6 => None -- Error when trying to fetch items https://bugs.launchpad.net/bugs/598666 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Incomplete Bug description: When i try to fetch all items in one query i get Error from Zeitgeist engine: org.freedesktop.DBus.Python.KeyError: Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/dbus/service.py", line 702, in _message_cb retval = candidate_method(self, *args, **keywords) File "/usr/local/share/zeitgeist/_zeitgeist/engine/remote.py", line 254, in FindEvents event_templates, storage_state, num_events, result_type, sender)) File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 378, in find_events return self._find_events(1, *args) File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 366, in _find_events return self.get_events(rows=result, sender=sender) File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 188, in get_events events[event.id].append_subject(self._get_subject_from_row(row)) File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 160, in _get_subject_from_row getattr(self, "_" + field).value(row["subj_" + field])) File "/usr/local/share/zeitgeist/_zeitgeist/engine/sql.py", line 422, in value return self._inv_dict[id] KeyError: 138 This looks serious ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 634740] Re: explicitly define on a per testcase basis which extension needs to be loaded
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- explicitly define on a per testcase basis which extension needs to be loaded https://bugs.launchpad.net/bugs/634740 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: Right now we load all available extensions in our test runs. So if someone as a random (experimental) extension in ~/.local/share/zeitgeist/extensions which fails all our remote and engine testcases fail too. As we have no influence on the installed extensions on the users system we should explicitly configure them on each test run. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 641198] Re: Prefix search is not using an index
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Prefix search is not using an index https://bugs.launchpad.net/bugs/641198 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: In the prefix search we are using a 'GLOB' sql-statement, this statement is not using the index and thus slow, some timings from me running the attached script: * Database with ~50k events * ~1% of these event have a subject with uri beginning with 'http://aa' * searching for all uris beginning with 'http://aa' using the 'GLOB' expression (what we have now in lp:zeitgeist) takes ~0.03 sec * changing this query to some (x >= S AND x < T) statement reduces this time to ~0.002 sec This is easy to implement (and test) for ascii chars, but as we support unicode esp. testing seems to be a bit tricky ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 642686] Re: Add subj_uri_id and subj_origin_id columns to event_view
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Add subj_uri_id and subj_origin_id columns to event_view https://bugs.launchpad.net/bugs/642686 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: If we add subj_uri_id and subj_origin_id columns to the event_view we could make the prefix searches about 10% faster. Combined with the upcoming optimization of the GLOB statement it will be possible to reduce the avg. time for this kind of queries from ~0.20s to ~0.12s. As always I've added a script where you can test the proposed change to event_view yourself. *** 551 entries starting with 'http://aa' SELECT DISTINCT id FROM event_view WHERE(timestamp >= ? AND timestamp <= ? AND ((subj_uri IN (SELECT value FROM uri WHERE value GLOB ? ORDER BY timestamp DESC [u'0', u'9223372036854775807', u'http://aa*'] ---> get len(ids)=551 using pure sql in 0.206047s SELECT DISTINCT id FROM event_view_new WHERE(timestamp >= ? AND timestamp <= ? AND ((subj_uri_id IN (SELECT id FROM uri WHERE value GLOB ? ORDER BY timestamp DESC [u'0', u'9223372036854775807', u'http://aa*'] ---> get len(ids)=551 using pure sql in 0.179763s ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 660415] Re: zeitgeist-daemon.py has a bad code structure
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- zeitgeist-daemon.py has a bad code structure https://bugs.launchpad.net/bugs/660415 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: The code of zeitgeist-daemon.py is very hard to read, let's restructure the code! (This is more like a reminder for myself to work on it, but I would like to fix it after bug #655164 has been fixed) ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 642772] Re: event_view changes requires schema upgrade
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- event_view changes requires schema upgrade https://bugs.launchpad.net/bugs/642772 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: The recently merged changes to use journal_mode=WAL and adding some columns to event_view requires schema upgrades. 1) Setting WAL journalling *permanently* makes the DB unreadable with sqlite 3.6 which is still widely deployed. Notably if I boot back into Ubuntu Lucid Lynx Zeitgeist will no longer work as lucid only ships sqlite 3.6. 2) Contrary to what is stated in the merge request for the event_view changes the event_view VIEW is *not* regenerated on each startup. That is one of the whole points of doing schema versioning. This change makes Zeitgeist trunk unable to return any results if run on an older db. Strangely enough it doesn't raise any errors... Guys - if you are making low level changes to our DB structure like both of these changes are, please make sure you understand all the ramifications before merging. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 660440] Re: Using logging output for debugging purposes
** Changed in: zeitgeist Milestone: 0.6 => 0.7 -- Using logging output for debugging purposes https://bugs.launchpad.net/bugs/660440 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: In Progress Bug description: Right now, whenever we get a bugreport from a user who is zeitgeist `indirectly` (via unity, gnome-activity-journal, ...) we have to ask the reporter to "open a terminal, run zeitgeist-daemon, do your usual stuff, get us the logging output" This is not optimal, as we a requesting some extra work from our users (who maybe don't care about zeitgeist, they just want there clients to work) and it might also take a long time to get the debugging output, we are depending on our users here. It would be much easier if zeitgeist would also log to a file (or even better to a rotating set of files). On ubuntu we can then make apport to add such files to a bugreport. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 634744] Re: test suite fails if zeitgeist is installed on the system
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- test suite fails if zeitgeist is installed on the system https://bugs.launchpad.net/bugs/634744 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: Today I tried to run our test suite on a system which has zeitgeist installed and running (maverick netbook edition). The test suite fails with a lot of errors because it was unable to kill the running daemon instance. We should make sure to run our tests on its own private dbus message bus. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 650930] Re: Make timestamp related queries faster
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Make timestamp related queries faster https://bugs.launchpad.net/bugs/650930 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: When grep'ing the source of `unity-place-applications` and `unity-place-files` you will find out that these two products are using the FindEvents method, and both products are using this method to query for the complete time interval [0, sys.maxint] (aka. TimeRange.always()). And I've seen similar queries in other clients too. So I think it is worth trying to optimize the query for this kind of queries. The attached script is timing the exactly same query which is used in `unity-place-applications` on a database which contains 50k events, with 100 randomly choosen different actors. On lp:zeitgeist the find_events query returns the 6 events with most popular actors in ~0.22s ---> MostPopularActor: get len(ids)=6 using .find_eventids() in 0.224661s By making the sql queries on the timestamp column conditional we will be able to reduce this time to ---> MostPopularActor: get len(ids)=6 using .find_eventids() in 0.069161s ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 655164] Re: Support more ResultType
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Support more ResultType https://bugs.launchpad.net/bugs/655164 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: I am in discussion with the Software Center team and it seems like they are growing fond of Zeitgeist. There is a feature in their queue that they would like to implement and where Zeitgeist can make it happen: - Software Center wants to suggest applications to be installed based on the Most or Recently Used Subject Interpretations and/or mimetypes. Currently I plan to call all events within a specific timeperiod and sort internally but it would be more helpful to have this info provided by Zeitgeist. So long story short I suggest 2 new ResultTypes: 1) MostPopular/MostRecent/LeastPopular/LeastRecent Interpretation 2) MostPopular/MostRecent/LeastPopular/LeastRecent Mimetype ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 630593] Re: Replace old datahub with vala port
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Replace old datahub with vala port https://bugs.launchpad.net/bugs/630593 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Status in Zeitgeist Datahub: In Progress Bug description: Now with mhr3's vala datahub port, I think we should get rid of the python version ASAP. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 643303] Re: Upgrade of the db schema strategy for version jumps
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- Upgrade of the db schema strategy for version jumps https://bugs.launchpad.net/bugs/643303 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: We have to discuss how to support versions jump in the upgrade path of our db schema, like from ("core", 0) to ("core", 2). This becomes even more important when we reach the next version. For me there are two solution: 1.) write 'dummy' upgrade scripts, like core_0_2.py, which do not more than running core_0_1.run() and core_1_2.run() one after another 2.) add some magic to sql._do_schema_upgrade() which automatically tries to find an upgrade path and run the 'shortest' possible one. There is an issue with both solutions: right now the upgrade mechanism is designed in a way that after each data upgrade the schema upgrade is done. In both solutions the schema upgrade will be done *after* the full upgrade path. This can be handled by solution 1.) in the sanest possible way, the downside is that 1.) does not scale well for big numbers of schema versions around. Any Ideas? ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Bug 665607] Re: DB upgrades not backwards compatible (even when their are)
** Changed in: zeitgeist Status: Fix Committed => Fix Released -- DB upgrades not backwards compatible (even when their are) https://bugs.launchpad.net/bugs/665607 You received this bug notification because you are a member of Zeitgeist Framework Team, which is subscribed to Zeitgeist Framework. Status in Zeitgeist Framework: Fix Released Bug description: Not sure if we already fixed this, but just in case. INFO:zeitgeist.sql:Upgrading database 'core' from version 2 to 1. This may take a while CRITICAL:zeitgeist.sql:Failed to upgrade database 'core' from version 2 to 1: No module named core_2_1 ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Dev] ANNOUNCE: Zeitgeist 0.6
On behalf of the Zeitgeist team I am proud to announce the release of Zeitgeist 0.6 `Buzzer Beater`. What is Zeitgeist? --- Zeitgeist is a service which logs the users's activities and events, anywhere from files opened to websites visited and conversations, and makes this information readily available for other applications to use. It is also able to establish relationships between items based on similarity and usage patterns. Website: http://zeitgeist-project.com/ Launchpad Project (with bug tracker): https://launchpad.net/zeitgeist Wiki: http://live.gnome.org/Zeitgeist See also: * Sub-projects of Zeitgeist: - Extensions for Zeitgeist - https://launchpad.net/zeitgeist-extensions - Data-sources for Zeitgeist (extensions for 3th party applications) - https://launchpad.net/zeitgeist-dataproviders - Datahub for zeitgeist - https://launchpad.net/zeitgeist-datahub * Dedicated Graphical User Interfaces: - GNOME Activity Journal - https://launchpad.net/gnome-activity-journal - Sezen - https://launchpad.net/sezen What has changed? --- Engine: - Added 'zeitgeist-integrity-checker.py' tool to check the integrity of an activity log. - optimization of ZeitgeistEngine.find_related_uris() by using a different algorithm. - Improved database updates (LP: #643303, #665607) The updates scripts can now handle versions jumps (e.g from core_n to core_n+4). Database downgrades are also possible if schema version are backward-compatible. - If FindEvents-queries are run over the complete TimeRange intervall don't add timestamp conditions to the SQL statement (LP: #650930) - Improved speed of prefix-search queries by always using the index (LP: #641198) Python API: - Added a bunch of new result types: MostPopularSubjectInterpretation, MostRecentSubjectInterpretation, LeastPopularSubjectInterpretation, LeastRecentSubjectInterpretation, MostPopularMimetype, LeastPopularMimetype, MostRecentMimetype and LeastRecentMimetype. Please see the API documentation for further details (LP: #655164) Daemon: - Code-Improvements to zeitgeist-daemon (LP: #660415). - fixed `--log-level` option of zeitgeist-daemon, library code does not set the log level anymore, the application using the python library has to take care of it. Overall: - 'zeitgeist-datahub' is not part of the zeitgeist project anymore, please use the new datahub implementation written my Michal Hruby as a replacement [0] (LP: #630593). - Updates to the test suite. - Translation updates (added Asturian and Slovenian, various updates). - Added `make run` target to the rootlevel Makefile (LP: #660423) [0] https://launchpad.net/zeitgeist-datahub Have a nice day, Markus Korn (thekorn) ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.5
Hello Zeitgeist Framework Team, On 2010-11-01 08:28z (11 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.5 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.3
Hello Zeitgeist Framework Team, On 2010-11-01 08:28z (10 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.3 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.1
Hello Zeitgeist Framework Team, On 2010-11-01 08:28z (9 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.1 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.5
Hello Zeitgeist Framework Team, On 2010-11-01 07:40z (3 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.5 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.3
Hello Zeitgeist Framework Team, On 2010-11-01 07:40z (3 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.3 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] Translation template import - zeitgeist in Zeitgeist Framework 0.1
Hello Zeitgeist Framework Team, On 2010-11-01 07:40z (2 minutes ago), you uploaded a translation template for zeitgeist in Zeitgeist Framework 0.1 in Launchpad. The template has now been imported successfully. Thank you, The Launchpad team ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp