# Generated by Makefile. Do not edit.

2010-06-11  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* VERSION:
	* _zeitgeist/engine/remote.py:
	* configure.ac:

	Release Zeitgeist 0.4.0

2010-06-10  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* doc/zeitgeist/source/tutorial_datamodel_symbols.rst:
	* _zeitgeist/engine/remote.py:
	* doc/zeitgeist/source/index.rst:

	Doc updates. Remove test-datamodel-symbols.rst from the docs as it's broken

2010-06-10  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* NEWS:

	Update NEWS in prep for 0.4.0

2010-06-09  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Add (and test) method TimeRange.is_always() which can be used as an optimization here and there to cut out parts of a query that'll always match

2010-06-09  Markus Korn  <thekorn@gmx.de>

	* HACKING:

	added additional information to the 'Release'-section of the HACKING document

2010-06-09  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/core_0_1.py:

	Add missing 'import sqlite3' to core_0_1.py upgrader

2010-06-08  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/core_0_1.py:

	Check for sqlite3.IntegrityErrors in the core_0_1 upgrade. These may occur in case some of the new interpretations or manifestations are already there... We have to fail silently here because it would be a mess to untangle in the upgrade

2010-06-08  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* configure.ac:

	Install the upgrade module core_0_1.py in 'make install'

2010-06-08  Launchpad Code Hosting  <codehost@crowberry>

	* po/eo.po:

	Launchpad automatic translations update.

2010-06-07  Launchpad Code Hosting  <codehost@crowberry>

	* po/eo.po:
	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/gl.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/oc.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/ur.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-05-31  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* AUTHORS:
	* CONTRIBUTORS:
	* MAINTAINERS:

	Merge Seif's branch lp:~zeitgeist/zeitgeist/cleanup updating AUTHORS, CONTRIBUTORS, and MAINTAINERS to reflect reality

2010-05-31  Seif Lotfy  <seif@Gary>

	* AUTHORS:
	* CONTRIBUTORS:
	* MAINTAINERS:

	clean up AUTHORS, CONTIRBUTORS & MAINTAINERS

2010-05-31  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/loggers/datasources/recent.py:

	Merge tehk's branch lp:~email-tehk/zeitgeist/recent-fix fixing an obsolete ref to Interpretation.MUSIC (should be AUDIO) in zeitgeist-datahub's recent.py DP

2010-05-28  tehk  <tehk@tehk-desktop>

	* _zeitgeist/loggers/datasources/recent.py:

	Fixed the recent manager

2010-05-30  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/core_0_1.py:

	Fix bug #587545: "core_0_1 upgrade script's table columns are reversed"

2010-05-29  Launchpad Code Hosting  <codehost@crowberry>

	* po/lt.po:

	Launchpad automatic translations update.

2010-05-28  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:
	* _zeitgeist/engine/upgrades/core_0_1.py:

	Bugfix: Upgrades failed on initialized DB
	
	Bugfix: Don't run upgrade hooks if the DB is a :memory: one

2010-05-28  Launchpad Code Hosting  <codehost@crowberry>

	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/gl.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/oc.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/ur.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades:
	* _zeitgeist/engine/upgrades/__init__.py:
	* _zeitgeist/engine/upgrades/core_0_1.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/sql.py:

	Merge lp:~kamstrup/zeitgeist/schema_versions
	
	Versioning of the core DB schema (and also adds the possibility to version other schema if we ever have that).
	
	On startup we check if the schema version for the 'core' schema is what we expect and if that is case we assume the schema is good and no further setup is needed.
	
	If the schema version is not what we want we look for a module called _zeitgeist.engine.upgrades.core_$oldversion_$newversion and execute its run() method if it's there.
	In our case we are talking upgrading from core schema 0 to 1, so that would be _zeitgeist.engine.upgrades.core_0_1.py.
	
	Note that I did it this way in order to minimize the number of .py files we need to stat and/or parse at startup. If no upgrades are necessary, none of the upgrade .py files are parsed let alone read from disk.

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:

	exit if the upgrade fails... running on a undefined schema version is very dangerous

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:

	Fix hard coded 'core' schema in a SQL statement for the upgrade logic

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* po/lt.po:
	* po/ur.po:
	* test/README.tests:
	* _zeitgeist/lrucache.py:
	* test/lrucache-test.py:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* doc/zeitgeist-daemon.1:
	* po/gl.po:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* test/run-all-tests.py:
	* test/scalability-test.py:
	* test/testutils.py:
	* zeitgeist/datamodel.py:
	* test/test-datamodel-symbols.rst:
	* test/test-datamodel-symbols.rst.NEEDS_FIXING:
	* test/test-sql.py:
	* test/sql-test.py:

	Merge with trunk

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/core_0_1.py:

	Describe the fixmes is core_0_1.py upgrade

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:
	* _zeitgeist/engine/upgrades/core_0_1.py:

	Upgrades from 0.3.3 to 0.3.4 seems to be working now

2010-05-27  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:
	* _zeitgeist/engine/upgrades/core_0_1.py:

	Bugfixes for schema upgrades

2010-05-20  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades/core_0_1.py:

	Map all pre 0.3.3 type URIs to post 0.3.4 URIs in upgrades/core_0_1.py

2010-05-20  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:

	Add a note as to why we don't immediately return after and upgrade, but falls though to the normal setup code.

2010-05-14  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/upgrades:
	* _zeitgeist/engine/upgrades/__init__.py:
	* _zeitgeist/engine/upgrades/core_0_1.py:
	* _zeitgeist/engine/sql.py:

	Implement dynamic upgrade hooks. Upgrade hooks live in _zeitgeist/engine/upgrades/$schema_name_$old_version_$new_version.
	
	Add an upgrade hook core_0_1.py which'll upgrade the DB from ZG 0.3.3 to 0.3.4. Currently it just errs out.

2010-05-14  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/sql.py:

	Define the schema name "core" in _zeitgeist.engine.constants

2010-05-14  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/sql.py:

	Move def of core schema version to _zeitgeist.engine.constants

2010-05-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/sql.py:

	Implement DB schema versioning. This cuts DB loading time from ~12ms to 2ms on my dual core SSD laptop. Probably even more enhancements on netbooks
	
	TODO: Stub code for upgrading DBs and detecting unversionedd DBs (everything pre 0.3.4)

2010-05-26  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist-daemon.1:

	added documentation for the ZEITGEIIST_{DEFAULT,EXTRA}_EXTENSIONS env.
	variables to the zeitgeist-daemon manpage (LP: #585779)

2010-05-25  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	Added two new environment variables `ZEITGEIST_DEFAULT_EXTENSIONs` and
	`ZEITGEIST_EXTRA_EXTENSIONS` to define which extensions are loaded on daemon
	startup. (LP: #483556)

2010-05-20  Markus Korn  <thekorn@gmx.de>

	* test/scalability-test.py:

	* test/scalability-test.py:
	- this script is now spawning its own daemon process
	- added benchmark for bug 583065

2010-05-17  Launchpad Code Hosting  <codehost@crowberry>

	* po/lt.po:

	Launchpad automatic translations update.

2010-05-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/lrucache.py:
	* test/lrucache-test.py:
	* _zeitgeist/Makefile.am:

	Removed code related to the LRUCache implementation, it is not used
	anywhere.

2010-05-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* zeitgeist/datamodel.py:
	* test/test-sql.py:
	* test/sql-test.py:

	Added wildcard support to some query fields, thanks to Seif and Siegfried
	for reviewing the code.
	Wildcards can be at the end of some query fields, like
	mimetype=text/*
	which queries for all subjects with mimetype beginning with 'text/', see the
	related bugreport (LP: #485966) for detailed information.

2010-05-15  Markus Korn  <thekorn@gmx.de>

	* test/README.tests:
	* test/engine-test.py:
	* test/remote-test.py:
	* test/run-all-tests.py:
	* test/testutils.py:

	merged changes from lp:zeitgeist

2010-05-15  Markus Korn  <thekorn@gmx.de>

	* test/test-sql.py:
	* test/sql-test.py:

	* moved sql tests to sql-test.py, this way the sql tests are also run by the
	run-all-tests.py tool
	* added more testcases to the add_text_clause test

2010-05-15  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	merged changes from lp:zeitgeist

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:

	added missing docstrings

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/sql.py:

	fixed typo

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/sql.py:

	added bugnumber to a bug mentioned in a comment

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/sql.py:
	* test/engine-test.py:

	wildcard are now working correctly on the sql side

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	added more testcases

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/test-sql.py:

	added testcases for WhereClause.add_text_condition()

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/sql.py:

	We are using GLOB instead of LIKE now, this means wildcard searches get
	case sensitive.

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* test/engine-test.py:

	* added optional 'cache' argument to WhereClause.add_text_condition which
	should be either None or a dict-like objects which converts a value into
	its id-counterpart
	* changed the LIKE statement to do the right thing
	* added a first testcase for wildcards in queries

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/sql.py:

	implemented first version of a LIKE statement

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:

	started working on wildcard support on the sql side

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	started support of wildcards for some template fields

2010-05-15  Markus Korn  <thekorn@gmx.de>

	* test/README.tests:
	* test/engine-test.py:
	* test/remote-test.py:
	* test/run-all-tests.py:
	* test/testutils.py:

	To get clean test results one should now run
	test/run-all-tests.py 2> /dev/null
	From now on all test results are print to stdout, were all debugging
	information will go to stderr.

2010-05-15  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	added 'real-life' test of negation for symbols using there dependencies

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* zeitgeist/datamodel.py:

	Raise a ValueError if someone tries to query by storage field, this feature
	might be added in the future (LP: #580364)

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* test/test-sql.py:
	* zeitgeist/datamodel.py:

	Added negation support to some template fields, this is the first part of a
	fix of bug 485966, thanks Mikkel for doing the review.

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	made EQUAL a real function

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	merged changes from lp:zeitgeist

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:
	* test/engine-test.py:

	more engine tests

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	more engine tests

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	added some engine testcases for the negation implementation

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	added some more testcases for negation to the datamodel testcases

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* po/ur.po:

	merged changes from lp:zeitgeist

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	merged changes from lp:zeitgeist

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* test/test-sql.py:

	added some negation testcases for the SQL WhereClause

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	added another testcase for the symbols side of this issue

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:

	added doctstring and comment, and a sensible handling for subject.Text

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	merged changes from lp:zeitgeist and resolved some conflicts

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* zeitgeist/datamodel.py:

	* NEGATION_OPERATOR is now importable from zeitgeist.datamodel
	* WhereClause takes an optional argument 'negation' which will result in a
	'NOT ...'-sql-statement
	* started working on negation support on the sql side.

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	added another testcase and hide some debug output

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	fixed typos and added first testcase

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added negation support to some fields of Event and Subject; this is only the 'datamodel' side, the sql side still needs to be done

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:
	* test/test-datamodel-symbols.rst:
	* test/test-datamodel-symbols.rst.NEEDS_FIXING:

	merged changes from lp:zeitgeist

2010-05-14  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	added testcase for bug 580364

2010-05-14  Launchpad Code Hosting  <codehost@crowberry>

	* po/ur.po:

	Launchpad automatic translations update.

2010-05-14  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Take event ids into account when building SQL query from event templates

2010-05-13  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Bugfix: Set event.id before passing events to the extension hooks. This way extensions can actually use the events for other purposes...

2010-05-13  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Set event.id before passing events to the extension hooks

2010-05-13  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Bugfix: When expanding queries over child types that wasn't already registered in the DB we'd get an IndexError and return an empty result set. Also added unit test that catches this bug

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel-symbols.rst:
	* test/test-datamodel-symbols.rst.NEEDS_FIXING:

	disabled test-datamodel-symbols doctest for now, this test needs to be
	adopted to the new way symbols are working

2010-05-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	zeitgeist/datamodel.py: changes to {Subject,Event}.matches_template() to
	only call Symbol.uri_is_child_of() if the field can contain at Symbol, and
	not for all fields.

2010-05-13  Launchpad Code Hosting  <codehost@crowberry>

	* po/ur.po:
	* po/gl.po:

	Launchpad automatic translations update.

2010-05-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Fix review comments from Markus: https://code.launchpad.net/~kamstrup/zeitgeist/query-expansion/+merge/25000

2010-05-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* zeitgeist/datamodel.py:

	Return a list of Symbols instead of string uris from Symbol.find_child_uris_extended

2010-05-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Remove left over debug statement

2010-05-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/test-sql.py:
	* _zeitgeist/engine/main.py:
	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Merge lp:~kamstrup/zeitgeist/query-expansion
	
	So what does "query expansion" mean. Consider a query for subject with interp. nfo:Media. Right that would only match stuff that has been explicitly identified as nfo:Media (which is not much since we usually can identify whther stuff is Audio, Image, or Video data).
	
	With query expansion we'll also match any children of nfo:Media. Ie also nfo:Image, nfo:Audio, and nfo:Video. Also recursively matching children of these like nfo:RasterImage and nfo:Vector image.
	
	The way it's implemented is really simple. We simply expand the tree of children and compile a big OR query with everything.

2010-05-09  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Yay! All unit tests for the engine passing - now with query expansion

2010-05-09  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Booya! Only ONE of the unit tests fail now with query expansion enabled

2010-05-06  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Add new method Symbol.find_child_uris_extended() that'll be most useful for query expansion inside the engine

2010-05-05  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/test-sql.py:

	Add test cases for the engine's sql module

2010-05-04  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Working (and unit tested) template matching of hierarchical interpretation- and manifestation types. Not implemented on the SQL level - that is comming up.

2010-05-05  Launchpad Code Hosting  <codehost@crowberry>

	* po/gl.po:

	Launchpad automatic translations update.

2010-05-04  Launchpad Code Hosting  <codehost@crowberry>

	* po/gl.po:

	Launchpad automatic translations update.

2010-05-03  Launchpad Code Hosting  <codehost@crowberry>

	* po/gl.po:
	* po/pt.po:

	Launchpad automatic translations update.

2010-05-02  Launchpad Code Hosting  <codehost@crowberry>

	* po/pt.po:

	Launchpad automatic translations update.

2010-05-02  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Fix DeleteEvents to work with arbitrarily huge amounts of IDs.

2010-04-30  Launchpad Code Hosting  <codehost@crowberry>

	* po/gl.po:

	Launchpad automatic translations update.

2010-04-29  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/loggers/datasources/recent.py:

	Fix crasher s/Video/VIDEO in recent.py

2010-04-29  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist/datamodel.py:

	Update recent.py to reflect new datamodel

2010-04-29  Launchpad Code Hosting  <codehost@crowberry>

	* po/bg.po:

	Launchpad automatic translations update.

2010-04-28  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* zeitgeist/datamodel.py:

	Optimize Symbol.{get,iter}_all_children() by using a cache of all child symbols instead of doing a recursive crawl each time

2010-04-28  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* README.Ontology:
	* TODO:
	* doc/zeitgeist/source/tutorial_datamodel_symbols.rst:
	* extra/PythonSerializer.py:
	* extra/README.zeitgeist.trig:
	* extra/ontology:
	* extra/ontology/Makefile.am:
	* extra/ontology/nao.trig:
	* extra/ontology/ncal.trig:
	* extra/ontology/nco.trig:
	* extra/ontology/nfo.trig:
	* extra/ontology/nie.trig:
	* extra/ontology/nmm.trig:
	* extra/ontology/nmo.trig:
	* extra/ontology/zg.trig:
	* extra/rdfxml2py:
	* test/test-datamodel-symbols.rst:
	* .bzrignore:
	* autogen.sh:
	* configure.ac:
	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/index.rst:
	* extra/Makefile.am:
	* test/blacklist-test.py:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	Merge lp:~zeitgeist/zeitgeist/ontology_definition. This introduces some slight API breaks on the Python level and maybe the need for a DB version upgrade to reflect new URIs here and there. We will tackle these issues in trunk.

2010-04-26  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/PythonSerializer.py:
	* test/blacklist-test.py:
	* test/datamodel-test.py:
	* test/engine-test.py:
	* test/remote-test.py:

	Change symbol names from CamelCase to CAMEL_CASE. This improves backwards compa of the API. The conversion is done at compile time

2010-04-26  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Compile Symbol._parents into a hashmap name->Symbol on module load time

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	Make sure to resolve uris of parent symbols to the actual symbol objects

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* README.Ontology:
	* extra/PythonSerializer.py:

	* updated README.Ontology
	* cleaned up some code in the ontology serializer

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	Fixed last failing testcase

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* test/datamodel-test.py:
	* test/test-datamodel-symbols.rst:
	* zeitgeist/datamodel.py:

	Fixed failing testcases, only one to go!
	- creating symbols on the fly by calling some random attribute, like 
	SomeSymbol.foo, is not supported anymore, all symbols have to be
	registered by calling the Symbol factory class
	- added code to auto_resolve symbol structures
	- Symbols can be looked-up by name and uri
	Only the testcase for lazy lookup of symbols is still failing
	(Interpretation.boo.bar == Interpretation.bar).

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* README.Ontology:
	* test/engine-test.py:

	Fixed test/engine-test.py and added comment about missing symbols to
	README.Ontology

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	zeitgeist/datamodel.py: removed _SYMBOLS_BY_NAME as this dict is not used
	anywhere, and also does not make any sense, because there is no guarantee
	for symbol names being unique.

2010-04-25  Markus Korn  <thekorn@gmx.de>

	* extra/packaging/debian/source:
	* extra/packaging/debian/source/format:
	* extra/packaging/debian/zeitgeist-core.bash-completion:
	* po/bg.po:
	* po/oc.po:
	* extra/packaging/debian/control.in:
	* HACKING:
	* NEWS:
	* VERSION:
	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/sql.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* configure.ac:
	* doc/zeitgeist-daemon.1:
	* doc/zeitgeist/source/datamodel.rst:
	* extra/packaging/debian/changelog:
	* extra/packaging/debian/compat:
	* extra/packaging/debian/control:
	* extra/packaging/debian/rules:
	* extra/packaging/debian/zeitgeist-core.install:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:
	* test/engine-extension-test.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* test/test-engine-extension.rst:
	* zeitgeist-daemon.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	merged changes from lp:zeitgeist

2010-04-23  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	There is no Interpretation.Tag nymore, let's use Interpretation.Audio to
	check general attributes

2010-04-23  Markus Korn  <thekorn@gmx.de>

	* README.Ontology:
	* test/datamodel-test.py:

	* added TODO/README for the onto branch
	* added docstring to failing testcase

2010-04-23  Markus Korn  <thekorn@gmx.de>

	* test/blacklist-test.py:

	Fixed Symbol names in the blacklist test:
	* OPEN_EVENT -> AccessEvent
	* User_ACTIVITY -> UserActivity

2010-04-08  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/engine-test.py:

	Fix stray s/FILE/File in engine-test.py
	
	Fix Manifestation.File -> FileDataObject in engine-test.py

2010-04-08  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/datamodel-test.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	Greatly optimize and simplify datamodel.py. Both with regards to imports and lookups. Some of the tests cases are failing. It appears that the datahub injects stuff in my running tests... Also some failures in the datamodel-test.py test cases. Mainly because we no longer allow dynamic addition of Symbols and that nao.trig fails to generate nao.py for some reason...

2010-04-07  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* zeitgeist/datamodel.py:

	Define shortcuts to EventManifestation and EventInterpretation

2010-03-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/packaging:
	* extra/packaging/create-debian-snapshot-package.sh:
	* extra/packaging/debian:
	* extra/packaging/debian/changelog:
	* extra/packaging/debian/compat:
	* extra/packaging/debian/control:
	* extra/packaging/debian/control.in:
	* extra/packaging/debian/copyright:
	* extra/packaging/debian/pyversions:
	* extra/packaging/debian/rules:
	* extra/packaging/debian/watch:
	* extra/packaging/debian/zeitgeist-core.install:
	* extra/packaging/debian/zeitgeist-datahub.install:
	* _zeitgeist/engine/remote.py:
	* po/pl.po:

	Merge with trunk.

2010-03-24  Markus Korn  <thekorn@gmx.de>

	* extra/Makefile.am:

	added missing files to extra/Makefile.am

2010-03-22  Markus Korn  <thekorn@gmx.de>

	* autogen.sh:

	check if 'rapper' is installed when running autogen.sh

2010-03-22  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added missing bracket

2010-03-22  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	second argument of os.path.join must not start with a '/', otherwise it will be taken as root

2010-03-22  Markus Korn  <thekorn@gmx.de>

	* po/id.po:
	* po/pl.po:
	* _zeitgeist/engine/main.py:
	* po/zh_CN.po:

	merged chanes from lp:zeitgeist

2010-03-18  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	the compiled ontology should be located in $datadir/zeitgeist/ontology when
	running zeitgeist on a systemwide installationk

2010-03-18  Markus Korn  <thekorn@gmx.de>

	* po/el.po:
	* po/tr.po:
	* po/da.po:
	* po/ru.po:

	merged with lp:zeitgeist

2010-03-15  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added comment

2010-03-15  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	doing some profiling right now; experimenting with some optimizations

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	timing symbol loading

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:

	prettify docs by ordering symbols by name

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	try the very best to avoid possible name conflicts in Symbol.__getattr__ by making sure to never return the symbol itself

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel-symbols.rst:

	fixed doctest

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added smarter algorithm to resolve lazy parent declarations

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	the python serializer is now a bit smarter, it
	* does not create collections explicitly
	* ignore subclasses which are not (in-) direct subclasses of
	'Interpretation' and 'Manifestation'

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/nmm.trig:

	merged nmm.trig import

2010-03-12  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/nmm.trig:

	Import nmm.trig

2010-03-12  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	fixed missing symbols filter

2010-03-11  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* TODO:
	* zeitgeist/datamodel.py:

	Add some docs about how the type system works
	
	Add some more work for us in the TODO (sigh)

2010-03-11  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* zeitgeist/datamodel.py:

	Rename 'parent' -> 'parents' since we have multiple inheritance
	
	Better debug messages when symbols can not be resolved
	
	Document parent/child getters on Symbol

2010-03-11  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/nfo.trig:

	Fix label of nfo:FileDataObject to be "File" not "file". I should be shot for this - but it's required for our name spacing to work

2010-03-11  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/nao.trig:
	* extra/ontology/ncal.trig:
	* extra/ontology/nco.trig:
	* extra/ontology/nmo.trig:
	* extra/ontology/Makefile.am:
	* extra/ontology/nfo.trig:
	* extra/ontology/nie.trig:
	* extra/ontology/zeo.trig:
	* extra/ontology/zg.trig:

	Rename zeo.trig -> zg.trig to be consistent with our name spacing
	
	Import (relevant) Nepomuk ontologies from shared-desktop-onotologies v. 0.3 (released 2010-03-08)

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:
	* test/run-all-tests.py:
	* test/test-engine-extension.rst:

	merged from lp:zeitgeist

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* TODO:

	* added TODO for this branch

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/tutorial_datamodel_symbols.rst:
	* test/test-datamodel-symbols.rst:
	* doc/zeitgeist/source/index.rst:

	* added tutorial/doctest for datamodel.Symbol
	* added this tutorial to the sphinx documentation

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	redirect message if an unrecognized symbol is created to sys.stderr

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	all Symbol.get_* methods now return frozensets

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:

	* symbols are now documented in the sphiny documentation

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	* added DataSource to datamodel.__all__
	* be more verbose if zeitgeist ontology cannot be loaded when running
	locally

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/datamodel.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* po/da.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nl.po:
	* po/ro.po:
	* po/ru.po:
	* po/te.po:
	* po/zh_CN.po:
	* test/data/apriori_events_sets-2.js:
	* test/data/apriori_events_sets.js:
	* tools:
	* tools/README:
	* tools/cli:
	* tools/cli/zeitgeist-update-database.py:
	* tools/gtk:
	* tools/gtk/zeitgeist-data-sources-gtk.py:
	* NEWS:
	* VERSION:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/Makefile.am:
	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* doc/zeitgeist-daemon.1:
	* doc/zeitgeist-datahub.1:
	* doc/zeitgeist/source/dbus_api.rst:
	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* test/data/apriori_events.js:
	* test/engine-extension-test.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* test/testutils.py:
	* zeitgeist-daemon.py:
	* zeitgeist-datahub.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Merged changes from lp:zeitgeist
	during the process a few conflicts were resolved in zeitgeist/datamodel.py -
	this needs some double checks at some point. All tests run sucessfully

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	fixed copyright

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	fixed tests for datamodel to work with the new datamodel with is dynamical
	loading symbols from the ontology representation
	TODO: needs more and more specific tests

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	fixed adding to the collection of child symbols if parent is a Symbol object
	and not a string representation

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	readded loading of ontology

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	removed debugging statement

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:
	* zeitgeist/datamodel.py:

	* moved datamodel_ng to datamodel

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* removed custom Symbol.__str__, makes no sense
	* added helper function to beautify result of Symbol.__repr__

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	added missing bits (Event, Subject, TimeRange, NULL_EVENT) to datamodel_ng

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* fixed Symbol.__parent, Symbol.__repr__ and added Symbol.__str__
	* added zeitgeist.datamodel_ng.__all__ to list 'public' objects

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* added ways to resolve parents by symbol uri
	* when getting symbol by uri try to also lookup in all children as a last
	chance
	* added some code comments

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* zeitgeist/datamodel_ng.py:

	* resolve children/parents of a Symbol in a lazy way, such that a parent
	symbol does not have to exists when a symbol is initialized
	* a Symbol can now have multible parents, the parent parameter of Symbol is
	now a set of strings

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/Makefile.am:

	* extra/ontology/: added make target to create one big python representation
	of all ontologies used by zeitgeist. This allows
	inter-ontology-definitions

2010-03-10  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	removed remaining references to uppercase naming convention for symbols

2010-03-10  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* zeitgeist/datamodel_ng.py:

	Symbol names are now CamelCase instead of all UPPERCASE to be compatible
	with Nepomuk.
	NOTE: this breaks API and DB

2010-03-10  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	re-ordered items in zeo.trig and added description for each part

2010-03-09  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/zeo.trig:

	Rename OpenEvent to AccessEvent as discussed on IRC
	
	Document all event- manifestations and interpretations

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* Manifestation and Interpretation are now hard-coded root symbols
	* added one more sample (TODO: propert tests)

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	all symbols are now properly attached to their parent symbol

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	we don't need a label for EventInterpretation

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	adjust location of generated python code

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	made exceptions more verbose.

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	* removed more enum related stuff
	* all symbols are now Symbols, there are no SymbolCollections anymore
	* properly escape strings

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	All Symbols can now have child and parent symbols, so there is no concept of
	SymbolCollections anymore.

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/nfo.trig:
	* extra/ontology/Makefile.am:

	added nfo.trig

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	* changed namespace uri of nie according the latest commit to the serializer

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	* changes nie namepsace uri to use the revision used in Nepomuk
	* removed enum related code, as enums are not part of the ontology
	* we don't parse Resource objects yet, commented out related code as it does
	not do anything yet

2010-03-08  Markus Korn  <thekorn@gmx.de>

	* .bzrignore:

	ignore resulting *.py in extra/ontology

2010-03-07  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* zeitgeist/datamodel_ng.py:

	Make test code in datamodel_bg take advantage of autogenerated ontology

2010-03-07  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/Makefile.am:
	* extra/trig2py:
	* configure.ac:
	* extra/Makefile.am:

	Enable autotools magic to generate .py modules from .trig on build time. For now we'll install then in $PREFIX/share/zeitgeist/ontology/

2010-03-06  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology/zeo.trig:
	* zeitgeist/datamodel_ng.py:

	Don't include ResultType and StorageState enums in the ontology

2010-03-06  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	made make_symbol_name() more efficient

2010-03-06  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	* removed whitespces at line eniding from PythonSerializer
	* added header to PythonSerializer

2010-03-06  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* fixed empty spaces at line ending
	* added header to zeitgeist/datamodel_ng.py

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	sort enums by id in python representaion of the ontology

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	added ResultType enums to the ontology

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* added Enum support to the python datemodel
	* raise RuntimeError if parsing of trig file goes wrong

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	added support for enums to the serializer

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/README.zeitgeist.trig:

	added a discussion item to the trig.REAMDME

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	Added StorageState enum, please also consider this as a proof of concept of
	how to present enums in an ontology.
	NEEDS DISCUSSION:
	* in rdfs:_NNN   NNN must be gt 0, this is different to the old impl

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/ontology_parser.py:

	removed custom parser of trig files, we are using rdflib

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel_ng.py:

	* added datamodel_ng.py: this modul loads the datamodel from the ontology
	definition, it will replace the old one, but we will use both for now

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* extra/README.zeitgeist.trig:

	* don't create python representation of the Event class for now
	* In the past symbols were named like 'USER_ACTIVITY' whereas in the trig
	definition file they are called 'UserActivity'. Added make_symbol_name()
	to convert the names to the old one.
	(NOTE: this needs discussion, I personally prefer 'UserActivity', should
	we stay with this converter function, or add an alias mechanism to use
	both naming conventions)

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/rdfxml2py:

	simplified parser code

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* extra/ontology/zeo.trig:

	* rdfs:label is also used to define a name of a collection

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* extra/ontology/zeo.trig:

	* for symbols rdfs:label is used as displayname
	* if rdfs:label is not defined for a symbol use the name instead
	* translation of displayname is (for now) done on python level
	(NOTE: this needs further discussion/investigation)

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:
	* extra/ontology/zeo.trig:

	* rdfs:comment attributes are used as docstring in general, and are esp.
	used as docstrings for symbols
	* added generalized code to generate symbol_collections and symbols

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	* output to stream argument instead of stdout
	* changed way of symbol registration

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/PythonSerializer.py:

	started working on a python serializer

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:
	* extra/rdfxml2py:

	* each property needs a label, this label will be used as the name of this
	symbol in its implementation, this is why this label must not contain
	whitespaces 

2010-03-05  Markus Korn  <thekorn@gmx.de>

	* extra/ontology/zeo.trig:

	various syntax fixes to zeo.trig

2010-03-04  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/rdfxml2py:

	We're ready to generate Python code from an rdflib.ConjunctiveGraph instance now... Just someone needs to do it :-)

2010-03-04  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* extra/ontology:
	* extra/ontology/nie.trig:
	* extra/rdfxml2py:
	* extra/trig2py:
	* extra/zeitgeist.trig:
	* extra/ontology/zeo.trig:

	Start writing scripts to convert .trig -> .xml -> .py

2010-01-27  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* extra/zeitgeist.trig:

	My first shot at an ontology - still a lot missing...

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* extra/ontology_parser.py:

	fixed line ending in two of the regular expressions, now even parsing nfo.trig is sucsessfull

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* extra/ontology_parser.py:

	added first version of an ontology parser

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* extra/README.zeitgeist.trig:

	added some useful urls

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* extra/README.zeitgeist.trig:

	added question to README

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* extra/README.zeitgeist.trig:
	* extra/zeitgeist.trig:

	started working on an external definition of the zeitgeist ontology

2010-04-28  Seif Lotfy  <seif@Gary>

	* po/bg.po:
	* doc/zeitgeist-daemon.1:

	fixed issues with empty uri set for related items

2010-04-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist-daemon.1:

	Add --no-datahub to zeitgeist-daemon manpage.

2010-04-24  Launchpad Code Hosting  <codehost@crowberry>

	* po/bg.po:

	Launchpad automatic translations update.

2010-04-23  Siegfried-Angel Gevatter Pujals  <siegfried@gevatter.com>

	* po/bg.po:

	Add Bulgarian translation.

2010-04-28  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	fix test issues

2010-04-22  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* VERSION:
	* _zeitgeist/engine/remote.py:
	* configure.ac:

	Bump version number to 0.3.3.1.

2010-04-22  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/remote-test.py:

	Add a not really useful test case. Why not?

2010-04-22  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* zeitgeist/datamodel.py:

	- Added a LastSeen property to data-sources.
	- Fixed a bug in the DataSourceRegistry extension where it failed to handle
	the disconnection signal from data-sources with several running instances.

2010-04-22  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/packaging/debian/source:
	* extra/packaging/debian/source/format:
	* extra/packaging/debian/zeitgeist-core.bash-completion:
	* extra/packaging/debian/control.in:
	* extra/packaging/debian/changelog:
	* extra/packaging/debian/compat:
	* extra/packaging/debian/control:
	* extra/packaging/debian/rules:
	* extra/packaging/debian/zeitgeist-core.install:

	Update Debian packaging.

2010-04-22  Launchpad Code Hosting  <codehost@crowberry>

	* po/oc.po:

	Launchpad automatic translations update.

2010-04-21  Launchpad Code Hosting  <codehost@crowberry>

	* po/oc.po:

	Launchpad automatic translations update.

2010-04-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* HACKING:

	Little change to HACKING on tarball generation.

2010-04-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Finalize NEWS File for 0.3.3.

2010-04-20  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	ok done with fixes

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:
	* _zeitgeist/engine/remote.py:
	* configure.ac:

	Bump version number to 0.3.3.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Foo.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* zeitgeist/datamodel.py:

	Remove LastSeen from DataSource.
	
	There is no problem with existing data, other than Enabled being reset
	to True everywhere on the first load.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* zeitgeist/datamodel.py:

	Add a comment for LastSeen:
	Last time the data-source did something (connected, inserted events,
	disconnected).

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Update NEWS.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* doc/zeitgeist/source/datamodel.rst:
	* zeitgeist/datamodel.py:

	DataSourceRegistry documentation fixes.

2010-04-19  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:

	make sure _find_events works for python2.5

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Revert the change to _find_events(2, ...), as it won't work for
	certain event_templates values.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Whatever.

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	_find_events(2, ...): return event ids as integers, without looking them up.

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	merge with siggis work

2010-04-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Delete old comment (FIXME about interp/manif/etc deletion in delete_events).

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	little cleanup

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	merge with kamstrups changes and my optmizations on the associated stuff

2010-04-19  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Fix regression in delete_events(): If the deleted events all had timestamps 0, we'd mistakingly assume that we didn't find any events for the requested ids. This was becaused we used the all(result) builtin method which returns False if all entries in result is 0.

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	more performance optimizations 

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	improved speed

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	reduced code

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* zeitgeist/client.py:

	fixed issue with debugging 

2010-04-19  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	patched up with  bag's work

2010-04-18  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Fix engine.delete_events() in case of unknown event ids. In this case we return None which in turn means that we will not notify any monitors about this

2010-04-18  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/remote-test.py:

	Add a test case to remote-test.py that shows that we don't behave well if someone tries to delete a non-existing event

2010-04-18  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:

	Commit the sqlite3 connection in engine.delete_events(). This fixes bug #566184 "Deletes are not committed". Unfortunately this was too troublesome to unit test so I did not add a test case. So spank me!

2010-04-18  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/remote-test.py:

	Add remote test case for notifications of deleted events with two monitors installed

2010-04-18  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Replace _check_landmarks_in_set() with set() magic.
	
	Thanks to bag_ for pointing out that & can be used for intersect. Cool!

2010-04-18  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Rename 'set' variable to '_set'; 'set' is the name of an in-build type.

2010-04-18  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Change print->log and split some long lines.

2010-04-18  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-04-18  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	little fix

2010-04-18  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	apparently maxint is still smaller than time.time()*1000

2010-04-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	- 9999999999999 is ugly as hell. sys.maxint!
	- min and max are in-build functions, rename them.

2010-04-17  Seif Lotfy  <seif@Gary>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:

	merge with translations[D

2010-04-14  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-04-17  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* zeitgeist/client.py:

	optimized speed

2010-04-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Merge with Mikkel's fix for payloads not being inserted correctly (LP: #557708).

2010-04-13  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/sql.py:
	* test/engine-test.py:

	Fix bug #557708 "Error inserting a event with a byte array payload into zeitgeist". The fix is not very optimized because I had a hard time not having bytearray() available except for Python > 2.6... We can add conditional checks perhaps...
	
	Notably I needed to change the SQL VIEW on our main table to associate the right event payload with the event

2010-04-11  Launchpad Code Hosting  <codehost@crowberry>

	* po/fi.po:

	Launchpad automatic translations update.

2010-04-10  Launchpad Code Hosting  <codehost@crowberry>

	* po/fi.po:

	Launchpad automatic translations update.

2010-04-09  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-04-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/sql.py:

	sql.py: Fix event view to lookup payload.

2010-04-08  Mikkel Kamstrup Erlandsen  <kamstrup@hardback>

	* test/engine-test.py:

	Add a test for events with payloads to engine-test.py. We also need another test for this in remote-test.py... Btw. the test case fails...

2010-04-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/main.py:

	Fixed insertion of events with a payload (LP: #557708).
	
	Thanks to Randal Barlow for reporting.

2010-04-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/loggers/datasources/recent.py:

	recent.py: Fix crash triggered by info.get_display_uri()'s return
	value not being checked for None (LP: #531793).
	
	Thanks to Daniel Holm for reporting this problem.

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	more optimizations

2010-04-04  Seif Lotfy  <seif@Gary>

	* NEWS:
	* _zeitgeist/engine/main.py:
	* test/engine-extension-test.py:
	* test/remote-test.py:
	* test/test-engine-extension.rst:

	big merge with siegfrieds changes and more optimizations

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* test/engine-extension-test.py:
	* test/test-engine-extension.rst:

	Updated NEWS (a line about FindRelated still needs to be included).
	More fixed testcases.

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/remote-test.py:

	Some cleanup of the find related. Fix outdated test case.

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	more tweaking on the algorithm

2010-04-04  Seif Lotfy  <seif@Gary>

	merge

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Merge with Seif's bucket generation performance improvements.

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	fix and teak

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/sql.py:
	* test/engine-test.py:

	more preformance boost and merge with siegfried bug fixes

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/sql.py:

	Append _fk to all new constraints's names.

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/sql.py:

	Foo

2010-04-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/sql.py:
	* test/engine-test.py:

	Initial work on #491646.

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	more preformance boost

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	increase performance

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	took out confidence and minimum support out of the related stuff since we already limit by time and count :)

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	reduiced memory consumption

2010-04-04  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	replaced the bucket_generation with a sliding window mechanism ==> much better and quicker results. ENJOY

2010-04-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist-daemon.1:
	* zeitgeist-daemon.py:

	zeitgeist-daemon: Add a --log-level switch (LP: #512115).

2010-04-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-daemon.py:

	zeitgeist-daemon: redirect zeitgeist-datahub's std{in,out,err} to /dev/null.

2010-04-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:

	DataSourceRegistry: Update LastSeen whenever the data-source inserts something.

2010-04-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extension.py:

	- ExtensionsCollection: Implement __iter__.
	- Extension: Hold the engine as a weak reference.

2010-04-01  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/tr.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-03-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/packaging:
	* extra/packaging/create-debian-snapshot-package.sh:
	* extra/packaging/debian:
	* extra/packaging/debian/changelog:
	* extra/packaging/debian/compat:
	* extra/packaging/debian/control:
	* extra/packaging/debian/control.in:
	* extra/packaging/debian/copyright:
	* extra/packaging/debian/pyversions:
	* extra/packaging/debian/rules:
	* extra/packaging/debian/watch:
	* extra/packaging/debian/zeitgeist-core.install:
	* extra/packaging/debian/zeitgeist-datahub.install:

	extra/packaging: add debian/ directory and script to generate a snapshot Debian package.

2010-03-24  Launchpad Code Hosting  <codehost@crowberry>

	* po/pl.po:

	Launchpad automatic translations update.

2010-03-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Fix wrong docstring in remote.py.

2010-03-23  Launchpad Code Hosting  <codehost@crowberry>

	* po/pl.po:

	Launchpad automatic translations update.

2010-03-21  Seif Lotfy  <seif@Gary>

	* _zeitgeist/engine/main.py:

	fixed bucket generator

2010-03-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Some optimization for Seif (don't create Event instances for the buckets stuff).
	This commit isn't working; still needs work.

2010-03-21  Launchpad Code Hosting  <codehost@crowberry>

	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-03-20  Launchpad Code Hosting  <codehost@crowberry>

	* po/id.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-03-19  Launchpad Code Hosting  <codehost@crowberry>

	* po/id.po:
	* po/pl.po:

	Launchpad automatic translations update.

2010-03-18  Launchpad Code Hosting  <codehost@crowberry>

	* po/el.po:
	* po/ru.po:
	* po/tr.po:

	Launchpad automatic translations update.

2010-03-17  Launchpad Code Hosting  <codehost@crowberry>

	* po/el.po:
	* po/tr.po:
	* po/ru.po:

	Launchpad automatic translations update.

2010-03-16  Launchpad Code Hosting  <codehost@crowberry>

	* po/da.po:

	Launchpad automatic translations update.

2010-03-15  Launchpad Code Hosting  <codehost@crowberry>

	* po/da.po:

	Launchpad automatic translations update.

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* test/test-engine-extension.rst:

	fixed doctest/tutorial for engine-extensions

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:

	fixed unloading of extensions, both ways must be possible, unloading by extension class and unloading by extension object

2010-03-11  Markus Korn  <thekorn@gmx.de>

	* test/run-all-tests.py:

	* added doctests to run-all-tests script again

2010-03-08  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-03-06  Seif Lotfy  <seif@Gary>

	* test/engine-test.py:

	added test cases for multiple events

2010-03-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	fix find_events_for_template, was pointing to find_events_ids_*

2010-03-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist/source/dbus_api.rst:

	Add FindEvents to docs.

2010-03-02  Seif Lotfy  <seif@lotfy.com>

	* test/testutils.py:
	* zeitgeist-daemon.py:

	chaned --no-passive-loggers to --no-datahub

2010-03-02  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	fixed a logical error in the clustering

2010-02-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	recent.py: fix crash trying to read a broken symlink as .desktop
	file (LP: #523761).

2010-02-28  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-02-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	merged with changes
	made the bucket generator adaptive with a resolution of 5 minutes :)

2010-02-27  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-02-26  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/main.py:

	* fixed indention of ZeitgeistEngine._generate_buckets()
	* made ZeitgeistEngine._generate_buckets() a static method

2010-02-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	decreased memory usage by getting rid of dicts

2010-02-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	made resoltuion for adaptive bucket sizing = 5 minutes

2010-02-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	made resoltuion for adaptive bucket sizing = 5 minutes

2010-02-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	made the crappy algorithm adaptaptive

2010-02-26  Seif Lotfy  <seif@lotfy.com>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	translation merge and fixes to the most_used stuff

2010-02-26  Launchpad Code Hosting  <codehost@crowberry>

	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-02-26  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	little fixes and perfromance nehancments

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist/datamodel.py:

	added RelevantResultType to the datamodel

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	screw this its all in trunk

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* test/data/apriori_events_sets-2.js:
	* test/data/apriori_events_sets.js:
	* _zeitgeist/engine/main.py:
	* test/engine-test.py:
	* zeitgeist/datamodel.py:

	my bad

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	merge and fix issues

2010-02-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Map rocks!
	
	(Mikkel the mapper will be proud :P).

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	removed second query

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* test/engine-test.py:
	* zeitgeist/datamodel.py:

	fixed test case

2010-02-25  Seif Lotfy  <seif@lotfy.com>

	* test/data/apriori_events_sets-2.js:
	* test/data/apriori_events_sets.js:
	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	reduced changes to only stable stuff

2010-02-24  Seif Lotfy  <seif@lotfy.com>

	* po/da.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nl.po:
	* po/ro.po:
	* po/ru.po:
	* po/te.po:
	* po/zh_CN.po:
	* tools/cli:
	* tools/cli/zeitgeist-update-database.py:
	* NEWS:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* test/remote-test.py:
	* tools/gtk/zeitgeist-data-sources-gtk.py:
	* zeitgeist/client.py:

	merge with alot of stuffy

2010-02-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Update NEWS.

2010-02-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Fix crash parsing .desktop file with malformed
	"Exec" entry (LP: #526357).

2010-02-19  Launchpad Code Hosting  <codehost@crowberry>

	* po/es.po:

	Launchpad automatic translations update.

2010-02-18  Launchpad Code Hosting  <codehost@crowberry>

	* po/es.po:

	Launchpad automatic translations update.

2010-02-17  Launchpad Code Hosting  <codehost@crowberry>

	* po/es.po:

	Launchpad automatic translations update.

2010-02-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Implement LeastRecentActor.

2010-02-16  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:
	* zeitgeist/client.py:

	Fixed (LP: #510804) by checking arguments in .find_events_for_values()

2010-02-16  Launchpad Code Hosting  <codehost@crowberry>

	* po/es.po:

	Launchpad automatic translations update.

2010-02-15  Launchpad Code Hosting  <codehost@crowberry>

	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/es.po:
	* po/fr.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nb.po:
	* po/nl.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/sv.po:
	* po/te.po:
	* po/uk.po:
	* po/zh_CN.po:

	Launchpad automatic translations update.

2010-02-15  Launchpad Code Hosting  <codehost@crowberry>

	* po/da.po:
	* po/en_CA.po:
	* po/en_GB.po:
	* po/hu.po:
	* po/it.po:
	* po/ja.po:
	* po/mk.po:
	* po/nl.po:
	* po/ro.po:
	* po/ru.po:
	* po/te.po:
	* po/zh_CN.po:
	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:

	Launchpad automatic translations update.

2010-02-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* tools/cli:
	* tools/cli/zeitgeist-update-database.py:
	* tools/gtk/zeitgeist-data-sources-gtk.py:

	Add tools/cli/zeitgeist-update-database.py
	
	Add a command-line tool to:
	- Update ../application/<name>.desktop to application://<name>.desktop.
	- Vacuum the database.
	- Do more nice stuff in the future.

2010-02-24  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-test.py:
	* test/remote-test.py:

	added test cases and fixed remote

2010-02-24  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-test.py:
	* test/remote-test.py:
	* zeitgeist/client.py:

	finish find_related_uris

2010-02-15  Seif Lotfy  <seif@lotfy.com>

	* test/data/apriori_events_sets-2.js:
	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	added new test case

2010-02-15  Seif Lotfy  <seif@lotfy.com>

	* test/data/apriori_events_sets.js:
	* _zeitgeist/engine/main.py:
	* test/data/apriori_events.js:
	* test/engine-test.py:

	added some new test cases for the associated sets that work
	find_associated_work_sets it is purely based on apriori
	it still needs an interface

2010-02-13  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/data/apriori_events.js:

	finished some apriori sets 

2010-02-10  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	changed the time settings int the related algorithm for easier modification 

2010-02-10  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	reimplemented the one step apriori for most used with setting a resolution of 30 minutes

2010-02-07  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist/client.py:

	merged client stuff

2010-02-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	client.py: make ZeitgeistDBusInterface resilient to engine restarts
	
	If the Zeitgeist engine disconnected, we try to get it again. Still
	to be done:
	- Reconnect to signals after re-connecting to the engine.
	- See why this isn't working for ZeitgeistClient.
	
	Stuff to be considered:
	- Maybe we should just connect to the quit signal and reconnect
	there, but that would re-start Zeitgeist even when it isn't
	needed (and may be subject to race conditions).

2010-02-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	client.py: Raise an exception when trying to access
	a non-existant D-Bus method.

2010-02-07  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:

	shitty indent

2010-02-07  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/main.py:
	* test/data/apriori_events.js:

	revisiting  A Priori

2010-02-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	recent.py: Recognize TeX files as category "Documents".
	
	Uhm..., there seems to be some confusion on whether to use application/ or
	text/ for this sort of plain-text stuff (also true for most things under
	Development) depending on the tool used to determine it or the website you
	look it up. We ought to check which one GNOME uses or just ignore the first
	<application/text>/ part.

2010-01-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	recent.py: don't log for a given actor if a data-source registers for it but
	doesn't specify any interpretation.

2010-01-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* tools:
	* tools/README:
	* tools/gtk:
	* tools/gtk/zeitgeist-data-sources-gtk.py:

	Add GTK+ GUI to manage data-sources.

2010-01-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Add __repr__ to DataSource.

2010-01-29  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:

	Fix VERSION.

2010-01-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:

	recent.py: make full use of the data-source registry
	
	The GtkRecentlyUsed data-source does now connect to the DataSourceRegistered
	signal, in addition to requesting everything at startup, to have a complete
	list of actors for which there are loggers.
	
	The corresponding event interpretations are also considered, so that if
	CreateEvents are being inserted but VisitEvents not, the data-source will
	continue taking care of those.
	
	Remember that in theory the assumption "if a data-source registered an event 
	template with actor X and event interpretation Y, so all Y events for app
	X are being logged by it" can't be made, but in this particular case of the
	GtkRecentlyUsed data-source we'll consider it as valid.
	
	Also note that the changed in this commit don't take into account whether
	the data-sources providing logging for a particular actor are currently running
	or not. This makes sense, as else we'd end up with repeated events anyway
	(when the events aren't logged at exactly the same timestamp by the data-source
	and into GtkRecentlyUsed), but given that data-sources can't be deleted from
	the registry, ignoring an actor forever is not so nice. The best solution would
	probably be adding a RemoveDataSource method to the registry.

2010-01-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* doc/zeitgeist/source/dbus_api.rst:

	Add DataSourceDisconnected signal to complement DataSourceRegistered.

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:

	Update LastSeen time when a data-source leaves.

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	DataSourceRegistry: Use a unique string to identify data-sources, instead of
	their name, to make the name mutable.

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	Add register_data_source method to ZeitgeistClient.

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Bump API version to (0, 3, 2, 999) to allow relying on the
	data-source registry.

2010-01-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/datamodel.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/Makefile.am:
	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* doc/zeitgeist-daemon.1:
	* doc/zeitgeist-datahub.1:
	* doc/zeitgeist/source/dbus_api.rst:
	* test/engine-extension-test.py:
	* zeitgeist-datahub.py:
	* zeitgeist/datamodel.py:

	This branch adds the datasource registery that allows more coordinated event logging than our previous 'willy nilly we log everything' approach.

2010-01-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Merge with trunk.

2010-01-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/blacklist-test.py:
	* test/engine-test.py:
	* zeitgeist/client.py:

	Merge with recent commits in trunk and with
	lp:~zeitgeist/zeitgeist/zeitgeist.client.extensions_interface

2010-01-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:

	RegisterDataSource: fix reference to actors, should be event_templates.

2010-01-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:

	Fix spaces->tabs.

2010-01-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/datamodel.py:

	Rename ._special_str to .to_unicode and make it static.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Fix a get_events call.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:

	Fix register_data_source.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-extension-test.py:

	Let hooks know which client requested the event
	retrieval/insertion and fix the hook to block disabled
	data-sources in datasource_registry.py.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/datamodel.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* doc/zeitgeist-daemon.1:
	* doc/zeitgeist-datahub.1:
	* zeitgeist-datahub.py:
	* zeitgeist/client.py:

	And more stuff...

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist/source/dbus_api.rst:
	* zeitgeist/client.py:

	More changes.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/datamodel.py:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/extensions/Makefile.am:
	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Lots of stuff...

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	Some more changes to get_extension.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	Fix get_extension method.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/__init__.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Start implementing a datasource registry.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/__init__.py:
	* zeitgeist/datamodel.py:

	Start adding a datasource registry.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/datasource_registry.py:
	* _zeitgeist/engine/__init__.py:
	* zeitgeist/datamodel.py:

	Add a datasource registry

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/data/twenty_events.js:
	* test/engine-test.py:
	* zeitgeist/datamodel.py:

	Add MostPopularActor, LeastPopularActor and MostRecentActor.
	There should also be a LeastRecentActor but I could get it to work :/.

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:
	* zeitgeist/client.py:

	Fixed failing remote-testcases for deleting events (LP: #510813)

2010-01-27  Markus Korn  <thekorn@gmx.de>

	* test/engine-test.py:

	fixed typo

2010-01-27  Seif Lotfy  <seif@lotfy.com>

	* test/remote-test.py:

	added new test case that needs to be revisted due to https://bugs.edge.launchpad.net/zeitgeist/+bug/510813/comments/1

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Add LP bug link to NEWS.

2010-01-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Don't threat zeros in TimeRanges specially. Now (0, 0) just mean
	"at the exact msec the UNIX Epoch started".
	
	The "let's make the API more difficult and SQL queries slower" commit :).

2010-01-26  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist/datamodel.py:

	merge with Siegfried's datamodel fix

2010-01-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	datamodel:
	- Fix behaviour of SymbolCollection.__getattr__ to throw an Exception
	when called with a name that isn't all uppercase (LP: #512114).
	- Change two error messages to start captitalized.

2010-01-26  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/singleton.py:
	* test/blacklist-test.py:
	* zeitgeist/client.py:

	merged with Siegfried changes:
	Siegfried-Angel G... 2010-01-23 Add a get_extension method to client.ZeitgeistDBusInterface to easily access interfaces

2010-01-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/singleton.py:
	* test/blacklist-test.py:
	* zeitgeist/client.py:

	Add a get_extension method to client.ZeitgeistDBusInterface to easily access interfaces
	of extensions.
	
	- The generic stuff from ZeitgeistDBusInterface is refactored into a new
	class, client._DBusInterface, so that it can also be used by the extensions.
	- Fix client._DBusInterface.connect() so that it can take any number of argX=
	arguments.
	- Remove get_session_bus. dbus.SessionBus() is a singleton.
	- blacklist-test.py: add a test-case using the new get_extension() method

2010-01-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	datamodel: Fix URI lookup for symbols and add unit test.

2010-01-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* test/datamodel-test.py:

	Uniformize the NEWS file ("*" vs "-") and split stuff into three
	sections: Engine, Python API (includes changes to files in zeitgeist/
	with global effect) and Overall.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Oops, fix.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* zeitgeist/datamodel.py:

	datamodel:
	- Fix __iter__ to return objects instead of names.
	- Simplify SymbolCollection (do not store names twice).
	- Add __getitem__ for symbol lookup by URI.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Update NEWS.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	datamodel.py: Make Interpretation and Manifestation iterable.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Fix typo in datamodel.py.

2010-01-24  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	datamodel.py: Fix "Source Code" display name.

2010-01-22  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-test.py:

	Add test to ensure nothing bad happens when querying for an interpretation not in the DB.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Bump D-Bus API version number to 0.3.2.99 so that clients can
	depend on the development version.

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:

	Fix DeleteEvents (two variables using the same name in notify.py resulted
	in an exception and the deletion not happening).

2010-01-21  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Sort list of development mime-types alphabetically and add
	the Lisp, Ruby, Vala languages, README and CREDITS files and
	some other missing mime-type.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/data/twenty_events.js:
	* test/engine-test.py:
	* zeitgeist/datamodel.py:

	Add MostPopularActor, LeastPopularActor and MostRecentActor.
	There should also be a LeastRecentActor but I could get it to work :/.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Fix spaces->tabs.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist-daemon.1:

	Fix 'Environment Variables' section in manpage.

2010-01-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* TODO:
	* .bzrignore:

	Delete the TODO file.

2010-01-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/remote.py:
	* configure.ac:

	Bump version number to 0.3.2.

2010-01-19  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/Makefile.am:

	Put bash-completion file into the tarball when creating it.

2010-01-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Merge with Mikkel's doc. fix

2010-01-16  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Fix docstring for Subject.storage to define that subjects requiring an network interface must set storage to 'net' (not 'inet')

2010-01-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Add recent stuff to NEWS.

2010-01-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* CONTRIBUTORS:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/loggers/datasources/_recentmanager.py:
	* doc/zeitgeist-daemon.1:
	* doc/zeitgeist-datahub.1:

	Gah.. Copyright/Licensing fixes.

2010-01-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Fix indentation (spaces->tab).

2010-01-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/remote-test.py:

	Avoid exception if GetEvents is called with an empty list,
	and add a remote test case to ensure there's no regression here.

2010-01-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	client.py: Change get_version() to return a list, not a D-Bus object,
	so that it can be compared against another list.

2010-01-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* HACKING:
	* _zeitgeist/engine/remote.py:

	Bump D-Bus API version number and document this in HACKING. We
	don't automatically take the number from zeitgeist._config because 
	there may be releases which don't change it.

2010-01-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:

	Add sql.py to Makefile.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Really fix DeleteEvents.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Update NEWS.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Another indentation fix.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:

	Fix indentation.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:

	Fix delete_events (it was failing because of invalid syntax,
	"min_stamp, max_stamp = <SQLite row>"). Also ensure that it
	doesn't explode if it's called with invalid IDs.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/client.py:

	Little change in docstrings.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/sql.py:
	* _zeitgeist/engine/main.py:

	Move stuff from main.py to sql.py, so that the former only
	contains the ZeitgeistEngine class.
	
	This obsoletes the lp:the-end-is-near branch where I had
	started doing a similar cleanup. By the way, we should also
	consider moving the big "database setup" query into a text
	file and letting sqlite3 batch-process it.

2010-01-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	Move around some code in engine/main.py so that there's first
	all Get/Find stuff and after that the Insert/Delete code.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	More fixing: Simplify find_events results before sending
	them over D-Bus.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Fix out_signature of FindEvents.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	s/ids_reply_handler/events_reply_handler/ where appropriate

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Update FindEvents to use the new engine methods instead of return_events=True.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/client.py:

	Expose FindEvents in the Python module.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* test/engine-test.py:

	Rename the extended find_eventids to _find_events and
	create aliases find_events and find_eventids for it.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:

	Document FindEvents and update FindEventIds's documentation
	to refer to it.
	
	Cut too long lines in the docstrings in remote.py and replace
	s/id/ID/.

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	s/of/for in docstring

2010-01-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-test.py:

	Implement FindEvents function (changes in client.py are
	still missing).

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* HACKING:
	* doc/zeitgeist/source/HACKING.rst:
	* doc/zeitgeist/source/index.rst:

	Merged Markus Korn's HACKING document

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* HACKING:

	Fill out the "Release Tasks" section of the HACKING file

2010-01-08  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/HACKING.rst:
	* HACKING:
	* doc/zeitgeist/source/index.rst:

	* fixed typo in HACKING
	* add HACKING document to the public documentation

2010-01-08  Markus Korn  <thekorn@gmx.de>

	* HACKING:

	* started working on a HACKING document, the 'Release Tasks' section is
	still missing

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* NEWS:

	Update NEWS prior to 0.3.1 release

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* VERSION:
	* configure.ac:

	Bump version to 0.3.1

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* doc/zeitgeist/source/dbus_api.rst:
	* test/engine-test.py:
	* zeitgeist/client.py:

	Rename the method FindRelated -> FindRelatedUris, likewise inside the engine

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* doc/zeitgeist/source/dbus_api.rst:
	* test/remote-test.py:
	* zeitgeist/client.py:

	Lots of doc polish on the dbus.FindRelated() and client.find_related*() and fiddle about with method paramters to simplify it and make it more coherent with the rest of the API

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/engine-test.py:

	Fix engine test case 'testRelatedForMultipleEvents'. The relevancy ranking had changed by the recent tweak to the algo in engine.find_related()

2010-01-10  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/main.py:

	find_related: increment the number of ranges analyzed from
	7 to 100. This gives much better results.
	
	That LIMIT is only there to avoid too much querying when
	a long time period is given for a very used item. Long term
	we need to figure out something better.

2010-01-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* doc/zeitgeist/source/dbus_api.rst:
	* zeitgeist/datamodel.py:

	Polishing of the docs, adding some more cross refs and fixing some grammar

2010-01-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/test-engine-extension.rst:

	Update the extension tutorial to reflect that we now have one default extenion, namely "Blacklist"

2010-01-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* doc/zeitgeist/source/dbus_api.rst:
	* zeitgeist/datamodel.py:

	Document the event dbus wire format in the DBus API section
	
	Specify that subjects requiting a network interface have subject.storage="net" and subjects that are deleted have subject.storage="deleted"

2010-01-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/remote.py:
	* doc/zeitgeist/source/dbus_api.rst:

	Update DBus API docs with the Blacklist API

2010-01-07  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Document how event.actor is encoded (as fx. app://firefox.desktop). This fixes bug #488790: "What value should event.actor have?"

2010-01-06  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/notify.py:

	fixed ValueError (wrong number of argument to
	MonitorManager.remove_monitor()) and RuntimeError (changing size of
	MonitorManager._connections)

2010-01-06  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/notify.py:

	fixed MonitorManager to handle NameOwnerChanged signals correctly.
	The monitor class is called _MonitorProxy and not just Monitor

2010-01-06  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extensions/blacklist.py:

	The blacklist is running in its own DBus scope (object_path and interface
	address). Using this instead of the generic zeitgeist addresses.

2010-01-06  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/client.py:

	Fixed code to find related events. The API and engine methods got renamed
	some time ago, but not all neccessary bits where updated accordingly

2010-01-05  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	* If set, zeitgeist is now using the ZEITGEIST_DATABASE_PATH env variable to
	get the location of the database again.

2010-01-05  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added missing argument to TimeRange.always()

2010-01-05  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:

	* fixed generation of API docs in cases where zeitgeist is also installed
	systemwide

2010-01-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* test/benchmarks.py:
	* test/engine-extension-test.py:
	* test/engine-test.py:

	Fix constants stuff

2010-01-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Add .from_seconds_now to datamodel.TimeRange and switch
	all such methods from static to classmethods.

2010-01-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extensions:
	* _zeitgeist/engine/extensions/Makefile.am:
	* _zeitgeist/engine/extensions/__init__.py:
	* _zeitgeist/engine/extensions/blacklist.py:
	* test/blacklist-test.py:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/main.py:
	* _zeitgeist/engine/remote.py:
	* configure.ac:
	* test/benchmarks.py:
	* test/engine-extension-test.py:
	* test/engine-test.py:

	Merge with lp:~kamstrup/zeitgeist/blacklist
	
	- Add Mikkel Kamstrup's implementation of a blacklist,
	together with the needed changes to the extensions system.
	
	Good work Mikkel!
	
	Some changes from my side:
	
	- Add a .constants namespace to __init__.py and move several
	constants into there. They can be used both by Zeitgeist
	itself and by extensions (eg. DATA_PATH).
	
	- Fix test/engine-extension-test.py so that it doesn't break
	now that there are extensions loaded by default.
	
	- Some other little tweaks.

2009-12-31  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extensions/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* configure.ac:

	Add needed autofoo magic to include the new blacklist extension files in the distribution tarball

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/blacklist.py:

	Updates reflecting Markus' comments on LP review

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/blacklist-test.py:

	Add a test to the blacklist extension to check that events are indeed filtered/let through correctly

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* doc/zeitgeist/source/client.rst:
	* doc/zeitgeist/source/datamodel.rst:
	* doc/zeitgeist/source/dbus_api.rst:
	* doc/zeitgeist/source/engine.rst:
	* doc/zeitgeist/source/tutorial_engine_extension.rst:
	* .bzrignore:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* doc/Makefile.am:
	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/index.rst:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:
	* doc/dbus:
	* doc/zeitgeist:

	Merge in latest changes from trunk in order to have a clean diff for review

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/resonance-engine-test.py:

	Disable all extensions in resonance-engine-test.py. Extensions like Blacklist keep state around which can not know how to reset

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extensions/blacklist.py:

	Fix buggy serilization of events in _event2popo()

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extensions/blacklist.py:

	Use unicode instead of str when converting Events into POJOs for pickling

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/resonance_engine.py:

	Ensure proper loading and unloading of engine extensions

2009-12-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/__init__.py:

	Bugfix: Properly extract engine name when detecting if we already have an engine instance in create_engine()

2009-12-21  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/blacklist-test.py:
	* _zeitgeist/engine/extensions/blacklist.py:

	Blacklisting DBus interface actually working, and two test cases are running.
	
	CAVEAT: I consistently get a warning in my log which needs debugging:
	WARNING:zeitgeist.blacklist:Failed to load blacklist config file /home/mikkel/.config/zeitgeist/blacklist.pickle: Invalid subject data length 71, expected 7

2009-12-17  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/extensions/blacklist.py:
	* _zeitgeist/engine/resonance_engine.py:

	Make the new blacklist infrastructure actually runnable

2009-12-16  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/resonance_engine.py:

	Add functionality to load a default set of extensions given string definiting their fully qualified paths and hook this up the engine

2009-12-16  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extensions:
	* _zeitgeist/engine/extensions/blacklist.py:

	Beginnings of a blacklist extension

2010-01-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* test/benchmarks.py:
	* test/run-all-tests.py:
	* test/test-engine-extension.rst:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/engine/main.py:
	* test/resonance-engine-extension-test.py:
	* test/engine-extension-test.py:
	* test/resonance-engine-test.py:
	* test/engine-test.py:

	Remove the "resonance" branding everywhere and what remains
	of the multiple backends code (which was pretty much broken
	by now, hopefully won't be needed ever again, and it
	impedes some further simplifications).

2010-01-01  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/__init__.py:

	Add missing import.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/zeitgeist-daemon.bash_completion:
	* zeitgeist-daemon.py:

	Add Bash tab-completion.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/singleton.py:
	* doc/zeitgeist-daemon.1:
	* zeitgeist-daemon.py:
	* zeitgeist/__init__.py:
	* zeitgeist/datamodel.py:

	Update zeitgeist-daemon to use OptionParser.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/extension.py:
	* zeitgeist/__init__.py:
	* zeitgeist/_config.py.in:

	More changes to _config. Wrap it around a class so that we can
	add additional stuff to it and try to figure out the bzr revision
	when running from the repository.
	
	I'd probably make sense to move all this config stuff into
	_zeitgeist/, but for that the autotools stuff needs to be updated
	to install zeitgeist-daemon into the same directory as the private
	zeitgeist module and to only put a symlink into /usr/bin.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/__init__.py:

	Change zeitgeist/__init__.py so that MockConfig is still used
	after running "make", without the need to remove _config.py.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist/datamodel.py:

	Move get_timestamp_for_now from resonance_engine.py to datamodel.py
	and use it everywhere.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-daemon.py:

	Remove the "Deine Mudda rocks" easter-egg.

2009-12-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/client.py:

	Rename get_most_used_with to find_related and move time_range
	to be the first argument.
	
	(This is some old uncommitted stuff I had lying around here
	and doesn't fix all of #498878.)

2009-12-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/remote-test.py:
	* zeitgeist/client.py:

	Add methods for get_most_used_with_subjects to client.py

2009-12-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	client.py: create _safe_reply_handler and _safe_error_handler
	to avoid duplicating the sanity checks for them everywhere.

2009-12-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/client.py:

	Split most of the lines in client.py exceeding 80 characters

2009-12-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:

	Change GetMostUsedWithSubjects to take an event_template
	instead of a list of URIs. This makes it much more powerful.

2009-12-18  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/datamodel.rst:
	* zeitgeist/datamodel.py:

	Enums in ResultType and StorageState are now subclasses of int with a
	docstring. This docstrings are used to autogenerate docs instead of using   
	the hardcoded item-list we had before.

2009-12-17  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/datamodel.rst:
	* zeitgeist/datamodel.py:

	Enums in ResultType and StorageState are now subclasses of int with a
	docstring. This docstrings are used to autogenerate docs instead of using
	the hardcoded item-list we had before.

2009-12-17  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/tutorial_engine_extension.rst:
	* doc/zeitgeist/source/index.rst:

	Added the first tutorial 'Tutorial - How do extensions to the engine work?'
	to the documentation of the engine. It is a symlink to the extension
	framework doctest.

2009-12-17  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist/client.py:

	allow asking for the API version over the ZeitgeistClient

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/client.rst:
	* doc/zeitgeist/source/datamodel.rst:
	* doc/zeitgeist/source/dbus_api.rst:
	* doc/zeitgeist/source/engine.rst:
	* .bzrignore:
	* doc/Makefile.am:
	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/index.rst:
	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:
	* doc/dbus:
	* doc/zeitgeist:

	* Started restructuring the documentation (LP: #497324)
	- splitted up the huge index page into smaller bits
	- shpinx does now generate the documentation for Symbols
	- change things such that we cannot only ship a DBus API documentation
	but also development related docs about our engine.
	* fix some testcases, because of the changes to the documentation framework 
	the docstring if Symbols are looking different now.

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added url to the symbol's docstring

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/datamodel.rst:

	handle StorageState and ResultType as data

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	readded object doc for SymbolCollections, fixed typo

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:

	removed some inports

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:
	* doc/zeitgeist/source/datamodel.rst:
	* zeitgeist/datamodel.py:

	Added SymbolDocumenter to the docs, this allows creating of documentation
	for Interpretation and Manifestation on the fly, we don't need the __doc__
	hack anymore

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	merged lp:zeitgeist

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* .bzrignore:

	bzr ignore files related to the process of building the docs

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/engine.rst:

	added dummy documentation source for the engine

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/dbus_api.rst:

	added index entries for DBus interfaces

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/index.rst:

	added some text to the index page of the documentation

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/index.rst:

	changed order of entries in the docs TOC

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/client.rst:
	* doc/zeitgeist/source/datamodel.rst:
	* doc/zeitgeist/source/dbus_api.rst:
	* doc/zeitgeist/source/index.rst:

	splitted index.html into multible different pages

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/zeitgeist/source/conf.py:

	made clear the documentation is not only about the DBUS API

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* doc/Makefile.am:
	* doc/dbus:
	* doc/zeitgeist:

	renamed doc/dbus -> doc/zeitgeist

2009-12-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py.in:

	Delete old inactive data sources for now.

2009-12-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* test/remote-test.py:

	Fix GetMostUsedWithSubjects D-Bus to take all 5
	arguments required by get_most_used_with_subjects.
	
	Fix the test-case in ./test/remote-test.py.

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	changed type of zeitgeist.datamodel.SymbolCollection from dict to object.
	This removes the overhead of having an aditional dict around, instead we are
	using __dict__ directly

2009-12-16  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:

	added (failing) testcase for RemoteInterface.GetMostUsedWithSubjects

2009-12-15  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	fixed IndentionError in remote.py (LP: #497139)

2009-12-15  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/remote.py:

	fixed little issue with signatures for get_most_used_with_subjects

2009-12-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Rename get_most_used_with_subject to _subjects and let
	it take a list of subject URIs.

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* test/remote-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	* If GetEvents is called with an event id which does either not exist or is
	blocked a NULL_EVENT struct is returned (LP: #495392)
	* Documented this behaviour and also the fix for bug 495179

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* doc/dbus/Makefile:

	merged lp:zeitgeist

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	documented NULL_EVENT

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:

	merged lp:zeitgeist

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	documented `0` return value in InsertEvents

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* test/data/apriori_events.js:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	merged latest changes from lp:zeitgeist

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	simpllified loop in  GetEvents()

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	change NULL_EVENT to python tuple, thanks RainCT for this hint

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	* completed renaming Event.new_from_raw() -> Event.new_from_struct()
	* made Event.new_for_values() a classmethod
	* made Event._dict_contains_subject_keys() a staticmethod

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	made Event.new_for_data a classmethod

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* test/remote-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Added NULL_EVENT as one approach to fix (LP: #495392)
	This branch still needs some tweaks but should be able to show the overall
	idea

2009-12-14  Markus Korn  <thekorn@gmx.de>

	* doc/dbus/Makefile:

	removed creation of 'zeitgeist' symlink in _zeitgeist/engine at doc
	build-time. This is handled on python level in doc/dbus/source/conf.py

2009-12-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Fix regression in FindEventIds because of which the return
	value of where.may_have_results() and where.sql were incorrect
	in the case that a condition with no results but including a
	timestamp was asked for.

2009-12-13  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	'fixed' the engine testcase for bug 496109, this test is failing now too

2009-12-13  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:
	* test/resonance-engine-test.py:

	Added testcases for bug 496109
	The pure engine testcase is working as expected, but the testcase
	using the remote API fails.

2009-12-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/data/apriori_events.js:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Merge with lp:~zeitgeist/zeitgeist/apriori/, adding a
	get_most_used_with_subject function and some cleanup of the
	WHERE clause handling stuff.

2009-12-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Fix regression in WhereClause stuff with last commit.

2009-12-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Order results from get_most_used_with_subject from
	most to least relevant.

2009-12-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/data/apriori_events.js:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Finish up get_most_used_with_subject so that the
	result_event_templates filter is used, and add a
	testcase for this.
	
	Add some more sugar to the WhereClause class.

2009-12-09  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Change get_most_used_with_subject to use a custom query to
	find the initial set of timestamps, instead of calling both
	get_events and find_event_ids.
	
	Also add a docstring to it and let it take several additional
	arguments (not all are implemented yet).

2009-12-09  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Optimize SQL.

2009-12-09  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Build the WHERE clause construction stuff from find_eventids into a separate function.

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Change query from using LeastRecent to MostRecentEvents.

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Rename function to "get_most_used_with_subject", add a
	D-Bus method for it and add a check to avoid ZeroDivisionError.

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	More cleanup.

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	A bit more cleanup.

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Little bit of cleanup :).

2009-12-08  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	fixed test case and removed prints

2009-12-08  Seif Lotfy  <seif@lotfy.com>

	* test/data/apriori_events.js:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	added a most_used using a very simplified "A Priori" approach

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-extension-test.py:
	* test/resonance-engine-test.py:

	From now on an event-id of 0 indicates an error (LP: #495179)
	Implemented this convention for InsertEvent

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	renamend error wrapper in ZeitgeistEngine as suggested by Mikkel

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	added comment about finding the last event id

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed engine tests to respect new error handling for insert_events

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	as the last_event_id is raised before each insert it is safe to use 0 as
	beginning id if we are using an empty database.

2009-12-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-extension-test.py:

	From now on an event-id of 0 indicates an error (LP: #495179)
	This revisions implements this convention for InsertEvent.

2009-12-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-extension-test.py:

	added failing testcase to test insert_hook for extensions

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* Makefile.am:

	Change changelog generation rule in Makefile.am to only 
	show changes after 0.1.0 was released.
	
	This is already long enough and saves us all the commits
	which included GUI stuff. (In fact I don't believe that
	we need a ChangeLog, the NEWS file is more than enough,
	but that's a different topic :)).

2009-12-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* Makefile.am:

	Changes to the hashbang substitution in Makefile.am.

2009-12-07  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/resonance_engine.py:

	Change name of hook methods in Extension to {get,insert}_event_hook(). And move all hooks logic into the ExtensionCollection class

2009-12-07  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/resonance_engine.py:

	Implement two hooks extensions may implement in order to filter, change, or block events as they enter or leave the engine

2009-12-07  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Make it the responsibility of remote.py to wrap raw DBus events into Event class instances.
	
	This removes DBus logic from the core engine

2009-12-07  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	removed redundant brackets

2009-12-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Change GetEvents() to use our own escaping instead
	of the one provided by sqlite3. This allows us to
	fetch more than 999 events at once.

2009-12-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/data/twenty_events.js:
	* test/resonance-engine-test.py:

	Fix bug in find_eventids where using more than one event
	template resulted in all but the first one ignoring the
	timestamp restriction.
	
	Also update the test case we created for bug #490110 to
	catch this problem now that we really know what it is.

2009-12-06  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* zeitgeist/client.py:

	Prettify the docs about org.gnome.zeitgeist.Monitor

2009-12-06  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	More doc polish

2009-12-06  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Fix URL of Interpretation.APPLICATION to correct Nepomuk URI

2009-12-06  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* doc/dbus/source/index.rst:
	* zeitgeist/datamodel.py:

	Make the generated docs for Symbols (Interpretation and Manifestation) a lot prettier and also print their display name and URI

2009-12-06  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Merge lp:~kamstrup/zeitgeist/notifications
	
	This brings in a new DBus API for apps to be notified when the engine inserts or deletes events.
	
	It works like this: The client sets up a DBus object implementing org.gnome.zeitgeist.Monitor
	and sends the DBus path of this object together with a time range and a set of event tempaltes
	to the engine. The engine will then notify the monitor object when a matching event is changed.

2009-12-05  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* test/remote-test.py:

	Allow an empty set of Monitor templates to match anything

2009-12-05  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Whopping commit updating the Monitor/Notify framework as follows:
	
	org.gnome.zeitgeist.Monitor now has two methods:
	
	NotifyInsert(in (xx) time_range, in aE events)
	NotifyDelete(in (xx) time_range, in au event_ids)
	
	The client.install_monitor() method needed to be adapted to take two callbacks instad
	The NotifyDelete call always receives _all_ deleted event ids. We can however at times
	drop the notification all together if the Monitor time range is outside of the time range
	of the deleted events.
	
	The core notification system, notify.py needed update to this new DBus signature
	
	I also changed delete_events() in resonance_engine.py to return the max and min
	timestamps for the affectedd events.
	
	Add some convenience constructors to TimeRange. Namely .always() and .from_now().

2009-12-04  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Implement some convenience methods regarding time ranges:
	
	TimeRange.intersect(time_range) - calculates the intersection TimeRange of self and time_range
	
	Event.in_time_range(time_range) - returns True if event.timestamp lies in time_range

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:

	Comments and doc updates

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:
	* test/remote-test.py:
	* zeitgeist/client.py:

	Change DBus API for the Monitor.Notify() method to take an uint32 as first argument.
	This first arg is an enumeration: NotifyInsert=0 and NotifyDelete=1 designating
	the type of notification.
	
	Still delete notifications remains to be handled. I wrote in the docs that we only
	return the event ids in the event structs on NotifyDelete

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* test/remote-test.py:

	Fix insertion/removal of monitors in notify.py. The attached test case exposes a bug where we must use the monitor hash as key instead of simply the monitor itself

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/client.py:

	Fix signature of the dispath_handler() in client.remove_monitor()
	
	Also fix a warning statement

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:

	Fix type in debug string

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/client.py:

	Add a monitor_removed_handler arg to remove_monitor()

2009-12-03  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:

	Add some clarifying comments in the install_monitor()
	
	Fix debug statement in remove_monitor()

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* doc/dbus/source/index.rst:
	* zeitgeist/client.py:

	Add zeitgeist.client.Monitor to the list of documented classes
	
	Doc updates for ZeitgeistClient regarding monitoring

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* zeitgeist/client.py:

	Add API in ZeitgeistClient to install a monitor most conveniently
	
	Add a simple test in remote-test.py to check that we indeed get notifications

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:

	Remove make_dbus_sendable() from remote.py and use the functionality from Event._make_dbus_senable() instead
	
	Add a MonitorManager at the remote.py level, so no changes in resonance-engine is needed in order to enable notifications.
	This brings in two new methods on out org.gnome.zeitgeist.Log interface:
	
	InstallMonitor(oaE)
	RemoveMonitor(o)
	
	These are wired directly to the MonitorManager

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:

	The notification system works now. The only public class in notify.py is MonitorManager.
	It is supposed to be used from the engine either at the remote.py level or directly inside
	resonance_engine.py

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/datamodel-test.py:

	Add test for the new method Event.matches_event()

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Disregard event timestamps in Event.matches_template
	
	Introduce the dual method of matches_template, namely Event.matches_event() where 'self' is interpreted as the template. This is very useful for filter() calls etc.
	
	Add method Event._make_dbus_sendable() from remote.py as it is generally useful. Although we don't make it public

2009-12-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/remote.py:

	Make calls to Monitor.Notify() async
	
	Rename and document all calls MonitorManager.{install,remove}_monitor and notify_monitors()
	
	Properly install a signal listener for bus disconnects in MonitorManager
	
	Add FIXME: Filter out duplicate- or failed event insertions in remote.py InsertEvents()

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/notify.py:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/remote.py:
	* zeitgeist/client.py:

	Initial import of notify.py

2009-12-06  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel.rst:
	* doc/dbus/source/index.rst:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	Made definition of Manifestation and Interpretation simpler (LP: #492261)

2009-12-05  Markus Korn  <thekorn@gmx.de>

	* test/datamodel-test.py:

	fixed unittests for datamodel

2009-12-05  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	* Symbol.__doc__ must always return a string
	* global decleration a names for Manifestation and Interpretation
	collections

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	some addition to the docstring of SymbolCollections

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	made the reST formated text more readable

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* doc/dbus/source/index.rst:
	* zeitgeist/datamodel.py:

	dynamically generate docstring of Symbols to automatically get docs for
	Manifestation and Interpretation symbols

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	show symbol names in dir(SymbolCollection), maybe we can use it in the
	future to autogenerate docs of hardcoded Symbols

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	renamings: Category -> Symbol and CategoryCollection -> SymbolCollection
	as categories are in fact symbols ;)

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	* added more verbose error messages
	* added some code comments

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added docstring

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	* by making Category a subclass of str it is not possible to send
	Manifestations and Interpretations directly over dbus, without using
	tricks like Manaifestation.FILE.uri or str(Manifestation.FILE)
	* adjusted dbus testcases to reflect this

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	get proper category name

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel.rst:

	removed test/test-datamodel.rst as this is not how it is working now

2009-12-04  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	simpified defenition of Manifestations and Interpretations

2009-12-01  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Fixed bug where ResultType.LeastRecentEvents and
	ResultType.MostRecentEvents return just the oposite results and added
	testcases for the fix.

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* NEWS:

	Final update of NEWS

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* NEWS:
	* README:

	Polish docs leading up the release

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* extra/org.gnome.zeitgeist.service.in:

	Correct name in DBus .service file to fix service activation

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* Makefile.am:

	Automatically generate ChangeLog from Bazaar in a dist-hook

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Rename Interpretation.RSS_MESSAGE to Interpretation.FEED_MESSAGE

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* test/remote-test.py:

	Re-enable testFindTwoOfThreeEvents() in test-remote.py
	
	Whitespace cleanup in remote.py

2009-12-01  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/client.py:

	Fix and change DBus naming scheme
	
	The bus name and interface name for the Log was mixed up,
	and both where set to org.gnome.zeitgeist.LogManager.
	
	With this commit I changed the bus name of the engine process
	to org.gnome.zeitgeist.Engine. And the interface name for our
	Logs are now org.gnome.zeitgeist.Log.
	
	Our primary Log object has also changed path to
	/org/gnome/zeitgeist/log/activity instead of
	/org/gnome/zeitgeist/log.
	This gives room for private logs if we want that in the future.

2009-11-30  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Massive update of the documentation. Namely zeitgeist.datamodel and zeitgeist.client modules. There's still some polish to do, but this is the bulk of the work.
	
	The primary missing part if including documentation for the interpretation and manifestation ontologies.

2009-11-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/dbus/source/conf.py:
	* doc/dbus/source/index.rst:

	More docs foo.

2009-11-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/dbus/source/index.rst:

	Add DeleteEvents to list of members in index.rst.

2009-11-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:

	Erm, get docs and resonance_engine.py back in sync on the ResultType meanings.

2009-11-30  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/resonance-engine-test.py:

	Delete changes to test; please, keep the tests simple and focused, so that if they ever fail it's easy to fix them one by one. If you want to test new stuff write a new test. In this case the same funcionality is already tested by testFindEventTwoInterpretations.

2009-11-30  Seif Lotfy  <seif@lotfy.com>

	* test/resonance-engine-test.py:

	added a test case to try out the error i had

2009-11-30  Siegfried Gevatter  <siegfried@gevatter.com>

	* autogen.sh:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* test/remote-test.py:
	* test/resonance-engine-extension-test.py:
	* test/run-all-tests.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* zeitgeist-daemon.py:
	* zeitgeist-datahub.py:

	Oops, revert file permission changes.

2009-11-30  Siegfried Gevatter  <siegfried@gevatter.com>

	* autogen.sh:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* test/remote-test.py:
	* test/resonance-engine-extension-test.py:
	* test/resonance-engine-test.py:
	* test/run-all-tests.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* zeitgeist-daemon.py:
	* zeitgeist-datahub.py:

	Add a testcase for Seif's problem, can't reproduce.

2009-11-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:
	* test/resonance-engine-test.py:

	Remove get_highest_timestamp_for_actor() from resonance_engine.py and corresponding unit test
	
	Remove GetHighestTimestampForActor() and EventsChanged() from remote.py
	
	Improve DBus API documentation and bring it up to date. It still needs a lot of love though

2009-11-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Fix a bug where calling find_eventids with an interpretation/
	manifestation/actor/mimetype which wasn't in the DB would add
	it to it, and also use the fact that we already have all
	possible values of those in cache to avoid having to do a query
	if we know it won't find results.

2009-11-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/resonance-engine-test.py:

	Write a test for the previous commit.

2009-11-28  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix _build_templates so that it works when the Subject is empty. Why do we have no tests for this?

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* .bzrignore:
	* Makefile.am:
	* autogen.sh:
	* configure.ac:
	* po/POTFILES.in:
	* test/test-daemon.py:
	* test/testutils.py:
	* zeitgeist/Makefile.am:
	* zeitgeist-daemon:
	* zeitgeist-daemon.py:
	* zeitgeist-datahub:
	* zeitgeist-datahub.py:

	Substitute "/usr/bin/env python" with the hardcoded path at compile time
	
	In order to achieve this we rename zeitgeist-daemon and
	zeitgeist-datahub to zeitgeist-daemon.py and zeitgeist-datahub.py
	(changing the tests accordingly, as they only need to work out
	of the repository).
	
	Then, at compilation time, the Makefile copies them removing the
	".py" extension and does the desired substitution.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix debug output: s/%d/%f for time

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/epiphany:
	* extra/epiphany/Makefile.am:
	* extra/epiphany/zeitgeist-logger.ephy-extension:
	* extra/epiphany/zeitgeist-logger.py:
	* configure.ac:
	* extra/Makefile.am:

	Remove Epiphany extension, moved to lp:zeitgeist-dataproviders.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/test-daemon.py:
	* TODO:
	* extra/Makefile.am:

	Remove extra/test-daemon.py (outdated) and update the TODO file.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Update recent.py to use milliseconds granularity for the timestamps.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Change TableLookup to be a superclass of dict, as suggested by thekorn.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/querymancer.py:
	* po/zeitgeist.pot:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/lrucache.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Remove Querymancer.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Change method of generating the initial value of self._inv_dict in TableLookup, as suggested by thekorn. This is around twice as fast.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Implement delete_events and fix a couple typos.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix storage.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Give TableLookup reverse lookup feature and move Event/Subject creation from a row into ZeitgeistEngine.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/lrucache.py:

	Change the view back to leaving stuff as raw IDs when applicable, and add TableLookup instances for mimetype and actor.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/lrucache.py:

	Remove unused stuff from the LRUCache.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/lrucache.py:
	* test/lrucache-test.py:
	* _zeitgeist/Makefile.am:

	Add the LRUCache again.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:

	Update cached interpretation/manifestation ID lookup in FindEventIds.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/resonance_engine.py:

	Fix cursor closing (we do we even have the cursor as a global var, and not just inside the Engine class?

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:

	A couple fixes.

2009-11-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/client.py:
	* zeitgeist/datamodel.py:

	Finish off the last commit.

2009-11-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/lrucache.py:
	* po/zeitgeist.pot:
	* test/lrucache-test.py:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	Start working on getting ride of Querymancer.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	I like one-liners.

2009-11-27  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	Delete EventsChanged from remote.py. Will be replaced with something ebtter.

2009-11-27  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	* changed result type of GetHighestTimestampForActor() to UInt64 as
	timestamps are in milliseconds now (LP: #489127)

2009-11-26  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Implement methods to match Events and Subjects against templates. This should be highly convenient for many purposes - especcially if we want to provide an event subscription service or something like that

2009-11-26  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix typos in log statements

2009-11-26  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	added some prints and logging

2009-11-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:

	Remove querymancer from list of available engines (maybe we should remove the flexible engine thing altogether now?)

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/dbusutils-test.py:
	* test/engine-engine-test.py:
	* .bzrignore:

	Remove old tests.

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-datahub:

	zeitgeist-datahub: fix reference to dbusutils

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/Makefile.am:

	Fix autotools again.

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/Makefile.am:

	Fix autotools again.

2009-11-25  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:
	* test/testutils.py:

	* added separate function to load events from json file
	* added testcase for the remote API to insert events containing special
	unicode chars.

2009-11-25  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* test/data/unicode_event.js:
	* test/resonance-engine-test.py:

	Fix double decoding of unicode strings in querymancer.String.format(). This closes bug #488327.

2009-11-25  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist/datamodel.py:

	added some new interpretations(OPEN/CLOSE/SAVED) into the datamodel

2009-11-25  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix unicode encoding of paramters in UnicodeCursor. We would try to decode stuff that was already unicode which would lead to errors

2009-11-25  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/data/unicode_event.js:
	* test/resonance-engine-test.py:

	Make the unicode test even more evil. We fail spectacularly now - but I have a fix lined up

2009-11-25  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/data/unicode_event.js:
	* test/resonance-engine-test.py:

	Make the unicode Event test more exotic and do stricter testing. This reveals a bug in our unicode handling.

2009-11-25  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* test/dbusutils-test.py:
	* test/engine-engine-test.py:
	* test/remote-test.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* test/testutils.py:
	* zeitgeist/dbusutils.py:
	* zeitgeist/client.py:

	Rename the zeitgeist.dbusutils module to zeitgeist.client and update all tests accordingly

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/loggers/datasources/Makefile.am:

	Update file list in autotools.

2009-11-25  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/loggers/datasources/Makefile.am:

	Update file lists in Makefile.

2009-11-25  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	fixed small error in dbusutils.py

2009-11-24  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Fix bug #486996 : "testInsertGetWithoutTimestamp testcase fails"

2009-11-24  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Fix bug #485433 : "Dont' raise an exception when a duplicate event is detected"

2009-11-23  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/loggers/datasources/recent.py:

	now we also push in origin

2009-11-23  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist-datahub:

	changed DBusInterface in zeitgeist-datahub to  ZeitgeistDBusInterface

2009-11-23  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/remote.py:
	* test/resonance-engine-test.py:

	removed all relevancy stuff from the code.
	We will work with the focus stuff in 0.4 as extensions until it is stable enough to be used.
	It still needs the focus data provider

2009-11-23  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/extension.py:
	* test/resonance-engine-extension-test.py:
	* test/test-engine-extension.rst:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	merged markus's extensions banch to support extensions

2009-11-23  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-extension-test.py:
	* test/resonance-engine-test.py:
	* test/test-engine-extension.rst:

	Changed the way extension methods can be accessed, it is now
	engine.extensions.some_method()

2009-11-23  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* test/json_importer.py:
	* test/testutils.py:

	merged with lp:zeitgeist

2009-11-18  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:
	* test/test-engine-extension.rst:

	* added license header to the extensions modul
	* added some docstrings
	* completed doctest for the extension framework

2009-11-18  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/remote.py:
	* test/json_importer.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:

	merged changes from lp:zeiteist

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* test/test-engine-extension.rst:
	* _zeitgeist/engine/extension.py:

	* fixed method to unload an extension
	* added test/test-engine-extension.rst, a doctest for the extension loader
	which is also used to demonstrate how loading and developing extensions
	works

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:
	* _zeitgeist/engine/relevancy_provider.py:
	* test/resonance-engine-extension-test.py:

	* renamed __public_methods__ to PUBLIC_METHODS

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	fixed whitespace twiddling to keep diff as small as possible

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/relevancy_provider.py:

	* use whitespaces in relevancy_provider.py instead of tabs to keep the diff
	as small and readable as possible

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/extension.py:
	* test/resonance-engine-extension-test.py:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* added a loader for eninge extensions. for now the only extension we have
	(relevany_provider) is disabled by default. The code needs still some work
	but works.

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* test/remote-test.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* test/testutils.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	Merge branch containing some polish outlined by RainCT in https://code.launchpad.net/~kamstrup/zeitgeist/client-api/+merge/15016

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/dbusutils.py:

	Better type checking in the ZeitgeistClient.
	
	Raise TypeError instead of ValueError where applicable

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/testutils.py:
	* zeitgeist/datamodel.py:

	Typos in docstrings fixed

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	Move ResultType enumeration into the datamodel.py module

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* test/remote-test.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* test/test-daemon.py:
	* test/testutils.py:
	* zeitgeist/dbusutils.py:

	Rename DBusInterface class to ZeitgeistDBusInterface

2009-11-19  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/datamodel-test.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* test/json_importer.py:
	* test/testutils.py:

	merged with kamstrups changes

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* test/testutils.py:
	* zeitgeist/dbusutils.py:

	Change API of the ZeitgeistClient to always take the callback as the last arg.
	
	The find_event_ids_*() methods has also changed signature so that all params except the event template(s) are optional.
	
	With this commit I must admit that I feel pretty good about the client API

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Make use of a new enumeration StorageState defined in the zeitgeist.datamodel module. We still need to implement proper support for this in the resonance engine, as well as needing a way to actually listed for devices and connectivity to update out storage table

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:

	DBus API change: We need to use int64 instead og int32 to represent timestamp. Otherwise we overflow the int32s. Changed signature of FindEventIds to '(ii)a(asaasay)uuu' to '(xx)a(asaasay)uuu'

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/dbusutils.py:

	Use isinstance(m, class) checks instead of 'type(m) is foo' or 'm.__class__ == cls'

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Fix typo 'thrid' -> 'third'

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* test/json_importer.py:
	* test/testutils.py:

	Move useful functionality from ZeitgeistRemoteAPITest in remote-test.py into a new convenience module called 'testutils'. Also move json_importer into testutils.py and change resonance-engine-test.py to use this module instead of json_importer.py

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* zeitgeist/dbusutils.py:

	First import of new client convenince API. The intend is to provide transparent wrapping of raw DBus data into Events etc. Also to provide convenient async capabilities (in fact it forces you to go 100% async)
	
	Let me make it clear that this does not change the DBus API - I am talking about a convenience client lib.
	
	Port test/remote-test.py to use the new client API

2009-11-19  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Add a TimeRange class to zeitgeist.datamodel. It can be used to pass directly over dbus just like Event and Subject

2009-11-18  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Lots of documentation on datamodel classes and add some more convenience methods for creating Events (I need these for the upcoming client side API)

2009-11-17  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:

	Add hashbang to test/remote-test.py

2009-11-17  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* TODO:
	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/data:
	* test/data/five_events.js:
	* test/data/single_event.js:
	* test/data/twenty_events.js:
	* test/data/unicode_event.js:
	* test/json_importer.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* test/scalability-test.py:
	* test/test-client.py:
	* TODO:
	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* doc/event-item-separation.txt:
	* .bzrignore:
	* AUTHORS:
	* CONTRIBUTORS:
	* COPYRIGHT:
	* MAINTAINERS:
	* NEWS:
	* VERSION:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py.in:
	* _zeitgeist/lrucache.py:
	* configure.ac:
	* doc/dbus/source/index.rst:
	* doc/zeitgeist-daemon.1:
	* extra/epiphany/zeitgeist-logger.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-engine-test.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* test/test-dbus.py:
	* test/test-daemon.py:

	Merge lp:~zeitgeist/zeitgeist/zeitgeist-resonance branch

2009-11-17  Markus Korn  <thekorn@gmx.de>

	* test/json_importer.py:

	* made json_importer usable with python < 2.6, in this case
	python-simplejson is needed

2009-11-17  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:

	* turned test/remote-test.py over to a proper unittest (LP: #483550)

2009-11-17  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:

	removed dummy testcase

2009-11-17  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	merged latest changes from the main line

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* test/remote-test.py:

	* changed test/remote-test.py from custom solution to a unittest

2009-11-16  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	fixed the relevancy stuff and packed the class into the relevancy-provider.py
	test cases all working

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	* fixed engine unittests: 
	- timestamps are INTEGERS
	- raise a KeyError if someone wants to add a duplicate event
	* DISABLED the relavncy provider for now, it is broken and needs to be fixed
	(https://bugs.edge.launchpad.net/zeitgeist/+bug/483556 is about making the
	loading  of this kind of extensions configurable, which is the only
	solution here

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	* moved relevance provider related tests to a separate class
	* removed method which are not used at all

2009-11-16  Siegfried Gevatter  <siegfried@gevatter.com>

	* TODO:
	* TODO:
	* .bzrignore:
	* AUTHORS:
	* VERSION:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py.in:
	* extra/epiphany/zeitgeist-logger.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:

	Merge. wow this is a mess

2009-11-16  Markus Korn  <thekorn@gmx.de>

	* TODO:
	* .bzrignore:
	* AUTHORS:
	* CONTRIBUTORS:
	* VERSION:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py.in:
	* extra/epiphany/zeitgeist-logger.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:

	The 'never ever use --overwrite again' merge
	This branch has become a mess because someone reverted changes and used something
	similar to --overwrite without checking which changes were reverted.
	With this commit I try to fix the state of this branch, all unittests run sucessfully.
	Please check if all changes you made to this branch after 2009-11-14 are there.
	Also please never use --overwrite again, and make sure to always run the unittests
	before commiting, even before commiting oneline changes, thank you

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* TODO:

	Add TODO file (based upon the one Seif wrote in the train and the one we had in event-item-separation).

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* .bzrignore:

	Cleanup .bzrignore.

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* VERSION:

	Change 0.3 -> 0.3.0

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py.in:
	* extra/epiphany/zeitgeist-logger.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:

	Get ride of remaining code from when we had an 'icon' property (as was already done in event-item-separation).

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:

	Change the name of the database file from 'database.sqlite' to 'activity.sqlite' so that both 0.2 and 0.3 can be installed at the same time (for easier development).

2009-11-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/relevancy_provider.py:

	Change relevancy_provider.py to get DB_PATH from __init__.py.

2009-11-15  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:

	moved the docus stuff all into relevancy provider and cleaned up a bit
	the focus test case does not work yet and also was not tested properly
	i will remove it if i cant fix it. 0.3 does not really need the focus stuff

2009-11-15  Seif Lotfy  <seif@lotfy.com>

	* AUTHORS:

	modified Authors

2009-11-15  Seif Lotfy  <seif@lotfy.com>

	* CONTRIBUTORS:
	* MAINTAINERS:

	some organizational stuff

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/scalability-test.py:
	* NEWS:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* _zeitgeist/json_importer.py:
	* test/json_importer.py:

	Merge with Markus's and Mikkel's changes.

2009-11-14  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/scalability-test.py:

	Bit o' polish for scalability test

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* test/json_importer.py:

	* simplified code in json loader

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:
	* _zeitgeist/json_importer.py:
	* test/json_importer.py:

	* moved json importer to test/

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* fixed searching for origin
	* added testcase for this fix

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/json_importer.py:
	* test/resonance-engine-test.py:

	* fixed searching for subject text
	* let the json importer help function return the ids of inserted events
	* added code to test finding text containing unicode chars

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* test/scalability-test.py:
	* AUTHORS:
	* MAINTAINERS:
	* NEWS:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:

	merged latest changes

2009-11-13  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/scalability-test.py:
	* NEWS:

	Add initial scalability-test. Needs some more polish, but works mostly

2009-11-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/resonance_engine.py:

	* fixed failing unittest, it is now possible to insert objects to the
	database which contain unicodes (e.g. german umlaute)

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:

	Delete unneeded prints.

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/remote.py:

	Fix unicode problems.

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* TODO:
	* doc/zeitgeist-daemon.1:
	* zeitgeist-daemon:

	CLI stuff.

2009-11-14  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/loggers/datasources/recent.py:

	merged with Siegfrieds changes where he got rid of the prints, updated todo list

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Remove debugging stuff.

2009-11-14  Seif Lotfy  <seif@lotfy.com>

	* TODO:

	updated todo list

2009-11-14  Seif Lotfy  <seif@lotfy.com>

	* zeitgeist-daemon:

	merged with Siegfrieds "Deine Mudda" Easter Egg

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* zeitgeist-daemon:

	Seif mag Ostern

2009-11-14  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/loggers/datasources/recent.py:

	I think i fixed an issue with recently used, as far as I can tell I think it was a little "break" that someone put in there while testing and forgot to take out! Also changed the manifistation from Foobar to something useful :P

2009-11-14  Seif Lotfy  <seif@Junior>

	* TODO:

	added a TODO file with currently open issues!

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* CONTRIBUTORS:
	* _zeitgeist/engine/remote.py:

	Fix typos and rename NotifyFocusThingie->RegisterFocusThingie.

2009-11-14  Seif Lotfy  <seif@Junior>

	* zeitgeist/datamodel.py:

	merged with Siegfried's changes where he fixed some Higher and Lower case typos and another typo

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* zeitgeist/datamodel.py:

	Fix Event.new_for_data.

2009-11-14  Seif Lotfy  <seif@Junior>

	* AUTHORS:
	* CONTRIBUTORS:

	minor changes

2009-11-14  Seif Lotfy  <seif@Junior>

	* AUTHORS:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Moved Alex's relevancy stuff outside the resonancy-engine.py into relevancy-provider.py for easier maintanance without bloating the engine.py
	Fixed some naming conventions concenring relevancy-engine.py to use subjects and actors instead of documents and applications
	Changed DB tables to use REAL instead of INTEGERS in the timestamp columns
	Fixed a little bug in remote.py where the get_longest_used_apps returned docs

2009-11-14  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:

	Change names in focus tables for consistency.

2009-11-12  Seif Lotfy  <seif@Junior>

	* test/data/unicode_event.js:
	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/json_importer.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/resonance-engine-test.py:

	Merge

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/dbutils.py:

	* added missing sqlite3 import

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* test/data/unicode_event.js:
	* _zeitgeist/json_importer.py:
	* test/resonance-engine-test.py:

	merged testcase for unicode support

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/json_importer.py:

	fixed json fixture importer to support unicode

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* test/data/unicode_event.js:
	* test/resonance-engine-test.py:

	added (failing) testcase for unicode support

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Fix datahub for unknown interpretations.

2009-11-12  Seif Lotfy  <seif@Junior>

	* AUTHORS:
	* MAINTAINERS:
	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:

	changed some last issues
	changed organizational stuff

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Add UNKNOWN Manifestation and Interpretation

2009-11-12  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist-datahub:
	* zeitgeist/datamodel.py:

	Merged with previous changes

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* zeitgeist/datamodel.py:

	Merge with Mikkel's SHEDULED_ACTIVITY

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Add a new Manifestation SCHEDULED_ACTIVY

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist-datahub:

	Stuff in -datahub and recent.py.

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Merge with Mikkel.

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Autogenerate timestamps when missing both for Events and inside engine.insert_event()

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Recent documents isn't doing anything. YAY

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	merge foobar

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* zeitgeist/datamodel.py:

	Make Event recursively add Subjects when wrapping DBus values. Add unit tests for this as well

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:

	stupid fix

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Merge*3

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/relevancy_provider.py:

	Merge with Seif's commit: forgot to commit

2009-11-12  Seif Lotfy  <seif@Junior>

	* TODO:
	* AUTHORS:
	* COPYRIGHT:
	* VERSION:

	updated some organizational stuff

2009-11-12  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-engine-test.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* test/test-client.py:
	* zeitgeist/datamodel.py:

	Merge and finished relevancy provider
	So we now support most focus to  AND most focused from

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Remove EventTemplate and SubjectTemplate classes use Event.new_for_values() and Subject.new_for_values() instead

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-engine-test.py:
	* test/remote-test.py:
	* test/resonance-engine-test.py:
	* test/test-client.py:
	* zeitgeist/datamodel.py:

	Rename Content to Interpretation and Source to Manifestation

2009-11-12  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/relevancy_provider.py:

	forgot to commit

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:

	Fix bug where we had duplicate event ids in engine.find_eventids() by adding a DISTINCT clause
	
	Fix test case remote-test.py (all test pass now)

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	removed wrong import

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:

	FIx some bugs in EntityTable, the caches where in fact never used
	
	Change DBus signature for FindEventIds() to be compatible with our templates
	
	Add a test case (which is failing) for the DBus API

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	Implement a EntityTable.lookup_id() method
	
	Add setter method for Event's 'subjects' property
	
	In resonance-engine do some cleanup:
	* Fix bug when reffing event.subjects on a dbus struct
	* remove obsolete events
	* Fix bug with unknown uris in find_eventids()

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/extensions:
	* _zeitgeist/extensions/__init__.py:
	* _zeitgeist/loggers/datasources/recent.py:

	Mwhahahahha

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	added unittest for insert_focus

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions/relevancy_provider.py:
	* _zeitgeist/engine/resonance_engine.py:

	added focus relevancy to the engine

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/dbusutils.py:

	* merged fix for bug #462890 from the 0.3 series branch

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/resonance-engine-test.py:

	Add unit test to assert that we raise a ValueError in insert_events() if we get an event without a subject

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/remote-test.py:

	We now throw a ValueError if we get an event without a subject in insert_event()

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* test/remote-test.py:

	merge :p

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:

	Small updates to the DBus unit tests

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions/focus_duration.py:

	removed extra file

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/extensions/focus_duration.py:

	added focus duration to engine

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* test/data/five_events.js:
	* test/resonance-engine-test.py:

	added NotifyFocusEvent method to dbus interface...
	and merged..

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/data/five_events.js:
	* test/resonance-engine-test.py:

	Add a test for manifestations.

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	added NotifyFocusEvent method.

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:

	Autodiscover test methods in remote-test.py

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/extensions/focus_duration.py:

	merged

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* CONTRIBUTORS:
	* _zeitgeist/extensions/focus_duration.py:
	* test/data/five_events.js:
	* test/remote-test.py:
	* test/resonance-engine-test.py:

	merge

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/extensions/focus_duration.py:

	added longest used applications and documents,
	changed interface to use uris.

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	some attributes of subjects are optional

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	added test

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	it is now possible to insert events with minimal subject objects

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	*  added a testcase to test insertation of events with minimal subject 

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* CONTRIBUTORS:
	* test/data/five_events.js:
	* test/remote-test.py:
	* test/resonance-engine-test.py:

	merged

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/remote-test.py:

	Merge with Mikkel

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* CONTRIBUTORS:

	Merge

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:

	The framework for unit testing the DBus API seems to work now

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/data/five_events.js:
	* test/resonance-engine-test.py:

	Add a test to ensure findeventids works with the interpretation filter.

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* CONTRIBUTORS:

	Update CONTRIBUTORS.

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	merged changes to convert events to the correct dataformat before sending over dbus

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	* make events sendable over dbus by convert the values into strings before
	sending

2009-11-12  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/extensions/focus_duration.py:

	Remove old stuff and fix focus_duration.py.

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/extensions/focus_duration.py:

	Look up document ids via an LRUCache on top of the uri table

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/__init__.py:

	merge

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	change the location of the db by using an environment variable

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	* it is now possible to choose the location for the database by using an 
	environ variable, like:
	$ ZEITGEIST_DATABASE_PATH=":memory:" ./zeitgeist-daemon # use an inmemory
	# db
	$ ZEITGEIST_DATABASE_PATH="/tmp/db.sqlite" ./zeitgeist-daemon # use a file

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions/__init__.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/extensions/focus_time.py:
	* _zeitgeist/extensions/focus_duration.py:

	added focus duration to engine

2009-11-12  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions/focus_time.py:

	classified.

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	added comment to last change

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	* the default value for payload is an empty string and not None

2009-11-12  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/remote-test.py:
	* test/test-client.py:
	* zeitgeist/datamodel.py:

	Adding some DBus teswting stubs for Markus to look at

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/data/five_events.js:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	* merged with online repository
	* made some changes to the way event_templates are used in the merged
	changes

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed testcase, finding events by storage type is not implmented

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	added basic testcase for findevents

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	* use the new template objects for events and subjects in find_eventids

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/data/five_events.js:

	* made some changes to the testing fixtures to have testcases which make
	more sense

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	* added EventTemplate and SubjectTemplate classes

2009-11-11  Seif Lotfy  <seif@Junior>

	* _zeitgeist/extensions/relevancy_provider.py:

	started the data relevancy stuff
	right now it is not integrated with the api but it is there for now
	we can insert douments and as for document that are contextually used with other documents

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	merge!

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/resonance-engine-test.py:

	Delete redundant test.

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions/focus_time.py:
	* test/resonance-engine-test.py:

	added copyright, corrected indentation.

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/extensions:
	* _zeitgeist/extensions/focus_time.py:
	* test/data/twenty_events.js:

	Merge with Alexander's stuff

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/extensions:
	* _zeitgeist/extensions/focus_time.py:
	* test/data/twenty_events.js:

	added focus_duration calculation

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/resonance-engine-test.py:

	Merge with Ivan's test case.

2009-11-11  ivan  <ivan@walrus>

	* test/resonance-engine-test.py:

	New test: FindEventIDs filtering by actor

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix FindEventUris.

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* zeitgeist/datamodel.py:

	Fix new_for_data thingie in datamodel.py.

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	Merge.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	Better handling of DBus messages with event templates etc.

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/resonance_engine.py:

	Remove easter egg.

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* test/resonance-engine-test.py:

	Merge.

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	sorry markus

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* _zeitgeist/engine/remote.py:

	Fix DeleteEvents

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* zeitgeist/datamodel.py:

	Merge.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* zeitgeist/datamodel.py:

	Don't expect event templates to have a payload

2009-11-11  Siegfried Gevatter  <siegfried@gevatter.com>

	* doc/event-item-separation.txt:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/resonance_engine.py:

	hehehe

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/json_importer.py:
	* configure.ac:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:
	* test/test-dbus.py:
	* test/test-daemon.py:

	merge again

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* also raise an NotImplementedError on the engine side if someone uses
	find_eventids with storage_status != 0

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Merge with Markus. WHY? OH WHY?

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Make sure we always wrap DBus input in Event and Subject data structures

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	thekorn thekorn thekorn

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* configure.ac:

	Bump Version to 0.3.0. YEEEEEEEHA

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/json_importer.py:

	we don't need this import in the json loader

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/dbutils.py:

	Fix lookup of storagte state in insert_events(), actually in StatefulEntityTable

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	merged my changes to simplify import of json fixtures into the testcases

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	some simplifications to the json data loader for testcases

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/data/twenty_events.js:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge, bleh

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* test/data/twenty_events.js:
	* test/resonance-engine-test.py:

	Merge.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Write a test for GetHighestTimestampForActor.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:
	* test/test-dbus.py:
	* test/test-daemon.py:

	Properly wrap Subjects nested in Events in insert_event()

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	please add a template to the test forthe storage state.

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/data/twenty_events.js:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	merge and add forgotten events file

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* test/resonance-engine-test.py:

	YAY, another merge

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	use :memory: instead of an actual db file for unittests to make them faster

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Implement GetHighestTimestampForActor.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Don't register a subject.text in the db if it is the empty string or None

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	added tests for find event (storage state and order(timestamps) of returned events)

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/data/five_events.js:
	* test/resonance-engine-test.py:

	Import a structure of five json encoded events and test that we can find them

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/resonance-engine-test.py:

	Add more thorough testing of the json_importer

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/json_importer.py:
	* test/data:
	* test/data/single_event.js:
	* _zeitgeist/engine/resonance_engine.py:
	* test/datamodel-test.py:
	* test/resonance-engine-test.py:

	Include json_importer module
	
	Add a very simple test using it and a simple json formatted event

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed testcases, it is not possible to set an event id directly

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	fixed direct assignment of event ids

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* sometimes it is neccessary to change the id of an event (e.g. testcases)
	fixed it.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* test/datamodel-test.py:
	* zeitgeist/datamodel.py:

	Merge.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Add comment explaining transparent dbus Event struct wrapping

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/datamodel-test.py:

	Add a simple test for the Event properties

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	Wrap DBus structs transparently in the Resonance engine insert_events()

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Merge

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix bad ref to subj_uri column when it should be subj_id

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* zeitgeist/datamodel.py:

	Force Event.timestamp to be a string, and change some spacing to piss you off :D

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	Fix signature.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Merge.

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Merge

2009-11-11  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	Fixed a lot of stuff but unit tests still messed up...

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix return value of find_event_ids.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix another bug.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	Merge with Markus.

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	merged my changes to simplify Event and Subject objects

2009-11-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	* changed the way Subject and event objects are created, they are also
	subclasses of list now

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix column name.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Fix.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* test/resonance-engine-test.py:

	Merge.

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	merge ...again

2009-11-11  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	tests for reverse timespan and correct number of results

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* zeitgeist/dbusutils.py:

	Remove payload from EventList.

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/dbusutils.py:

	Change Event to be usable over D-Bus.

2009-11-11  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	moved Mimetype(Category) to the datamodel

2009-11-11  Seif Lotfy  <seif@Junior>

	* zeitgeist/datamodel.py:

	updated the uris in event related datamodels

2009-11-11  Seif Lotfy  <seif@Junior>

	* zeitgeist/datamodel.py:

	added a new datamodel

2009-11-11  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/dbutils.py:
	* _zeitgeist/engine/resonance_engine.py:

	moved db tools around so they can be used by other new logs etc

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* test/resonance-engine-test.py:

	Merge with Markus.

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed testcase to find events

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	foo

2009-11-11  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix brokeness in last commit.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/dbusutils.py:

	Move Event and Dict classes to dbusutils.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	Fix a signature

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	fix broken signature

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	ARgh damn limit screw you

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge something.

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Add a test case for the new CONSTRAINT on the event table

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Implement sorting?

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Add a CONSTRAINT to the event table to disallow duplicate events

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/resonance-engine-test.py:

	Add another test case for find_eventids

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed find_eventsid test case

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	make timestamp check in findeventids not strict.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	fix timerange order

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix some typos suject -> subject

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Rework unit tests to use predefined global events reset by the test fixture

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Add a ZeitgeistEngine.close() method and clean properly up after a our unit test

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/querymancer.py:

	Merge.

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:

	Remove debugging statement from querymancer

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix problem.

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	started a testcase for find_eventids

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix find_eventids to work with an empty template and implement max_events.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix typo.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge.

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* test/resonance-engine-test.py:

	Add a test for retrieving events that has unknown ids

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* merged changes to append None in get_events if an Event is not found

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* instead of raising a KeyError we append None to the result of get_events()
	if there is no event with a given id

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Add a new unit test to assert that we raise an error when people try to insert an event with a pre-set event id

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* set _engine to None, to enforce recreation of a nengine object
	* added Zeitgeistengine.is_closed() method

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* test/resonance-engine-test.py:

	Add a unit test for engine.delete_events()

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	make sure that values which are supposed to be Category objects are really this kind of objects, and no plain strings

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	commited my changes to make the testcases runable again

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:

	* Testcase is working again!
	- fixed lookup of origin, mimetype and storage

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Implement delete_events() and make it take a list of ids as argument.

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/lrucache.py:

	Merge with Seif's lrucache typo fix.

2009-11-09  Seif Lotfy  <seif@Junior>

	* _zeitgeist/lrucache.py:

	fixed typo

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:

	Implement FindEventIds.

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	* added more fine grained checks to check if tow events are the same (later
	this should be moved the the engine implementation itself)
	* added Mimetype Category

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:
	* zeitgeist/datamodel.py:

	* added __eq__ to datamodel.Category
	* added helper to test if two events are the same

2009-11-10  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/datamodel.py:

	updated the datamodel

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	* added __len__, __iter__ and __repr__ to _FastDict
	* wrote some testcases for this change
	* fixed the testcase which checks the resulting event against the initial
	one

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	fixed testcase

2009-11-10  Markus Korn  <thekorn@gmx.de>

	* test/resonance-engine-test.py:

	* added unsed code in testcase
	* added some assert statements in the test case to check the resulting Event
	object

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:

	Merge

2009-11-10  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* doc/dbus/source/index.rst:

	Document sorting types

2009-11-10  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/lrucache.py:

	Unit test is running!!!!1one OMG!

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/remote.py:
	* zeitgeist-daemon:

	Merge

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge with Markus's fixes.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* zeitgeist-daemon:

	Remove EngineStart/EngineExit leftovers.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:

	Fix remote.py to use structs for event arrays instead of dicts.

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/resonance_engine.py:

	More fixes. Notably fix querymancer return SQL NULL and not None for none objects

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Bleh

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Hack!

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Almost fixed the unit test

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge.

2009-11-09  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:

	merge...

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fixes to insert_event()

2009-11-09  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:

	removed subject["available"]

2009-11-09  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/resonance_engine.py:

	added origin

2009-11-09  Alexander Gabriel  <einalex@whistler>

	* test/resonance-engine-test.py:

	no close() anymore

2009-11-09  Seif Lotfy  <seif@Junior>

	* test/resonance-engine-test.py:

	:)

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	fix syntax error

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Reimplement GetEvents to do only one query.

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fixes in Engine.insert_event()

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix Event.append_subject()

2009-11-09  Seif Lotfy  <seif@Junior>

	* test/resonance-engine-test.py:

	more typo fixes

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix typo in Event.

2009-11-09  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/lrucache.py:

	more fixes

2009-11-09  Seif Lotfy  <seif@Junior>

	* test/resonance-engine-test.py:

	fixing the test

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Merge my stuff

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Fix Subject and Event classes

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix _FastDict.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/dbusutils.py:

	Merge with Alex.

2009-11-09  Alexander Gabriel  <einalex@whistler>

	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* zeitgeist/dbusutils.py:

	dbus api first changes.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Fix the view.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	little changes :)

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:
	* autogen.sh:
	* extra/test-daemon.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/dbusutils-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* test/resonance-engine-test.py:
	* test/run-all-tests.py:
	* test/test-dbus.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:

	Merge with Mikkel and re-add execution bits to files.

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	Merge Seif

2009-11-09  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:
	* test/resonance-engine-test.py:

	added more crap

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/resonance_engine.py:
	* autogen.sh:
	* extra/test-daemon.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/dbusutils-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* test/run-all-tests.py:
	* test/test-dbus.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:

	Merge RainCTs branch

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Properly return ids from insert_event(s)

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Convenience methods to create new Events and append Subjects to an instance of an event

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/resonance-engine-test.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/resonance_engine.py:

	Merge Seif's branch

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Skeleton for QueryCompiler
	
	Remove obsolete method

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/resonance_engine.py:

	Changes to Event class and add Subject class.

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* test/resonance-engine-test.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/resonance_engine.py:

	Add a view for events.

2009-11-09  Seif Lotfy  <seif@Junior>

	* _zeitgeist/engine/resonance_engine.py:

	more fixes and tweaks

2009-11-09  Seif Lotfy  <seif@Junior>

	* test/resonance-engine-test.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/resonance_engine.py:

	starting testcases and fixing some errors and bugs in resonance

2009-11-09  Siegfried Gevatter  <rainct@cheetah>

	* _zeitgeist/engine/remote.py:
	* autogen.sh:
	* extra/test-daemon.py:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/dbusutils-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* test/run-all-tests.py:
	* test/test-dbus.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:

	WIP - Remove deprecated methods from remote.py.

2009-11-09  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:
	* _zeitgeist/lrucache.py:

	WIP commit to push updates to the Zeitgeist hackfest engine-hackers

2009-11-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Small fixes to be more in lne with spec

2009-10-31  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	WIP commit. I am not sure this compiles...

2009-10-31  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/resonance_engine.py:

	Initial import of complete overhaul of Zeitgeist core logging database. Codename "Resonance"

2009-11-12  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	the new version we are developing at the hackfest will be the new 0.3 series. this is why we need a lower version number for this branch

2009-11-01  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/dbusutils.py:

	* Implemented 'org.freedesktop.DBus.Properties' Interface for
	RemoteInterface
	* added a 'version' property to RemoteInterface which returns a version
	tuple, right now it looks like (0, 3, 0) (LP: #462890)
	* Replaced some hardcoded interface and object_path identifier with the
	constants of the dbus module

2009-10-29  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* zeitgeist/dbusutils.py:

	* Implemented 'org.freedesktop.DBus.Properties' Interface for
	RemoteInterface  
	* added a 'version' property to RemoteInterface which returns a version
	tuple, right now it looks like (0, 3, 0) (LP: #462890)

2009-10-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:

	fix comments.

2009-10-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	engine-engine-test.py: Sort the list in testFindApplications before comparing it. All tests are done now, yay

2009-10-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	Fix testTagAndbookmark in engine-engine-test.py

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	Two errors to go

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	Fix tag filtering (' ,' changed to just ',').

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	The same is true for set/list comparations.

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	engine-engine-test.py: when we call find_events, content and source must be passed with '.uri', so that it is a string; we don't need to check for this in querymancer_engine.py as D-Bus already assures us that we got a string.

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	More fixing...

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	More cleanup and fixes in engine-engine-test.py

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Fix FindApplications.

2009-10-03  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/dbus-test.py:
	* test/test-dbus.py:

	Rename dbus-test.py to test-dbus.py, so that it doesn't run by default.

2009-09-27  Seif Lotfy  <seif@lotfy.com>

	* test/engine-engine-test.py:

	6 more to go
	find_events does nto return the application that executed the event

2009-09-27  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/engine_base.py:
	* test/engine-engine-test.py:

	needs fixing testSingleInsertGet is pretty messed up
	Ran 33 tests in 45.721s
	FAILED (failures=5, errors=6)
	getting there

2009-09-27  Seif Lotfy  <seif@lotfy.com>

	* test/engine-engine-test.py:

	fixed more tests

2009-09-27  Seif Lotfy  <seif@lotfy.com>

	* test/engine-engine-test.py:

	fixing issues with test units

2009-09-26  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/remote.py:
	* test/datamodel-test.py:
	* test/engine-engine-test.py:
	* test/run-all-tests.py:
	* zeitgeist-datahub:

	Change get_item to get_items at the engine.py level and fix it to work for the new API. Add an 'annotations' argument to InsertEvents, for convenience (warning: we now sometimes get an 'cannot guess type from empty dict' error, this needs to be fixed). Fix a couple test cases. Etc.

2009-09-23  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/engine-engine-test.py:

	Make unit test ZeitgeistEngineTest.testGetTagsTimestamp work again

2009-09-23  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/engine-engine-test.py:

	Make engine test, testDeleteItems(), work again

2009-09-23  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	Start making the engine-engine-test.py work again implementing the transition to event/item separation. I have one test working now, testDeleteItem(), and most of the infrastructure to get the remaining 30 tests working
	
	Commented out engine.update_items() since it was unused everywhere except in one test case

2009-09-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:
	* test/test-datamodel.rst:
	* zeitgeist/dbusutils.py:

	Merge.

2009-09-23  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer_engine.py:
	* zeitgeist/dbusutils.py:

	* event and item tags can now be a dict of different tag types

2009-09-23  Markus Korn  <thekorn@gmx.de>

	* test/engine-engine-test.py:

	* converted the 'ZeitgeistEngineTest.testBookmark' testcase of the engine to
	the 0.3 API

2009-09-23  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer_engine.py:

	* fixed inserting/querying of bookmarked items, an Annotation object takes a
	Content and Source object, and not their ids (LP: #429314)
	* tags are not 12th element of the result set, they are 13th, but use the
	row name instead to avoid future confusion

2009-09-21  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	* cosmetic change of order of elements in the definition of Event, Item and
	Annotation (essential attributes first)

2009-09-15  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	added TODO comment/question

2009-09-15  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer_engine.py:

	* fixed insertation of events for cases where application is not set (LP: #429255)

2009-09-15  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer_engine.py:

	* implemented bookmarking of events at insertation time

2009-09-14  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel.rst:

	fixed testcase for the Source symbols

2009-09-23  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	foo

2009-09-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Fix the endless loop, aparently SQLite didn't like the same table being used in FROM and INNER JOIN for different items. Performance of the query is awful so this needs some more work.

2009-09-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Initial work on updating the find_events query, while also making create_request_result more redable. Not working yet though, somehow ends in a loop or something and times out. Also, GetItems is another of the functions which need sto be fixed but can be left for later (or maybe we should use GetItems in FindEvents for the event info, the performance impact of this needs to be checked).

2009-09-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/querymancer_engine.py:

	* the timestamp attribute of an event has always an iteger value, handling
	it as such in string formating for event_uri
	* added an TODO item, there are open questions about event_uri for me, this
	comment can be removed once the questions are answered

2009-09-11  Markus Korn  <thekorn@gmx.de>

	* doc/event-item-separation.txt:

	added document to describe how events and items are represented in
	zeitgeist

2009-09-11  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine_base.py:

	* changed the engine baseclass to the new API

2009-09-11  Markus Korn  <thekorn@gmx.de>

	* test/run-all-tests.py:

	merged recent changes from TRUNK

2009-09-07  Markus Korn  <thekorn@gmx.de>

	* test/run-all-tests.py:

	* hide logging output when running tests
	make sure logging is configured before any other zeitgeist related modul
	is loaded

2009-09-05  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Change datamodel.py to use just _ instead of __ for private stuff (except for __CACHE as we have two of those, __CACHE and _CACHE).

2009-09-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist-datahub:

	finish the annotations stuff.

2009-09-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* zeitgeist-datahub:

	Remove UpdateItems for now, and fix a crash in zeitgeist-datahub when get_items returns None.

2009-09-06  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* zeitgeist/dbusutils.py:

	Add SetAnnotations.

2009-09-06  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/remote.py:
	* doc/dbus/source/index.rst:
	* zeitgeist-datahub:

	More stuff, documentation update.

2009-09-06  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* zeitgeist/dbusutils.py:

	More fixes. Insertion is working now, but still needs more work (eg. splitting tags to SetAnnotations)

2009-09-06  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* test/dbusutils-test.py:
	* zeitgeist/dbusutils.py:

	More fixes.

2009-09-05  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* zeitgeist/datamodel.py:

	Some fixes, and add a HeuristicActivity source for AutoTags (note that tag creation needs to be split out from InsertEvent and into a new SetAnnotation).

2009-09-05  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/loggers-datasources-recent-test.py:

	Fix loggers-datasoruce-recent-test.py as we removed InverseMimetypeTest.

2009-09-05  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist/dbusutils.py:

	Start adapting InsertEvents and use the chance to clean it up a bit. Also change 'app' -> 'application'.

2009-09-05  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* zeitgeist/dbusutils.py:

	Fix D-Bus signature and check_missing_items check.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/lrucache.py:
	* test/lrucache-test.py:
	* zeitgeist/datamodel.py:

	Merge with trunk.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Change datamodel.py to use just _ instead of __ for private stuff (except for __CACHE as we have two of those, __CACHE and _CACHE).

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Add Content.SOURCECODE to zeitgeist.datamodel.

2009-09-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/lrucache.py:

	Merge lp:~kakaroto/zeitgeist/main rev. 1102, with the following changes:
	
	On the line where we discard _Items if len(self._map) > self._max_size - 1 I have dropped the '-1'. We needed -1 when we checked against the _current_id because it is zero based, len(self._map) is not. The unit tests in test/lrucache-test.py complained about the cache being one item too small :-)
	
	In the _move_item_to_end() method I added another line after yours,
	
	+ if item == self._list_start :
	+     self._list_start = item.next
	
	- we also need to update the list start if we remove it.

2009-09-01  Youness Alaoui  <kakaroto@kakaroto.homelinux.net>

	* _zeitgeist/lrucache.py:

	When removing an item from the chained list, change item.prev and item.next too!

2009-09-01  Youness Alaoui  <kakaroto@kakaroto.homelinux.net>

	* _zeitgeist/lrucache.py:

	Do not delete the eldest item in the LRU if the current id is > max_size since the current id is incremented in every getitem and setitem!!!
	Also refactor a little to clean the code...

2009-09-02  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/lrucache.py:
	* test/lrucache-test.py:

	Add a unit test for iteration through the LRUCache, and fix an API bu where the internal LRUCache._Item instances where leaked by ther iterator. The unit tests still fail, but I expect that lp:~kakaroto/zeitgeist/main rev. 1102 fixes this

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/zeitgeist_base.py:

	Little fixes in zeitgeist_base.py.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:

	Cleanup _zeitgeist/loggers/zeitgeist_base.py, removing unused, obsolete (from the times of gnome-zeitgeist) and otherwise uneeded stuff.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Little fixes in recent.py.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/test-datamodel.rst:

	FindEvents: Return a list instead of a tuple, and att the new SOURCECODE content type to the datamodel test.

2009-09-04  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/singleton.py:
	* zeitgeist-datahub:
	* zeitgeist/datamodel.py:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/evolution.py.in:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/firefox.py.in:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/datasources/tomboy.py.in:
	* _zeitgeist/loggers/datasources/twitter.py:
	* _zeitgeist/loggers/datasources/twitter.py.in:

	Fix recent.py data source to work with the new model and disable all other sources. Typo fixes and random stuff in other files.

2009-09-02  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/querymancer_engine.py:
	* test/dbusutils-test.py:
	* zeitgeist/dbusutils.py:

	Start working on the new event/item separation in the API results. Also, "text" is now left as is and not set to the filename if empty.

2009-09-02  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	stupid indentation commit.

2009-09-02  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* test/engine-storm-test.py:
	* NEWS:
	* _zeitgeist/engine/Makefile.am:
	* po/POTFILES.in:
	* test/engine-engine-test.py:

	Remove the Storm backend, we don't want to maintain it in 0.3. Update the NEWS file to list all changes we have done so far.

2009-08-21  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/loggers/datasources/tomboy.py:

	changed tomboy note mimetype from text/plain to x-tomboy/note

2009-08-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* README:

	Remove python-storm dependency from README.

2009-08-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* README:

	Remove python-storm dependency from README.

2009-08-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:
	* configure.ac:

	Merge with 0.2.1 release.

2009-08-17  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:
	* configure.ac:

	Release 0.2.1

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	Merge.

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	_recentmanager.py: fix display name

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	Make it work also for special charactes. Thanks to Markus Korn for the idea.

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* README:
	* _zeitgeist/loggers/datasources/_recentmanager.py:
	* _zeitgeist/loggers/datasources/recent.py:

	Merge.

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	Fix exists() in _recentmanager.py to work with URIs with spaces.

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	_recentmanager.py: cleanup

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:
	* _zeitgeist/loggers/datasources/recent.py:

	_recentmanager.py: Use only one underscore, not two, for private stuff.

2009-08-16  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	The PyGTK+ fix we need is in 2.15.2, lower the dependency in recent.py.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* README:

	Add minimum python-gobject version to README, thanks to Owen Walters.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	NEWS: mention general performance improvements again now that the inserting is faster than with storm.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	NEWS: mention general performance improvements again now that the inserting is faster than with storm.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:

	Fix regression.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:

	Fix regression.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/storm_engine.py:
	* doc/dbus/source/index.rst:
	* test/engine-engine-test.py:

	Merge.

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/storm_engine.py:
	* doc/dbus/source/index.rst:
	* test/engine-engine-test.py:

	Let 'uri' and 'name' take a list of OR conditions (and for now we still accept a string aswell, to remain compatible with 0.2).

2009-08-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-storm-test.py:

	Revert WebHistory->Website change from 0.2 branch.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/benchmarks.py:

	Merge with Mikkel's benchmark changes.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/engine_base.py:

	Merge.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/benchmarks.py:

	Merge with Mikkel's benchmark tests.

2009-08-13  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* test/benchmarks.py:

	Implmenet some benchmarks for engine.find_events()

2009-08-13  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/benchmarks.py:

	Optimize the querymancer engine to use hardcoded SQL instead of the
	autogenerated queries at performance critical places. With this 
	improvement querymancer is now consistently faster than Storm in the 
	insert_events() benchmark
	
	Start making benchmarks.py more generic to be able to test find_events()
	performance in the future too

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* VERSION:
	* configure.ac:

	Merge.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* VERSION:
	* configure.ac:

	Bump version to 0.2.1~dev.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/benchmarks.py:

	Merge with Mikkel's changes to test/benchmarks.py.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/Makefile.am:

	Add _recentmanager.py to Makefile.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist-daemon.1:

	Add ENVIRONMENT VARIABLES section to manpage.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:

	Add querymancer to the Makefile.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-engine-test.py:
	* test/run-all-tests.py:

	Merge with trunk.

2009-08-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/engine_base.py:

	Add missing copyright headers.

2009-08-12  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* test/benchmarks.py:

	Add pseudo random objects to the engine instead one hard coded item. We now have reproducible have benchmarks for non-random, "a little random", and "quite random" items...

2009-08-12  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* test/benchmarks.py:

	Generify the test/benchmarks.py file.
	
	NOTICE: This seems to significantly slow down querymancer's benchmarks. I fear that we are first seeing the speed of the real querymancer now, nad the old results may have been skewed somehow. Still investigating...

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/Makefile.am:

	Add _recentmanager.py to Makefile.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/zeitgeist-daemon.1:

	Add ENVIRONMENT VARIABLES section to manpage.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:

	Add querymancer to the Makefile.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-engine-test.py:

	After fixing #404947, fix the find_events call used by FindApplications in remote.py and a test in engine-engine-test.py (they were incorrectly using order_asc=True).   Also accept 'default' as a value for ZEITGEIST_ENGINE.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:
	* test/run-all-tests.py:

	1) Show a meaningful exception when an engine can't be loaded.    2) Show an error when trying to load an engine which isn't recognized.      3) Change test/run-all-tests.py to ignore tests from engines other than the default.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/storm_engine.py:

	Merge:
	
	- Change default engine from Storm to Querymancer.
	
	- Fixed a bug where the sorting_asc=True in FindEvents would
	be ignored if used together with mode="mostused" (LP: #404947).

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/storm_engine.py:

	Fixed a bug where the sorting_asc=True in FindEvents would
	be ignored if used together with mode="mostused" (LP: #404947).

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/__init__.py:

	Change default engine from Storm to Querymancer.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-storm-test.py:

	Merge with trunk.

2009-08-12  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* test/engine-storm-test.py:
	* zeitgeist/datamodel.py:

	Fix Content.Audio -> Content.MUSIC in datamodel.py since this was what was expected elsewhere in the code...
	
	Fix outdated refs to name of the WEB_HISTORY content name as "WebHisory" which has lately been renamed to "Website" in the Nepomuk transition

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:

	Comes out single quotes are not escaped with \' but with ''. Fix this.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:

	Comes out single quotes are not escaped with \' but with ''. Fix this.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	Fix querymancer_engine.py so that it now passes all test (except for the -storm one, of course)

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	Fix querymancer_engine.py so that it now passes all test (except for the -storm one, of course)

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Fix error in querymancer_engine.py.

2009-08-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Fix error in querymancer_engine.py.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Allow spaces between the equal in Exec=X, searching for .desktop files.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Allow spaces between the equal in Exec=X, searching for .desktop files.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* README:

	Update NEWS and README.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* README:

	Update NEWS and README.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Forgot a debug statement.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Forgot a debug statement.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Fix _find_desktop_file_for_application and implement a fallback
	option in case the .desktop file has a different name than the
	command (checking all .desktop files in the path; may seem scary
	but it's very fast :)).

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Fix _find_desktop_file_for_application and implement a fallback
	option in case the .desktop file has a different name than the
	command (checking all .desktop files in the path; may seem scary
	but it's very fast :)).

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Rename get_desktopentry_for_application to _find_desktop_file_for_application
	(inside RecentlyUsedManagerGtk) and don't have it return a DesktopEntry
	object, as we didn't use it anyway.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:

	Rename get_desktopentry_for_application to _find_desktop_file_for_application
	(inside RecentlyUsedManagerGtk) and don't have it return a DesktopEntry
	object, as we didn't use it anyway.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	Fix a warning in _recentmanager.RecentManager.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:

	Fix a warning in _recentmanager.RecentManager.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:
	* _zeitgeist/loggers/datasources/recent.py:

	Add a fallback option to recent.py in case the installed PyGTK+
	version is older than the version which includes the fix for our
	segfault problem. It consists in connecting to the file used by
	GtkRecentlyUsed and parsing the XML from there.
	
	This is based upon a patch by Markus Korn, only with slight
	modifications.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/_recentmanager.py:
	* _zeitgeist/loggers/datasources/recent.py:

	Add a fallback option to recent.py in case the installed PyGTK+
	version is older than the version which includes the fix for our
	segfault problem. It consists in connecting to the file used by
	GtkRecentlyUsed and parsing the XML from there.
	
	This is based upon a patch by Markus Korn, only with slight
	modifications.

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-datahub:

	Ignore files in the datasources directory which start with an underscore

2009-08-11  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-datahub:

	Ignore files in the datasources directory starting with an underscore (_).

2009-08-10  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist/datamodel.py:

	Revert datamodel changes.

2009-08-10  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* _zeitgeist/lrucache.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:
	* zeitgeist/datamodel.py:

	Merge with trunk.

2009-08-10  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* po/ca.gmo:
	* po/cs.gmo:
	* po/de.gmo:
	* po/es.gmo:
	* po/fi.gmo:
	* po/fr.gmo:
	* po/nb.gmo:
	* po/nn.gmo:
	* po/pt.gmo:
	* po/pt_BR.gmo:
	* po/sv.gmo:
	* po/uk.gmo:
	* zeitgeist/_config.py:

	Remove junk files.

2009-08-10  Seif Lotfy  <seif@lotfy.com>

	* po/ca.gmo:
	* po/cs.gmo:
	* po/de.gmo:
	* po/es.gmo:
	* po/fi.gmo:
	* po/fr.gmo:
	* po/nb.gmo:
	* po/nn.gmo:
	* po/pt.gmo:
	* po/pt_BR.gmo:
	* po/sv.gmo:
	* po/uk.gmo:
	* zeitgeist/_config.py:
	* zeitgeist/datamodel.py:

	added new translations
	replacing Xesam ontology wiht Nepomuk

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Remove some debug messages that flooded the logs
	
	Add a clear_cache() method to EntityTable

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Fix get_tags() in querymancer_engine

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	More polish to querymancer_engine. Tests closer to passing (but they are still not). There is a problem with the item["comment"] field. The underlying db assumes that comments are stored as full annotations, and thus are not fields in the db. Somehow the Storm backend makes this *seem* to work, but querymancer has a hard time faking this without taking big compromises in speed.

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* test/engine-engine-test.py:

	Fix handling of empty strings in querymancer.py
	
	More polish and bug fixing on querymancer_engine.py, but it is still not passing more than 1! unit test :-S

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Use globally configured DB_PATH

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* test/engine-engine-test.py:

	Make the engine-engine-test.py independant of the storm_base module
	
	Add methods close() and is_closed() to the ZeitgeistEngine API. We need this to do proper unit testing without gross hacks.
	
	Make the factory and default engine getter in _zeitgeist/engine/__init__ check if the engine is closed.
	
	With this commit in place you should be able to run the unit tests with another engine by setting the ZEITGEIST_ENGINE environment variable. Fx. setting it to 'querymancer'...

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/lrucache.py:
	* test/benchmarks.py:

	Merge lp:~kamstrup/zeitgeist/zeitgeist-querymancer-engine. The engine is still not fully working, but is mostly complete. The Storm engine is still left as default.

2009-08-10  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/querymancer_engine.py:
	* test/benchmarks.py:

	Log what engine is used in zeitgeist.engine.get_default_engine()
	
	In querymance_engine override insert_items() to add a commit() on the connection
	
	Make benchmarks.py use get_default_engine() instead of hard coded Storm engine

2009-08-09  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:

	Pull in RainCt's delete_items() method from storm_engine

2009-08-09  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/engine/querymancer_engine.py:

	Optimize Table.find_one() in querymancer.py by using LIMIT 1
	
	Polish querymancer_engine. Porting is mostly done but still untested. Introduce LRUCache for EntityTables 

2009-08-09  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:

	More work on querymancer_engine - it is still not fully ported - so it doesn't work. Caveat emptor!

2009-08-09  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:

	Add a Table.find_one() method to querymancer.py
	
	Make Table.add() return the cursor.lastrowid in querymancer.py
	
	Add a Table.delete() method to querymancer.py

2009-08-08  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer_engine.py:
	* _zeitgeist/lrucache.py:

	Initial import of querymancer_engine.py - DOESN*T WORK AT ALL, very preliminary
	
	Add a .setdefault() method to LRUCache

2009-08-09  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	Add an additional deletion test for removing two items at the same time.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* doc/zeitgeist-daemon.1:

	Document --replace in zeitgeist-daemon's manpage.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* doc/zeitgeist-daemon.1:

	Document --replace in zeitgeist-daemon's manpage.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* po/zeitgeist.pot:
	* zeitgeist-daemon:

	Merge.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* po/zeitgeist.pot:
	* zeitgeist-daemon:

	Update PO files.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* zeitgeist-daemon:

	Revert EngineExit removal as the API should remain backwards-compatible.

2009-08-08  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* NEWS:
	* _zeitgeist/engine/querymancer.py:
	* _zeitgeist/singleton.py:
	* doc/zeitgeist-daemon.1:

	Merge Siegfrieds updates

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:

	querymancer.py: fix typo repo (relpace -> replace) and change the escaping from double quotes to simple quotes.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:
	* _zeitgeist/singleton.py:
	* doc/zeitgeist-daemon.1:

	Add a --quit option to zeitgeist-daemon, which lets the user nicely end any running Zeitgeist instance.

2009-08-08  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:

	Swapped value/columns for INSERT statements
	
	Bad method call to str.relpace() instead of str.replace() in the String.format()

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* NEWS:

	Add a NEWS file for 0.2.1.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-daemon:

	Remove the --no-trayicon option, the daemon shouldn't start the trayicon (but the trayicon should start the daemon or, if it's already running, connect to it).

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/storm_engine.py:

	update_items: commit() only once, at the end; this is not only good performance-wise, but ensures that we don't leave the DB in an inconsistent state (ie. remove the items but don't insert them back, for ex. in case of a crash or unexpected termination).

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/storm_engine.py:

	Move _update_item into update_items and let it benefit from the improved delete_items.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/querymancer.py:

	Merge with the querymancer.py addition.

2009-08-08  Mikkel Kamstrup Erlandsen  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/querymancer.py:

	Pull in querymancer.py from lp:~kamstrup/zeitgeist/zeitgeist-querymancer. The next step is to copy the old storm engine into a querymancer engine impl and rewrite the missing pieces

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:

	Move _delete_item into delete_items and change it to remove all items and all annotations for those items in only two queries.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/dbus-test.py:
	* test/engine-engine-test.py:

	Add a new test case to check if items are modified correctly.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/Makefile.am:
	* po/POTFILES.in:
	* zeitgeist/__init__.py:

	A few autotools fixes.

2009-08-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* test/run-all-tests.py:

	Remove a 'with'-statement to get compatibility with Python 2.5 (LP: #401198).

2009-08-05  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel.rst:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* _zeitgeist/lrucache.py:
	* test/engine-storm-test.py:
	* test/run-all-tests.py:
	* zeitgeist/datamodel.py:

	* Reworked the datamodel modul. zeitgeist.datamodel is now the central place
	which knows all about the Content and Source symbols used by zeiteist.
	* Added doctest runner to test/run-all-tests.py. All doctests in files
	matching test/*.rst are now also run by the test runner script.
	* added a clear() method to LRUCache to reset the cache

2009-08-04  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/lrucache.py:

	added myself to the copyright holders of _zeitgeist/lrucache.py

2009-08-04  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/lrucache.py:
	* zeitgeist/datamodel.py:

	Moved the cahcing metaclass using LRUCache to _zeitgeist/lrucache.py to not
	pull in the 'dependency' on _zeitgeist into the zeitgeist subpackage.

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* test/test-datamodel.rst:

	added doctest for the new datamodel modul

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* test/run-all-tests.py:

	Added doctest runner to test/run-all-tests.py. All doctests in files
	matching test/*.rst are now also run by the test runner script.

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/datamodel.py:

	added license header

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* test/engine-storm-test.py:
	* zeitgeist/datamodel.py:

	Reworked the datamodel modul. zeitgeist.datamodel is now the central place
	which knows all about the Content and Source symbols used by zeiteist.

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/lrucache.py:

	* added a clear() method to LRUCache to reset the cache

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* test/engine-base-test.py:
	* test/engine-storm-test.py:

	renamed engine-base test cases, infact they are all testcases for the strom implmentation of the backend

2009-08-03  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:
	* zeitgeist-daemon:
	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/storm_engine.py:

	Created a flexible engine framework for zeitgeist.
	* get_default_engine() is now in _zeitgeist.engine instead of
	_zeitgeist.engine.engine
	* get_default_engine() either returns the running engine instance, or
	creates a new one. To get the type of the new engine it looks in the
	ZEITGEIST_ENGINE environment variable, if not set it uses a hardcoded
	default, which is storm for now
	* new engine implementations can be added by creating
	_zeitgeist/engine/SOMENAME_engine.py, where SOMENAME is the type of the
	engine (like sqlite3, sqlite3_querymancer, couchdb etc.)
	* all engine tests are running using the strom engine implementation

2009-07-31  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	* fixed typo, the base class for all engines is BaseEngine and not
	* ZeitgeistEngine

2009-07-31  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/__init__.py:

	* fixed get_default_engine() function based on the discussion on IRC:
	- get_default_engine(9 does not take an argument for the engine type
	anymore.
	- if no engine is running, it looks in the 'ZEITGEIST_ENGINE' environment
	variable to get the type of the new instance. If this variable is not
	set it looks forr the hardcoded value in ENGINE_FALLBACK
	* added a new function call create_engine() to actually get an engine
	instance

2009-07-31  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* _zeitgeist/lrucache.py:

	* Merged latest changes from lp:zeitgeist

2009-07-23  Markus Korn  <thekorn@gmx.de>

	* test/dbus-test.py:
	* README:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/storm_engine.py:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/datasources/twitter.py:
	* _zeitgeist/loggers/iso_strptime.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* _zeitgeist/lrucache.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	merged changes from lp:zeitgeist

2009-07-23  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine_base.py:
	* _zeitgeist/engine/__init__.py:
	* _zeitgeist/engine/remote.py:
	* test/benchmarks.py:
	* test/engine-engine-test.py:
	* zeitgeist-daemon:
	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/storm_base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/storm_engine.py:

	started working on a general base class for the engine and moved all storm  
	related parts to storm_engine.py, which is an engine implementation which is 
	using storm as a backend. zeitgeist defaults to this engine. There is only  
	one small change to the internal zeitgeist API: the function to get a engine 
	instance is not part of zeitgeist.engine.engine anymore, it is now directly a
	function of the zeitgeist.engine modul.

2009-07-29  "Mikkel Kamstrup Erlandsen"  <mikkel.kamstrup@gmail.com>

	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/lrucache.py:

	Reimplement the LRUCache on top of a doubly linked list. This provides *much* better scalability than the heap based cache we had before
	
	Make the entity cache for base.URI use a cache size of 1000 (it was 10 before because the heap based cache scaled very badly)
	
	Make the applications cache in engine.py use a size of 100 rather than 10 (again because of better cache scalability with this commit)

2009-07-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/datasources/twitter.py:
	* _zeitgeist/loggers/iso_strptime.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* _zeitgeist/lrucache.py:
	* _zeitgeist/singleton.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:

	Fix headers, it's -.- coding: utf-8 -.-, coding, not encoding.

2009-07-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/dbus-test.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:

	Merge.

2009-07-20  Markus Korn  <thekorn@gmx.de>

	* test/dbus-test.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:

	* added a method to DBusInterface which uses the introspection feature of
	dbus to get all methods and signals for an interface.
	* use this new method in DBusInterface.connect() is the given signal name
	exists for the interface. If not a TypeError is raised.
	* API change: removed RemoteInterface.EngineExit signal, this signal is
	redundant as the dbus service already knows about dying services. The new
	way of connecting callbacks to a dying RemoteInterface is to use
	DBusInterface.connect_exit()
	* instead of using a self made function to check if a service is running use
	the NameHasOwner method of the dbus service
	* added a testsuite for the dbus interface and the daemon

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist-datahub:

	* adjustment to recent API change, use DBusInterface.connect_exit() to
	connect a callback to the quit event of the engine

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* test/dbus-test.py:

	* started a testsuite for the dbus interface and the daemon

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/singleton.py:

	* instead of using a self made function to check if a service is running use
	the NameHasOwner method of the dbus service

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:
	* zeitgeist-daemon:
	* zeitgeist/dbusutils.py:

	* API change: removed RemoteInterface.EngineExit signal, this signal is
	redundant as the dbus service already knows about dying services. The new
	way of connecting callbacks to a dying RemoteInterface is to use
	DBusInterface.connect_exit()

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	* added a method to DBusInterface which uses the introspection feature of
	dbus to get all methods and signals for an interface.
	* use this new method in DBusInterface.connect() is the given signal name
	exists for the interface. If not a TypeError is raised.

2009-07-20  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* README:

	Add missing dependencies to README (LP: #401196).

2009-07-16  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:
	* test/dbusutils-test.py:
	* zeitgeist/dbusutils.py:

	* zeitgeist/dbusutils.py: added an optional argument to
	EventDict.check_missing_items() to change this method to work as an
	inplace operation. This fixes a bug where the resulting EventChanged
	signal is not emmitted correctly. An alternative solution would be to
	change the variant_level of some dbus.Dictionary objects manually.
	* _zeitgeist/engine/engine.py: the change above made made
	ZeitgeistEngine._check_item() obsolete.
	* zeitgeist/dbusutils.py: mimetype is supposed to be a required value for a
	dict representing an event
	* updated tests for dbusutils to reflect the recent changes, and added new
	testcases

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	Update test case.

2009-07-15  Seif Lotfy  <seif@lotfy.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:

	little fix for having u unified way of forwarding signals

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	Add tag.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/dbus/source/index.rst:

	Update docs to mention that Item is a dict instead of a tuple.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* .bzrignore:
	* doc/dbus/Makefile:
	* doc/dbus/source/index.rst:

	Fix documentation generation after public/private dir split.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:
	* configure.ac:
	* doc/dbus/source/conf.py:

	Bump version number to 0.2.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/firefox.py:

	firefox.py: change 'Firefox History' to 'Web History' again, this was lost in a bad merge on revision 928.1.2.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/epiphany/zeitgeist-logger.py:

	Fix Epiphany plugin to use dicts instead of tuples.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* po/zeitgeist.pot:

	Update PO files.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:

	Change the 'Invalid key for filter' warning from ValueError to KeyError, and raise a TypeError when a string is send as 'tags' filter instead of a container type -tuple/list-.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* extra/Makefile.am:
	* extra/test-daemon.py:

	Fix extra/test-daemon.py and include it in the tarball.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/remote.py:
	* extra/test-daemon.py:

	Forgot to update in_signature for GetTags.

2009-07-15  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:

	fixed typo

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:

	Add a workaround to add compatibility with python-pysqlite2 until we got ride of Storm (LP: #399434).

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* extra/test-daemon.py:
	* test/engine-engine-test.py:

	Change the order of the arguments that GetTags takes to 'min_timestamp, max_timestamp, limit, filter', so that it matches the other methods.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/twitter.py:

	Fix zeitgeist -> _zeitgeist in twitter.py.

2009-07-15  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/loggers/datasources/twitter.py.in:
	* _zeitgeist/loggers/datasources/twitter.py:

	Fix twitter plugin (LP: #381521). Thanks to Sudharshan S.

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:

	Do not insert superfluos information about .desktop files into the DB (LP: #398440), and change the affected part of the code to raw SQL.

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/singleton.py:

	Okay, do it the proper way and wait for the bus to get free.

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/singleton.py:

	(Remove FIXME: we can wait for EngineExit, but it still can fail because after that it takes the old engine so time to disconnect from D-Bus).

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/singleton.py:

	Add a sleep to singleton.py to give the old engine time to exit, when using --replace; without this starting again failed sometimes.

2009-07-14  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/loggers/datasources/evolution.py:

	fixed typo

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* extra/epiphany/zeitgeist-logger.py:
	* extra/test-daemon.py:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:

	Update everything to use the new DBusInterface object in zeitgeist/dbusutils.py.

2009-07-14  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* po/ca.po:
	* po/cs.po:
	* po/de.po:
	* po/es.po:
	* po/fi.po:
	* po/fr.po:
	* po/nb.po:
	* po/nn.po:
	* po/pt.po:
	* po/pt_BR.po:
	* po/sv.po:
	* po/uk.po:
	* po/zeitgeist.pot:

	Cleanup logger stuff in the datasources (change the logger instance's name to 'log' everywhere so that it matches the other parts of the code, and remove unnecessary messages).

2009-07-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-engine-test.py:

	Add FindApplications method to the D-Bus API.

2009-07-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-engine-test.py:

	Merge with trunk and address Markus Korn's comment about a wrong docstring.

2009-07-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* test/engine-engine-test.py:

	Add a FindApplications method together with new unit tests for it.

2009-07-13  Tarmac

	* test/dbusutils-test.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/singleton.py:
	* test/engine-engine-test.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:

	Fix for LP: #397432
	- dbusutils.DBusInterface is now the common way to get a dbus interface to
	the zeitgeist engine. DBusInterface implements the 'Borg design
	pattern', so every instance will share the same state
	- dbusutils will now never run sys.exit() anymore, instead RuntimeErrors
	are raised. This way it is up to the client to react on them and stop
	the running python process properly
	- created DBusInterface.{BUS_NAME, INTERFACE_NAME, OBJECT_PATH} as a
	central place to store this definitional strings. This way it is easy to
	change the strings at some point and we don't have lots of hardcoded
	dbus string identifier all over our code
	
	Fix for LP: #398195
	- event objects returned by an API method are now dicts and not tuples
	- by changing this almost all helper functions in dbusutils are now moved to the EventDict class
	
	Fix for LP: #398379
	- the content for the EventsChanged signal is now a tuple as proposed in the bugreport
	
	Fix for LP: #398780
	use DBus introspection to check if there is already a running instance of  the zeitgeist service. This does not fire up the service if a  org.gnome.zeitgeist.service file exists

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/singleton.py:

	* changed SingletonApplication class in a smart way to avoid code
	duplication, thanks Siegfried!

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/singleton.py:

	* use DBus introspection to check if there is already a running instance of
	the zeitgeist service. This does not fire up the service if a
	org.gnome.zeitgeist.service file exists

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/singleton.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:

	* some fixes according to the comments of Siegfried Gevatter, thanks alot
	for the detailed review. Most significant change: changed name of
	DBusInterface.dbus_connect() to DBusInterface.connect()

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/remote.py:

	* made the new content of EventsChanged signal work, please ignore all my
	former comments where I said it does not work this way

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	fixed another docstring

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	fixed typo in docstring

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* test/dbusutils-test.py:

	* added some test cases for EventDict

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:

	added comment

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	* added docstrings to EventDict
	* EventDict.check_dict is now a classmethod

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* zeitgeist/dbusutils.py:

	* added an EventDict class. This subclass of dict is now the only place in
	the zeitgeist code which knows about the structure of an event dict. It
	knows which items are required, it knows about the type of each value, it
	knows about the default values and it has a method to convert a result
	tuple of an sql query into an event dict

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	* added docstrings to the classmethods of DBusInterface
	* simplified DBusInterface.get_session_bus()

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* zeitgeist/dbusutils.py:

	* moved definition of the signature of an event to remote.py
	* removed some unneeded functions and constants
	* added docstring to dbusutils.check_dict()

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* _zeitgeist/__init__.py:
	* zeitgeist:
	* zeitgeist/Makefile.am:
	* Makefile.am:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/Makefile.am:
	* _zeitgeist/loggers/datasources/Makefile.am:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* _zeitgeist/singleton.py:
	* configure.ac:
	* po/POTFILES.in:
	* po/ca.po:
	* po/es.po:
	* po/fr.po:
	* po/pt.po:
	* po/sv.po:
	* po/uk.po:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-base-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist:
	* _zeitgeist:
	* zeitgeist/__init__.py:
	* zeitgeist/__init__.py:
	* zeitgeist/config.py.in:
	* zeitgeist/_config.py.in:
	* zeitgeist/datamodel.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* zeitgeist/dbusutils.py:

	merged changes from lp:zeitgeist

2009-07-13  Markus Korn  <thekorn@gmx.de>

	* test/engine-engine-test.py:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:
	* zeitgeist/engine/engine.py:
	* zeitgeist/engine/remote.py:

	More work on refactoring the dbus interface:
	* zeitgeist/dbusutils.py:
	- changed datatype of events from tuple to a dict
	- removed plainify_dict() and dictify_data(), both functions are not
	needed anymore
	* zeitgeist-datahub: we don't need to convert items to a tuple anymore
	as the DBus API now accepts a dict
	* zeitgeist/engine/engine.py:
	- changed ZeitgeistEngine._format_result() to return a dict
	- make sure API methods to return dicts instead of tuples
	* zeitgeist/engine/remote.py: 
	- removed code to convert items to dict, as they are dicts now anyway
	- RemoteInterface.EventsChanged signal now returns a tuple instead   
	of a dict (LP: #398379). Note: the current solution will not work
	in case of a 'deleted' action because of a restriction in python's
	dbus implementation where a variant type cannot be a dictionary
	* test/engine-engine-test.py: adjusted the testcases for the engine to
	the new datatype of events

2009-07-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/dbusutils.py:

	* fixed imports, we don't need gettext and sys in dbusutils anymore

2009-07-11  Markus Korn  <thekorn@gmx.de>

	* zeitgeist/singleton.py:

	* fixed small error when RuntimeError is raised instead of a dbus error

2009-07-11  Markus Korn  <thekorn@gmx.de>

	* test/benchmarks.py:
	* zeitgeist-datahub:
	* zeitgeist/dbusutils.py:
	* zeitgeist/engine/remote.py:
	* zeitgeist/singleton.py:

	* Started on a fix for LP: #397432
	- dbusutils.DBusInterface is now the common way to get a dbus interface to
	the zeitgeist engine. DBusInterface implements the 'Borg design
	pattern', so every instance will share the same state
	- dbusutils will now never run sys.exit() anymore, instead RuntimeErrors
	are raised. This way it is up to the client to react on them and stop
	the running python process properly
	- created DBusInterface.{BUS_NAME, INTERFACE_NAME, OBJECT_PATH} as a
	central place to store this definitional strings. This way it is easy to
	change the strings at some point and we don't have lots of hardcoded
	dbus string identifier all over our code

2009-07-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* COPYRIGHT:

	COPYRIGHT: clarify that iso_strptime.py frmo Canonical is only LGPLv3 (not 'or later').

2009-07-13  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:

	Oops, the data sources had GPLv3+ instead of LGPLv3+ in the header, fix this.

2009-07-12  Tarmac

	* _zeitgeist/__init__.py:
	* zeitgeist:
	* zeitgeist/Makefile.am:
	* Makefile.am:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/Makefile.am:
	* _zeitgeist/loggers/datasources/Makefile.am:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* _zeitgeist/singleton.py:
	* configure.ac:
	* po/POTFILES.in:
	* po/ca.po:
	* po/es.po:
	* po/pt.po:
	* po/sv.po:
	* po/uk.po:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-base-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist:
	* _zeitgeist:
	* zeitgeist/__init__.py:
	* zeitgeist/__init__.py:
	* zeitgeist/config.py.in:
	* zeitgeist/_config.py.in:
	* zeitgeist/datamodel.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* zeitgeist/dbusutils.py:

	Separate source into a public and a private module.

2009-07-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* _zeitgeist/__init__.py:
	* zeitgeist:
	* zeitgeist/Makefile.am:
	* Makefile.am:
	* _zeitgeist/Makefile.am:
	* _zeitgeist/engine/Makefile.am:
	* _zeitgeist/engine/base.py:
	* _zeitgeist/engine/engine.py:
	* _zeitgeist/engine/remote.py:
	* _zeitgeist/loggers/Makefile.am:
	* _zeitgeist/loggers/datasources/Makefile.am:
	* _zeitgeist/loggers/datasources/evolution.py:
	* _zeitgeist/loggers/datasources/firefox.py:
	* _zeitgeist/loggers/datasources/recent.py:
	* _zeitgeist/loggers/datasources/tomboy.py:
	* _zeitgeist/loggers/zeitgeist_base.py:
	* _zeitgeist/loggers/zeitgeist_setup_service.py:
	* _zeitgeist/singleton.py:
	* configure.ac:
	* po/POTFILES.in:
	* po/ca.po:
	* po/es.po:
	* po/pt.po:
	* po/sv.po:
	* po/uk.po:
	* test/benchmarks.py:
	* test/datamodel-test.py:
	* test/engine-base-test.py:
	* test/engine-engine-test.py:
	* test/loggers-datasources-recent-test.py:
	* test/lrucache-test.py:
	* zeitgeist-daemon:
	* zeitgeist-datahub:
	* zeitgeist:
	* _zeitgeist:
	* zeitgeist/__init__.py:
	* zeitgeist/__init__.py:
	* zeitgeist/config.py.in:
	* zeitgeist/_config.py.in:
	* zeitgeist/datamodel.py:
	* zeitgeist/datamodel.py:
	* zeitgeist/dbusutils.py:
	* zeitgeist/dbusutils.py:

	Separate source into a public and a private module.

2009-07-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-datahub:

	zeitgeist-datahub: Catch all exceptions from InsertEvents and show them through the logging module; this way the datahub doesn't die in case a single data source is broken or something else unexpected happens.

2009-07-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* po/fr.po:

	Mark two incorrect translations in fr.po as fuzzy (we are a logger, not an indexer).

2009-07-12  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* test/engine-engine-test.py:

	Add a test case for delete_items (ensures that the event and the tags get deleted).

2009-07-10  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* zeitgeist-daemon:
	* zeitgeist-datahub:

	Add copyright headers to zeitgeist-daemon and zeitgeist-datahub files.

2009-07-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* doc/dbus/source/conf.py:
	* doc/dbus/source/index.rst:

	API Documentation Update:
	- Add "application" to Filters.
	- Change copyright holder to "The Zeitgeist Team".

2009-07-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* .bzrignore:
	* doc/dbus/source/index.rst:

	Fix documentation for Filter.

2009-07-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* .bzrignore:

	Add file to .bzrignore.

2009-07-08  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	Fix tags.

2009-07-08  Natan Yellin  <aantny@gmail.com>

	* zeitgeist/loggers/datasources/tomboy.py:

	Remove (at last) FIXME from tomboy.py.

2009-07-07  Siegfried-Angel Gevatter Pujals  <rainct@ubuntu.com>

	* VERSION:
	* configure.ac:

	Bump version number.

