2017-07-06  Carlos Garnacho  <carlosg@gnome.org>

	Release 1.99.0

	libtracker-miner: Fix warnings if move ops happened during initial crawling
	The checks to notify about indexing having finished on TrackerIndexingTree
	roots were mistaking ItemMovedData* with GFile*, which lead to warnings.
	This should be harmless, the signal might be possibly emitted before the
	move op is dispatched, that's all.

	tracker-miner-fs: Request source item URN as expected
	When the code to handle SPARQL updates related to move operations
	moved from libtracker-miner to tracker-miner-fs, we started querying
	the dest file here, which would return a NULL URN as expected, since
	it doesn't "exist" yet.

	miners: Request DBus name after creating miner objects
	Fixes those not seeming to autostart properly through the
	"tracker daemon -s" CLI command, because it calls for a method
	in an object that's not yet created at the time the DBus name
	is visible.

	libtracker-miner: Add missing ::move-file signal
	Fixes handling of moved files, since the subclass vmethod wouldn't
	be triggered.

2017-07-03  Sam Thursfield  <sam@afuera.me.uk>

	meson: Rearrange dependencies until things compile
	Targets far down the dependency chain were failing due to mysteriously
	missing symbols. The use of -Wl,--as-needed seemed to be triggering the
	issue.

	This only occured with new versions of Meson. Previously circular
	dependencies would be added recursively but this was removed with
	<https://github.com/mesonbuild/meson/pull/1545>.

	I'm not 100% sure how this fixes things, but I think that removing
	or at least reshuffling circular dependencies of libtracker-sparql
	means that libraries are passed to the linker in "correct" order.

2017-07-03  Piotr Drąg  <piotrdrag@gmail.com>

	Use glib preset for i18n
	https://bugzilla.gnome.org/show_bug.cgi?id=783750

2017-07-03  Carlos Garnacho  <carlosg@gnome.org>

	configure: Do not generate src/plugins/Makefile
	Makefile.am is not there anymore.

	utils: Remove gtk-sparql util
	It's not even ported to pygi, it could go to examples/ if refurbished,
	but there's aplenty on internet.

	utils: Remove clean-tracker-prefix script
	We've got make/ninja uninstall for that.

	Delete tracker-needle
	It was cool when Tracker search was barely integrated anywhere.
	Nowadays, it's nothing but an aging showcase app (eg. was conceived
	in the gtk2 days and barely ported to gtk3, and it shows everywhere).

	If you want a modern and capable search UI, try Nautilus. If you
	are outraged that tracker-needle is gone and ended up here, by all
	means be my guest, reset to the parent of this commit and take it
	out of tree. If you join #tracker I'll gladly give you advise on
	how could it be brought up-to-date. But our hands are full, sorry,
	we leave cool UIs to others.

	Delete tracker-preferences
	This is a mix of store and miner features which can't be assumed to go
	together. It is better to leave configuration UI up to the environment,
	in the GNOME case this is gnome-control-center search panel.

	For settings that fall in the cracks, or for environments that don't
	integrate Tracker search in their configuration UI, there's the rather
	capable dconf-editor which will provide all toggles, and will explain
	them better than any UI we may have.

	In the future the CLI tools might gain some configuration subcommand,
	but it will not be a graphical UI.

	Delete evolution/thunderbird/nautilus/firefox plugins
	Those are unmaintained, are broken, don't compile, or a combination of
	all. Sadly there hasn't been enough manpower during the last years to
	keep those up to par. Future seems shiny enough for nautilus, as the
	features are being developed in-tree.

	If anyone ever remembers there were such plugins and misses them
	enough to take over maintainership, by all means reset to the parent
	of this commit and take those out of tree. You will have my gratitude.

	Thanks too to everyone who ever contributed in those plugins, I'm
	not happy to let that much work go.

	libtracker-miner: Remove writeback API
	The only user that might ever care does already implement it itself.
	There is no need to provide this infrastructure that will be scarcely
	used in libtracker-miner API.

	tracker-miner-fs: Implement writeback atop TrackerMinerFS
	This implementation just pauses the miner while there's writeback
	items to process, and uses the filter_event vmethod to perform
	maintenance of writeback tasks. Functionally, is not that different
	from the TrackerMinerFS implementation.

2017-07-02  Carlos Garnacho  <carlosg@gnome.org>

	libtracker-miner: Add filter_event vmethod
	This is not a signal because external users of a TrackerMiner have no
	business in modifying behavior at this level, this is reserved for
	subclasses that presumably know what they are doing.

	This vmethod is toggled for every event that gets received from the
	TrackerFileNotifier, before the file gets to hit any processing queue.

	tests: Add missing macros to meson build instructions
	Those were added on autotools, but were forgotten on meson...

2017-07-01  Carlos Garnacho  <carlosg@gnome.org>

	libtracker-fts: Skip loading the FTS module if sqlite has it builtin
	It is unneeded, and the missing symbol will be treated as a fatal error.

2017-06-29  Carlos Garnacho  <carlosg@gnome.org>

	libtracker-data: Fix compile errors with --disable-journal

	libtracker-data: Allow using older sqlite API
	But warn about it, as it is unsafe.

	Merge branch 'wip/carlosg/domain-ontologies'

	libtracker-common: Add a last resort envvar to load default domain ontology
	This can only be used if the default domain ontology file is not found, and
	is now used on tests that do rely on the default tracker-store instance.

	Also, add back the TRACKER_DB_ONTOLOGIES_DIR, under the same restrictions.

	libtracker-miner: Add connection property to TrackerFileNotifier
	So it can be specified from the miner.

	tracker-store: Use wal_checkpoint API from TrackerDBInterface
	Better than calling the pragma and involving prepared statements

	libtracker-data: Make Tracker.DBStatement an InitiallyUnowned in vapi
	It does not matter much since the getter still returns a sunk reference,
	but better to be consistent with the real implementation.

	libtracker-control: Skip miners not meant to be loaded.
	This will make the miners not specified in the domain ontology
	description file invisible from the API user perspective.

	tracker-store: Add all known tracker miners to default domain ontology
	So it still behaves as it used to do.

	libtracker-common: Add domain ontology key/api to get expected miners
	This is purely a hint, and people may still run things manually or perform
	updates against this domain ontology themselves. Will be useful so we don't
	autostart more miners than necessary through the libtracker-control API.

	tracker-store: Remove ontology_name argument
	We do already deal with ontology locations at this point, which
	we also print.

	libtracker-data: Fix compilation on DISABLE_JOURNAL
	Pass the TrackerDataManager down tracker_backup_save(), so we can
	fetch the DB file underneath.

	tracker-extract: If there is a domain, set watch on it
	And exit as soon as the name vanishes. It may safely continue
	its operations on the next startup.

	tracker-miner-apps: If there is a domain, set watch on it
	And exit as soon as the name vanishes. It may safely continue
	its operations on the next startup.

	tracker-miner-fs: If there is a domain, set a watch on it
	And exit as soon as the name vanishes. It may safely continue
	its operations on the next startup.

	tracker-miner-rss: If there is a domain, set watch on it
	And exit as soon as the name vanishes. It may safely continue
	its operations on the next startup.

	tracker-store: If a domain is set, set a watch on it
	Tracker-store will wait till there are no elements left before
	exiting, in order to ensure it does so cleanly.

	libtracker-miner: Make TrackerMinerProxy look for the right tracker-store
	Use the domain name to find out the right tracker-store DBus name.

	libtracker-data: Ensure we set user data on an existing connection

	tracker-miner-rss: Look up the right dbus name for GraphUpdated
	This should be ported to TrackerNotifier, which already does the right
	thing.

	libtracker-sparql-backend: Ensure we always load the bus connection first
	Otherwise the database might not be created yet when creating the direct
	connection.

	libtracker-common: Use XDG_DATA_DIRS to find domain ontology definitions

	libtracker-control: Add domain argument to tracker_miner_manager_new_full
	I personally prefer using the excuse of the major version bump than adding
	a tracker_miner_manager_new_fuller() variant, as this is clearly a
	construct_only thing. Creating a TrackerMinerManager with an specific
	domain will allow dealing with the miners spawned for it.

	libtracker-control: Remove obscure environment variables
	These were supposedly added for testing, but they are not used
	anywhere, nor it sounds ok to fundamentally change TrackerMinerManager
	behavior. Let's remove these.

	miners: Add NameSuffix field to miner .service files
	This will be used by TrackerMinerManager in order to find out
	the right dbus names according to the domain ontology.

	tracker-miner-fs: Drop standalone DBus name for Files.Index
	Because we're registering 2 interfaces and 2 dbus names, both
	expose the same 2 interfaces and are introspectable the same way.
	This makes no sense, just use the org.freedesktop.Tracker1.Miner.Files
	name for both interfaces.

	libtracker-miner: Add TrackerMiner::connection property
	So it is possible to use TrackerMiner facilities in-process using
	a dedicated TrackerSparqlConnection. Basically store and mining
	handled by the client app.

	libtracker-sparql: Make TrackerNotifier check GraphUpdated from the domain
	It must listen to the signal from the right tracker-store instance.

	rss: Add --domain-ontology switch
	This allows tracker-miner-rss to dump data on other domain ontologies
	than the default one.

	tracker-extract: Add --domain-ontology switch
	This allows tracker-extract to dump data on other domain ontologies
	than the default one.

	tracker-miner-apps: Add --domain-ontology switch
	This allows tracker-miner-apps to dump data on other domain
	ontologies than the default one.

	tracker-miner-fs: Add --domain-ontology switch
	This allows running tracker-miner-fs on other domain ontologies
	moderated by a tracker-store daemon. The switch does:
	1) Set up the ontology domain for the default TrackerSparqlConnection
	2) Make the miner use a DBus name relative to the domain

	In result, tracker-miner-fs can take a different DBus name and talk
	to other tracker-store instances than the default.

	libtracker-sparql: Use TrackerDomainOntology on tracker_sparql_connection_get()
	Add a global tracker_sparql_connection_set_domain() call that allows setting
	domain ontology that the client shall use. This only affects the connection
	obtained through tracker_sparql_connection_get(), other constructors may have
	different settings.

	libtracker-sparql-backend: Set namespace on Log object
	So we can include libtracker-common vapi without conflicts

	tracker-store: Use TrackerDomainOntology helper

	tracker-store: Install default domain ontology
	This makes Tracker behave as it ever used to. Also add some comments
	so it serves as a base for other domain ontologies.

	libtracker-common: Add TrackerDomainOntology helper
	This just wraps the information that can be extracted from a
	domain ontology rule file.

	tracker-store: Make DBus unique name purely dependent on the domain
	i.e. just remove the ontology name from there. We do add the ".Tracker1"
	suffix though, just so Tracker gets its own namespace dependent on it, eg:
	org.gnome.Photos.Tracker1
	org.gnome.Photos.Tracker1.Miner.Files
	org.gnome.Photos.Tracker1.Miner.Extract

	tracker-store: Remove fine-grained domain ontologies CLI switches
	Only allow --domain-ontology/-d to specify the rule name. There is too
	much room for failure making it possible to provide all switches manually
	(eg. missing ones, or pointing to the wrong location).

	The ontology rules are installed at /usr/share, so presumably the author(s)
	know what they are doing.

	tracker-store: Remove dbus_path domain ontologies setting

	tracker-store: Register all objects with default DBus paths
	Let's make the DBus name customizable, but making the DBus paths
	customizable too seems a bit overkill. It is fine to have multiple
	services implementing /org/freedesktop/Tracker1/* objects

	libtracker-miner: Add TrackerMinerProxy object
	And shift all miner dbus handling from TrackerMiner. This object
	takes a TrackerMiner and implements the org.freedesktop.Tracker1.Miner
	interface for it on DBus.

	One notable difference in handling here is that libtracker-miner
	does not try to own DBus names anymore, that is left up to the caller.
	The registered object will be available on whatever dbus name the
	caller does register.

	For compatibility, all TrackerMiner implementations around have been
	made to request their usual name.

	libtracker-miner: Fix TrackerMiner::progress signal arguments
	The signal marshaller has an extra argument, that was not available in
	the class method.

	libtracker-miner: Merge tracker_miner_fs_check_file[with_priority]
	Only check_file() remains, with an extra priority argument. The default
	G_PRIORITY_HIGH in the older check_file() was unintuitive, and is now
	explicitly specified in the org.freedesktop.Tracker1.Miner.Files.Index
	interface calls.

	libtracker-miner: Remove tracker_miner_fs_check_directory*()
	More unused API that is a thin wrapper to TrackerIndexingTree, just
	remove it.

	libtracker-miner: Remove TrackerMinerFS API to add/remove directories
	The whole set of tracker_miner_fs_add_directory_without_parent(),
	tracker_miner_fs_directory_add(), directory_remove() and
	directory_remove_full() are all covered by TrackerIndexingTree and
	basically unused, except for code in examples/.

	libtracker-miner: Remove tracker_miner_fs_[sg]et_initial_crawling()
	It did nothing at the libtracker-miner level, and can be safely removed.

	tracker-miner-fs: Implement initial crawling fully here
	It seems this setting was just ignored at on libtracker-miner since the
	introduction of TrackerFileNotifier. And it does not make a lot of sense
	either, crawling is done for 2 purposes: checking mtimes and setting up
	monitors.

	So we have individual toggles for each of those, but if neither happens
	we could just not start the miner as well, which is most similar to the
	tracker-miner-fs behavior when this setting was introduced.

	libtracker-miner: Remove tracker_miner_fs_set_mtime_checking()
	This is just used to set the TRACKER_DIRECTORY_FLAG_CHECK_MTIME flag on
	the TrackerIndexingTree for all files. Given libtracker-miner has this
	fine grained switch and all use of it happens in src/miners/fs, just move
	the global toggle there and remove it from libtracker-miner API.

	The only usage of this flag inside libtracker-miner happened inside
	tracker_miner_fs_directory_add(), which was superseded by
	TrackerIndexingTree too and is scheduled for removal.

	tracker-miner-fs: Adopt TrackerThumbnailer from libtracker-miner
	It makes no sense to have that at the library level, just move thumbnail
	handling to TrackerMinerFiles.

	Coincidentally, this removes further queries that required knowledge about
	the ontology in TrackerMinerFS.

	libtracker-miner: Remove tracker_miner_fs_force_recheck()
	It's unused and unneeded, just set the TRACKER_DIRECTORY_FLAG_CHECK_MTIME
	flag on the TrackerIndexingTree.

	libtracker-miner: Remove tracker_miner_fs_force_recheck()
	It's been a no-op for years.

	libtracker-miner: Remove tracker_miner_fs_get_parent_urn()
	It is cached once to be used once. Besides, the parent GFile is
	obviously guaranteed to be a folder, and folders are (not so
	obviously) guaranteed to be cached. Thus looking up the URN should
	be fast enough.

	libtracker-miner: Add TrackerMinerFS::move-file vmethod
	We delegate the SPARQL generation to this vmethod, in order to
	keep TrackerMinerFS as agnostic of the ontology as possible.

	libtracker-miner: Split ::remove-file into two signals
	The only_children argument is a bit awkward as we emit ::remove-file
	on a file that is not removed at all. The TrackerSparqlBuilder argument
	has been also removed (the signals just have a gchar* return value
	containing the SPARQL for the delete op) so it's up to the caller to
	decide how to compose the SPARQL.

	This allows removing some more knowledge about specific ontologies
	from TrackerMinerFS, the ontology-dependent upper layers will know
	better how to delete the corresponding entities.

	libtracker-miner: Change API of ::process-file[-attributes]
	There's a few changes here:
	- The 2 vmethods are now given a GTask, its cancellable is to be
	  used if the handling goes async.
	- tracker_miner_fs_file_notify() has changed into a more generic
	  tracker_miner_fs_notify_finish() method, that takes such GTask
	  and completes it.
	- The vmethods are no longer given a TrackerSparqlBuilder, instead
	  they are expected to create the SPARQL through whatever mean is
	  most fit. The sparql is given in the tracker_miner_fs_notify_finish()
	  func. This opens the door to TrackerMinerFS implementations using
	  TrackerResource.

	The intent is 1) Pass something to these vmethods that the user
	can't forge or mess with, as matching on GFile relies that it's the
	same pointer that it was given in the vmethods. And 2) Make the finish()
	function more generic to be fit to other methods going async.

	Remove ignore_next_update() API
	It's been deprecated for a long time, it stands in the middle of
	detaching TrackerMiner from DBus, and it's one less piece of
	ontology-dependent libtracker-miner code. Enough reasons to
	finally remove this.

	Remove libmediaart code entirely
	The libmediaart dependency was disabled in commit 6a05068624bfa, it
	doesn't make sense to drag this code around.

	docs: Ensure to create the output dir in ttl2sgml

	docs: Remove duplicated code
	Move these functions to ttl_model instead of keeping several
	copies around.

	docs: Remove "see also" section from ontology class documentation
	The link is also included (from the description file, not guessed) in
	the main ontology overview page. That seems sufficient.

	docs: Do not add copyright by default on the ontology doc tool
	Even less that one. The doc tool is not in the position to decide the
	ontology copyright at all.

	docs: Generate documentation for internal ontology in libtracker-sparql

	docs: Unify ontology documentation tools
	Now we have a single tool for the general ontology documentation
	and the per-class/property one.

	docs: Remove dead code
	This is basically unused, we use prefixes from ontology files
	themselves.

	docs: Use xi:include to optionally load ontology explanations
	Less toggles on the doc generation tool, more seamless documentation
	blending. Sounds like win-win.

	docs: Add documentation around creating and maintaining ontologies
	If we now expose that detail to users, it's better to have it
	documented properly.

	libtracker-data: Remove static variable
	Just keep the current journal filename number in the TrackerDBJournal.

	libtracker-fts: Avoid static variables
	Just keep a per-interface table of FTS properties in order to
	calculate weights.

	libtracker-data: Make TrackerDataManager a non singleton
	There can now be multiple instances looking into separate database
	and journal locations. TrackerDataManager has been made an initable
	too, and busy handling has been lifted to a signal, in order to
	reduce the arguments at new() a bit.

	libtracker-data: Remove TrackerDBInterface busy functions
	We can't report progress from updates anyway, it doesn't make sense
	to spam the same state over and over. Just call the busy handler
	directly in the only place it's being used, at the beginning of the
	integrity check.

	libtracker-fts: Remove tracker_fts_init/shutdown functions
	Instead, load the FTS extension in every TrackerDBInterface manually.

	libtracker-fts: Pass TrackerDBInterface through FTS machinery
	It will be useful in order to retrieve the data manager, and the
	TrackerOntologies.

	libtracker-data: Add API to attach user data to TrackerDBInterfaces
	This will be used to attach the data manager.

	libtracker-data: Drop unused function

	libtracker-data: Make tracker-data-update.c a non singleton
	In order to avoid messing much with API, just call it TrackerData
	for consistency, although it's not the best name... The data manager
	will keep one of these around to perform updates on the database.

	libtracker-data: Make TrackerDBManager a non-singleton
	It's turned into a singleton pointer in tracker-data-manager.c atm,
	but now multiple DB managers pointing to different locations are
	possible.

	tracker-miner-fs: Adopt DBManager API to manipulate stamp files
	Those just matter for indexing purposes, so move all management here.
	tracker-extract has just been made to equate SCHED_IDLE_FIRST_INDEX to
	SCHED_ALWAYS.

	libtracker-data: Use flags for ro/use_mutex in TrackerDBInterface
	Caller is now responsible of setting the USE_MUTEX flag, instead of
	having the interface poke the DB manager.

	libtracker-data: Turn tracker ontologies into an object
	And make it a singleton in tracker-data-manager.c at the moment.

	libtracker-common: Make locale readonly
	There's no reasonable situation why we should change this from
	a library. Initialization (and shutdown) was also mostly useless
	as it would just set the same settings that it just retrieved.
	It's been turned into a sanity check for the relevant places.

	libtracker-data: Make journal writers non-singletons
	We keep two separate writers, one for the ontology and another one
	for regular data. The ontology one is just used during database
	initialization and is not expected to survive past
	tracker_data_manager_init(). The second writer will remain in place
	in order to dump user updates.

	libtracker-data: Move journal deletion code to tracker-db-journal.c
	And call it directly from the "tracker reset" subcommand, which seems
	about the only place where this is needed.

	In the future, we should just consider cache/journal directory ours,
	delete those altogether, and avoid these horrible layering breaks.

	libtracker-data: Use data location directly to tracker_data_backup_*()
	Instead of figuring it out from the journal filename.

	libtracker-data: Remove another filename argument in TrackerDBJournal
	Which also makes it use the right data location for it.

	libtracker-data: Make journal reader a non singleton
	We initialize and shutdown it quite selectively, it can be safely
	made a temporary object which is later freed.

	libtracker-data: Demote g_message()s to g_info()
	g_message() is not filtered out by the default glib log handler, and it
	doesn't make sense that we differ in behavior here. Since this is a
	library and many new portions are now exposed to clients, just use
	g_info() for all this logging, which leave stdout clear unless users
	set G_MESSAGES_DEBUG.

	libtracker-common: Remove libmediaart log handler
	libmediaart was split from tracker ages ago.

	libtracker-sparql: Do not modify messages verbosity
	This is a library, G_MESSAGES_DEBUG is just not ours. The TRACKER_VERBOSITY
	envvar still affects all tracker executables, but users will need to manually
	set G_MESSAGES_DEBUG if they want to catch tracker debugging from an app linking
	to it.

	libtracker-bus: Move tracker-store ping call here
	We just need this if we have a bus-based connection at all.

	libtracker-fts: Remove TRACKER_FTS_STOP_WORDS envvar
	If we have to keep one for tests, let it be
	TRACKER_LANGUAGE_STOP_WORDS_DIR, and point to a dummy location
	in the fts tests.

	libtracker-data: Remove TRACKER_PRAGMAS_FILE envvar
	Now that we are exposing databases to apps, it doesn't make sense to offer
	an environment variable that can entirely mangle how tracker behaves for
	these (Nor IMHO made sense back in the days, either).

	Let's just remove this envvar and pretend it never existed.

	tracker-store: Move handling of TRACKER_DB_ONTOLOGIES_DIR envvar here
	It does not make sense at the libtracker-data level, still might make some
	here.

	libtracker-data: Remove filename argument from journal init funcs
	We already pass a GFile with the location, just use the predefined basename
	for these.

	libtracker-data: Use filename based on cachedir for ontologies.gvdb
	Otherwise other database prefixes mess up with the canonical location.

	libtracker-data: Build all journal file locations from the given GFiles
	This is necessary to make the journals ubiquitous, as otherwise we mangle
	the canonical database when opening other ones.

	ontologies: Move nepomuk files into separate directory

	libtracker-data: Require location directories in all internals
	cache/journal/ontology dirs are now mandatory in
	tracker_data_manager_init(), all the upper layers must know what
	database and ontology they are using.

	libtracker-data: Handle backups where journal/cache dirs are the same
	Otherwise the tmp dir would be already created, causing warnings.

	libtracker-sparql: Add tracker_sparql_connection_local_new(_async) methods
	These calls make private sparql databases available to applications.

	libtracker-direct: Allow creating readwrite databases through direct connection
	This will allow creating sparql databases that are private to applications. They
	will be able to get multiple readonly handles, and updates will be handled by
	a single private thread. Pretty much like tracker-store (and the refactor took
	heavy inspiration from it), just sans dbus.

	So far, only the current direct connections (i.e. readonly, pointing to
	~/.cache/tracker) have been replaced.

	libtracker-data: Pass TrackerDBInterface to wal hook
	So there's at least some context to pull the DBManager from, Otherwise
	we're down to DBManager singleton lookups, which might not hold true
	forever.

	libtracker-data: Use GFile for cache/journal arguments
	Deal with those from tracker_data_manager_init() on as GFiles,
	those are still required to be local though. This is more for
	consistency.

	tests: Remove duplicate ontologies in libtracker-data tests
	Now TrackerDataManager can lookup ontologies in a directory, as opposed
	to tests_schemas which could point to specific files. Luckily the ontology
	files were repeated over and over for each test, so it was easy enough to
	compress the ontologies into one per set of tests.

2017-06-28  Carlos Garnacho  <carlosg@gnome.org>

	libtracker-data: Remove test_schemas argument from TrackerDataManager
	This is superfluous now that we can load ontologies from custom places.

	libtracker-data: Take a GFile for ontology location in the data manager
	The other tracker_data_manager_init() arguments taking file paths will
	follow. This fully exposes the ability to load ontologies from resource://
	locations.

	ontologies: Build dc/xsd/rdf/nrl/nao as GResource
	Those ontology files are the tracker core, as the database files' structure
	is modeled around those classes and properties. Include those as a GResource
	so they're guaranteed to be there, all other ontology files are optional
	and must be provided on TrackerDataManager initialization.

	The NAO ontology has been split between the official bits (included in the
	GResource) and the non-official bits (just used by the evolution miner, and
	moved to 90-tracker)

	libtracker-data: Use GFile throughout the TrackerDataManager ontology bits
	Use a GFileEnumerator and GFile to load the ontology files. This makes it
	possible to use other than local paths for these.

	libtracker-data: Make TrackerTurtleReader take GFiles
	Instead of file paths. This is so we can load ontology files
	from resource:// uris. All callers have been changed accordingly.

2017-06-28  Philip Van Hoof  <philip@codeminded.be>

	Domain-ontologies: allow more flexibility on locations. Example:
	/opt/tracker/share# cat tracker/domain-ontologies/test.rule

	[DomainOntology]
	DataLocation=%HOME%/.cache/test/data
	CacheLocation=%HOME%/.cache/test/cache
	OntologyLocation=%SHAREDIR%/tracker/ontologies
	Domain=test
	DBusPath=/test
	OntologyName=test

	Add cache location to db manager and data manager

	Some unique shortcut names

	Allow loading domain ontology from .rule file

	Allow loading domain ontology from .desktop file

	Allow loading domain ontology from .desktop file

	tracker-store: Allow running multiple D-Bus services for domain ontologies

	libtracker-data, tracker-store: domain specific ontologies

	Whitespace fixes

	libtracker-data: tracker-store: Initial infrastructure to support domain specific ontologies

2017-06-28  Carlos Garnacho  <carlosg@gnome.org>

	configure: Bump API version

	autotools: Don't set -Wl,--enable-new-dtags globally
	Just set it in library LDFLAGS, otherwise introspection may
	find the installed libraries before the ones being built, which
	is not the right thing if there are new symbols/types to be looked
	up.

	libtracker-miner: Look up for the gir in the right place on g-ir-compile
	I now wonder how it ever succeeded locally...

	autotools: Fix srcdir!=builddir issues
	The gir should be generated in builddir for real.

	autotools: Build and merge C/Vala girs in libtracker-sparql
	Following the meson changes, build 2 separate static libs, generate
	introspection stuff for those, and put them together in
	src/libtracker-sparql-backend.

	https://bugzilla.gnome.org/show_bug.cgi?id=782091

	libtracker-sparql: Drop needless typedef
	We don't need defining TrackerSparqlBuilder here, and it causes it
	to get picked up twice in C and Vala girs.

	https://bugzilla.gnome.org/show_bug.cgi?id=782091

2017-06-28  Sam Thursfield  <sam@afuera.me.uk>

	Fix missing introspection data for libtracker-sparql (when using Meson)
	Up til now only the Tracker.SparqlConnection and Tracker.SparqlBuilder
	resources were introspectable. This is because we only used the
	introspection output from `valac`, but other bits of libtracker-sparql
	have since been added that are written in C.

	There seems to be no way to generate a single .gir for a combined C and
	Vala codebase, so instead I have written a simple `g-ir-merge` script
	which can combine two different namespaces into a single .gir.

	This is currently tested and working with the Meson build instructions.
	It would be possible to implement this for the Autotools build
	instructions as well.

	https://bugzilla.gnome.org/show_bug.cgi?id=782091

2017-06-24  Sam Thursfield  <sam.thursfield@codethink.co.uk>

	Fixes to Meson build system
	First, instead of using add_global_arguments() we now use a variable
	to set global compiler args. It turns out that add_global_arguments()
	is broken if you ever want to include your project as a subproject of
	something else.

	Second, dependencies weren't being specified correctly. These are
	hopefully now fixed to avoid any more random build failures.

2017-06-23  Carlos Garnacho  <carlosg@gnome.org>

	libtracker-data: Protect sqlite3_bind*() with interface lock
	There may be multiple cursors/db_statements from the same db interface
	being accessed from multiple threads. This must be under the
	TrackerDBInterface lock in order to prevent threading issues.

	https://bugzilla.redhat.com/show_bug.cgi?id=1404285

2017-06-18  Jordi Mas  <jmas@softcatala.org>

	Fix to Catalan translation

	Update Catalan translation

2017-06-08  Sam Thursfield  <sam@afuera.me.uk>

	Remove Maemo/Meego leftovers
	This removes various code paths that we believe to be unused.

	  * The userguides miner has been removed altogether.
	  * The application miner no longer parses MeeGo-style .desktop files
	  * The TRACKER_DISABLE_MEEGOTOUCH_LOCALE environment flag is gone
	    (it already did nothing)
	  * Character set detection with libmeegotouch is removed, only enca
	    or libicu are supported
	  * Meego-specific flags are gone from .desktop files
	  * Functional tests have lost their vestigal Scratchbox and Aegis support

	There are 5 ontologies referencing Maemo, 4 of which are largely unused.
	These have been kept around in case anyone is using them outside
	Tracker.

	https://bugzilla.gnome.org/show_bug.cgi?id=783555

	Remove IDE files that were accidentally committed
	This was my fault, just over a year ago in commit b6c1b5cb638051155

	... sorry!

	Remove obsolete references to the --disable-miner commandline flag

2017-06-06  Carlos Garnacho  <carlosg@gnome.org>

	tracker-extract: Fix typo in last commit
	The decoder is bcmdec, not bmcdec. I managed to mistype it all over the
	place.

2017-06-04  Carlos Garnacho  <carlosg@gnome.org>

	tracker-extract: Blacklist vaapi/bmcdec gstreamer elements
	Remove these from the registry after initialization, the vaapi
	one could just cause undesired output/warnings after seccomp forbid
	it to do something. The bmcdec element is dumber and would just
	crash after shmget() despite trying to refuse it politely with an
	appropriate errno.

	Fixes SIGSYS on shmget() from gstreamer1-plugin-crystalhd if it
	happens to be installed and a video file is indexed. The blacklisting
	code has been lifted from totem-video-thumbnailer.

2017-05-28  Марко Костић  <marko.m.kostic@gmail.com>

	Update Serbian translation
	(cherry picked from commit bdba71e0313b91ca7d5eea275bd1d559527302c8)