Hi maitrey,

Seem with this new update of Tracker, we got some new issues, BMC#9858 and 
BMC#9873

Please take a look

Peter

> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of maimishr
> Sent: Tuesday, November 09, 2010 9:42 PM
> To: [email protected]
> Subject: [meego-commits] 9334: Changes to Trunk:Testing/tracker
>
> Hi,
> I have made the following changes to tracker in project Trunk:Testing. Please
> review and accept ASAP.
>
> Thank You,
> maimishr
>
> [This message was auto-generated]
>
> ---
>
> Request #9334:
>
>   submit:   devel:contentfw/tracker(r23) -> Trunk:Testing/tracker
>
>
> Message:
>     * Wed Nov 03 2010 Maitrey Mishra <[email protected]> -
> 0.9.26
> - BMC - 6350
> - Added the patch for she-bang in functional tests
> - Renamed the patches
> - Restructured tracker packages into 3 subpackages tracker-devel,
> tracker-tests and tracker-utils
> - Updated the version to 0.9.26
>
> State:   new          2010-11-09T05:41:26 maimishr
> Comment: None
>
>
>
> changes files:
> --------------
> --- tracker.changes
> +++ tracker.changes
> @@ -0,0 +1,7 @@
> +* Wed Nov 03 2010 Maitrey Mishra <[email protected]> - 0.9.26
> +- BMC - 6350
> +- Added the patch for she-bang in functional tests
> +- Renamed the patches
> +- Restructured tracker packages into 3 subpackages tracker-devel,
> tracker-tests and tracker-utils
> +- Updated the version to 0.9.26
> +
>
> old:
> ----
>   0001-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
>   0002-Tracker-mediatype-signals.patch
>   bug155_workaround.patch
>   fix-shebang-on-testscript.patch
>   tracker-0.7.23-desktop-files.patch
>   tracker-0.9.16.tar.bz2
>
> new:
> ----
>   0001-Tracker-0.7.23-desktop-files.patch
>   0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
>   0003-Bug155-workaround.patch
>   0004-Fix-shebang-on-testscript.patch
>   0005-Fix-shebang-on-functionaltests.patch
>   tracker-0.9.26.tar.bz2
>
> spec files:
> -----------
> --- tracker.spec
> +++ tracker.spec
> @@ -1,6 +1,6 @@
>  #
> -# Do not Edit! Generated by:
> -# spectacle version 0.18
> +# Do NOT Edit the Auto-generated Part!
> +# Generated by: spectacle version 0.20
>  #
>  # >> macros
>  %define enable_demo 0
> @@ -8,49 +8,70 @@
>
>  Name:       tracker
>  Summary:    An object database, tag/metadata database, search tool and
> indexer
> -Version:    0.9.16
> +Version:    0.9.26
>  Release:    1
>  Group:      Applications/System
>  License:    GPLv2+
> -URL:        http://www.tracker-project.org/
> +URL:        http://ftp.gnome.org/pub/GNOME/sources/tracker/0.9/
>  Source0:
> http://ftp.gnome.org/pub/GNOME/sources/%{name}/0.9/%{name}-%{version}.
> tar.bz2
>  Source1:    tracker-rpmlintrc
>  Source100:  tracker.yaml
> -Patch0:     tracker-0.7.23-desktop-files.patch
> -Patch1:
> 0001-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> -Patch2:     bug155_workaround.patch
> -Patch3:     fix-shebang-on-testscript.patch
> -Patch4:     0002-Tracker-mediatype-signals.patch
> -Requires:   exempi
> -Requires:   poppler-utils
> +Patch0:     0001-Tracker-0.7.23-desktop-files.patch
> +Patch1:
> 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> +Patch2:     0003-Bug155-workaround.patch
> +Patch3:     0004-Fix-shebang-on-testscript.patch
> +Patch4:     0005-Fix-shebang-on-functionaltests.patch
> +Requires:   gst-plugins-base >= 0.10
> +Requires:   gst-plugins-good >= 0.10
>  Requires:   o3read
> -Requires:   sqlite >= 3.6.23
> +Requires:   unzip
> +Requires:   w3m
>  Requires(post): /sbin/ldconfig
> +Requires(post): /bin/touch
> +Requires(post): gtk2
>  Requires(postun): /sbin/ldconfig
> +BuildRequires:  pkgconfig(dbus-1)
> +BuildRequires:  pkgconfig(dbus-glib-1) >= 0.60
> +BuildRequires:  pkgconfig(dbus-python)
> +BuildRequires:  pkgconfig(exempi-2.0)
> +BuildRequires:  pkgconfig(gee-1.0)
> +BuildRequires:  pkgconfig(glib-2.0) >= 2.24.0
>  BuildRequires:  pkgconfig(gmime-2.4)
> -BuildRequires:  pkgconfig(dbus-glib-1)
> -BuildRequires:  pkgconfig(pango)
> -BuildRequires:  pkgconfig(sqlite3)
> +BuildRequires:  pkgconfig(gstreamer-0.10)
> +BuildRequires:  pkgconfig(gstreamer-audio-0.10)
> +BuildRequires:  pkgconfig(gstreamer-plugins-base-0.10)
> +BuildRequires:  pkgconfig(gstreamer-interfaces-0.10)
> +BuildRequires:  pkgconfig(gstreamer-video-0.10)
>  BuildRequires:  pkgconfig(gtk+-2.0)
> +BuildRequires:  pkgconfig(gtk-doc)
> +BuildRequires:  pkgconfig(icu)
>  BuildRequires:  pkgconfig(id3tag)
> -BuildRequires:  pkgconfig(vorbis)
> -BuildRequires:  pkgconfig(uuid)
> -BuildRequires:  pkgconfig(gee-1.0)
> -BuildRequires:  pkgconfig(totem-plparser)
>  BuildRequires:  pkgconfig(libexif)
> -BuildRequires:  pkgconfig(exempi-2.0)
> -BuildRequires:  pkgconfig(taglib)
>  BuildRequires:  pkgconfig(libgsf-1)
> +BuildRequires:  pkgconfig(libiptcdata)
> +BuildRequires:  pkgconfig(libpng12)
> +BuildRequires:  pkgconfig(libxml-2.0)
> +BuildRequires:  pkgconfig(ossp-uuid)
> +BuildRequires:  pkgconfig(pango)
>  BuildRequires:  pkgconfig(poppler-glib)
> -BuildRequires:  pkgconfig(gstreamer-video-0.10)
> -BuildRequires:  pkgconfig(gstreamer-interfaces-0.10)
> -BuildRequires:  pkgconfig(gstreamer-audio-0.10)
> +BuildRequires:  pkgconfig(sqlite3)
> +BuildRequires:  pkgconfig(taglib)
> +BuildRequires:  pkgconfig(totem-plparser)
> +BuildRequires:  pkgconfig(uuid)
> +BuildRequires:  pkgconfig(vala-1.0)
> +BuildRequires:  pkgconfig(vorbis)
> +BuildRequires:  fdupes
>  BuildRequires:  gettext
> -BuildRequires:  desktop-file-utils
> +BuildRequires:  giflib-devel
>  BuildRequires:  intltool
> +BuildRequires:  libenca-devel
>  BuildRequires:  libjpeg-devel
> -BuildRequires:  giflib-devel
> -BuildRequires:  libtiff-devel
> +BuildRequires:  libquill-devel
> +BuildRequires:  libtiff-devel >= 3.8.2
> +BuildRequires:  perl-XML-Parser
> +BuildRequires:  pygobject2
> +BuildRequires:  python >= 2.6
> +BuildRequires:  zlib-devel
>
>
>  %description
> @@ -69,35 +90,57 @@
>  all types of files and other first class objects
>
>
> -
>  %package devel
> -Summary:    Headers for developing programs that will use %{name}
> +Summary:    Development files for %{name}
>  Group:      Development/Libraries
>  Requires:   %{name} = %{version}-%{release}
> -Requires:   pkgconfig
> -Requires:   dbus-glib-devel
> -Requires:   gtk2-devel
> -Requires(post): /bin/touch
> -Requires(post): gtk2
> -
>  %description devel
> -This package contains the static libraries and header files needed for
> -developing with tracker
> +Development files for %{name}
> +
> +
> +%package tests
> +Summary:    Tests for tracker
> +Group:      System/X11
> +Requires:   %{name} = %{version}-%{release}
> +Requires:   dbus-python
> +Requires:   pygobject2
> +Requires:   python >= 2.6
> +
> +%description tests
> +Functional tests for tracker to be run once tracker is installed in
> +the final environment.
> +
> +
> +%package utils
> +Summary:    Tracker command line applications to lookup data
> +Group:      Development/Tools
> +Requires:   %{name} = %{version}-%{release}
> +
> +%description utils
> +Tracker command line applications to lookup data
> +Included utilities for Tracker are as follows
> + tracker-import      Import TTL files.
> + tracker-info        Display all information known about an entity.
> + tracker-search      Search for entites (files, folders, videos, etc)
> + tracker-sparql      Run a SPARQL query against the databases.
> + tracker-stats       Get statistics on how many entities are indexed.
> + tracker-status      Get the current state of the miners.
> + tracker-tag         Add, remove, list tags for entities.
>
>
>
>  %prep
>  %setup -q -n %{name}-%{version}
>
> -# tracker-0.7.23-desktop-files.patch
> +# 0001-Tracker-0.7.23-desktop-files.patch
>  %patch0 -p1
> -# 0001-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> +# 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
>  %patch1 -p1
> -# bug155_workaround.patch
> +# 0003-Bug155-workaround.patch
>  %patch2 -p1
> -# fix-shebang-on-testscript.patch
> +# 0004-Fix-shebang-on-testscript.patch
>  %patch3 -p1
> -# 0002-Tracker-mediatype-signals.patch
> +# 0005-Fix-shebang-on-functionaltests.patch
>  %patch4 -p1
>  # >> setup
>  # << setup
> @@ -106,21 +149,40 @@
>  # >> build pre
>  # << build pre
>
> -
> +%reconfigure --disable-static
>
>  # >> build post
> -%configure --disable-static \
> ---disable-hal \
> ---enable-libvorbis \
> +%configure --with-compile-warnings=no              \
> +--disable-static                        \
> +--disable-tracker-status-icon           \
> +--disable-tracker-preferences           \
> +--disable-tracker-search-bar            \
> +--disable-tracker-search-tool           \
> +--disable-tracker-explorer              \
> +--disable-tracker-fts                   \
> +--enable-unit-tests                     \
> +--disable-unac                          \
> +--enable-video-extractor=gstreamer      \
> +--disable-gstreamer-helix               \
> +--enable-gstreamer-tagreadbin           \
> +--enable-poppler                        \
> +--enable-libexif                        \
> +--enable-libgsf                         \
> +--enable-libtiff                        \
>  --enable-libjpeg \
> +--enable-libgif                         \
> +--enable-exempi                         \
> +--enable-functional-tests               \
>  --enable-playlist \
> ---disable-tracker-status-icon \
> ---disable-deskbar-applet \
> ---enable-maemo
> -
> -# Disable rpath
> -sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g'
> libtool
> -sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
> +--disable-miner-evolution               \
> +--disable-miner-kmail                   \
> +--disable-miner-flickr                  \
> +--disable-miner-rss                     \
> +--disable-qt                             \
> +--disable-gdkpixbuf                     \
> +--disable-libwv2                        \
> +--with-enca                             \
> +--with-unicode-support=libicu
>
>  make %{?_smp_mflags}
>
> @@ -128,73 +190,92 @@
>  %install
>  rm -rf %{buildroot}
>  # >> install pre
> +%make_install
> +%fdupes %{buildroot}/%{_datadir}/
>  # << install pre
>
>  # >> install post
> -rm -rf %{buildroot}
> -%make_install
> -
> -rm -f %{buildroot}%{_sysconfdir}/xdg/autostart/tracker-store.desktop
> -
> -mkdir -p %{buildroot}%{_sysconfdir}/skel/.config/tracker
> -
> -
> -mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
> -echo "%{_libdir}/tracker-0.9"       \
> -> %{buildroot}%{_sysconfdir}/ld.so.conf.d/tracker-%{_arch}.conf
> -
> -rm -f %{buildroot}/usr/share/applications/tracker-preferences.desktop
> -rm -f %{buildroot}/usr/share/applications/tracker-search-tool.desktop
> -
> -chmod -x %{buildroot}/%{_datadir}/tracker-tests/tests.xml
>
>  # << install post
>  %find_lang %{name}
>
>
>
> -%post -p /sbin/ldconfig
> -
> -%postun -p /sbin/ldconfig
> -
> -
> -
> -%post devel
> +%post
> +/sbin/ldconfig
>  /bin/touch --no-create %{_datadir}/icons/hicolor || :
>  %{_bindir}/gtk-update-icon-cache \
>    --quiet %{_datadir}/icons/hicolor 2> /dev/null|| :
>
> -%postun devel
> +%postun
> +/sbin/ldconfig
>  /bin/touch --no-create %{_datadir}/icons/hicolor || :
>  %{_bindir}/gtk-update-icon-cache \
>    --quiet %{_datadir}/icons/hicolor 2> /dev/null|| :
>
> +
> +
> +
> +
> +
> +
> +
>  %files -f %{name}.lang
>  %defattr(-,root,root,-)
>  # >> files
>  %defattr(-, root, root, -)
> -%doc AUTHORS ChangeLog COPYING NEWS README
> -%{_bindir}/tracker*
> -%{_datadir}/tracker/
> +%{_bindir}/tracker-control
>  %{_datadir}/dbus-1/services/*
> +%{_datadir}/icons/hicolor/*
> +%{_datadir}/man/man1/*
> +%{_datadir}/man/man5/*
> +%{_datadir}/tracker/*.xml
> +%{_datadir}/tracker/languages/*
> +%{_datadir}/tracker/miners/*
> +%{_datadir}/tracker/ontologies/*
> +%{_datadir}/vala/vapi/*
> +%{_libdir}/libtracker-client-0.9.so*
> +%{_libdir}/libtracker-extract-0.9.so*
> +%{_libdir}/libtracker-miner-0.9.so*
> +%{_libdir}/libtracker-sparql-0.9.so*
> +%{_libdir}/tracker-0.9/*.so*
> +%{_libdir}/tracker-0.9/extract-modules/*.so*
> +%{_libdir}/tracker-0.9/sparql-modules/*.so
> +%{_libdir}/tracker-0.9/writeback-modules/*.so*
> +%{_libexecdir}/tracker-extract
> +%{_libexecdir}/tracker-miner-fs
> +%{_libexecdir}/tracker-store
> +%{_libexecdir}/tracker-writeback
>  %config %{_sysconfdir}/xdg/autostart/tracker-miner-fs.desktop
> -%{_libdir}/*.so.*
> -%{_libdir}/tracker-0.9/
> -%{_exec_prefix}/libexec/tracker*
> -%config %{_sysconfdir}/ld.so.conf.d/*
> -%{_mandir}/*/tracker*.gz
> +%config %{_sysconfdir}/xdg/autostart/tracker-store.desktop
>  # << files
>
> -
>  %files devel
>  %defattr(-,root,root,-)
>  # >> files devel
> -%defattr(-, root, root, -)
> -%{_includedir}/tracker*
> -%{_libdir}/*.so
> -%{_libdir}/pkgconfig/*.pc
> -%{_datadir}/icons/*
> -%{_datadir}/tracker-tests/*
> -%{_datadir}/vala/vapi/*
> +%{_includedir}/tracker-0.9/libtracker-client/*.h
> +%{_includedir}/tracker-0.9/libtracker-extract/*.h
> +%{_includedir}/tracker-0.9/libtracker-miner/*.h
> +%{_includedir}/tracker-0.9/libtracker-sparql/*.h
> +%{_libdir}/pkgconfig/tracker-*.pc
>  # << files devel
>
> +
> +%files tests
> +%defattr(-,root,root,-)
> +# >> files tests
> +%{_datadir}/tracker-tests/*
> +# << files tests
> +
> +%files utils
> +%defattr(-,root,root,-)
> +# >> files utils
> +%{_bindir}/tracker-import
> +%{_bindir}/tracker-info
> +%{_bindir}/tracker-search
> +%{_bindir}/tracker-sparql
> +%{_bindir}/tracker-stats
> +%{_bindir}/tracker-status
> +%{_bindir}/tracker-tag
> +# << files utils
> +
>
> other changes:
> --------------
>
> ++++++ 0001-Tracker-0.7.23-desktop-files.patch (new)
> --- 0001-Tracker-0.7.23-desktop-files.patch
> +++ 0001-Tracker-0.7.23-desktop-files.patch
> +diff -Naur tracker-0.9.11.orig/data/tracker-miner-fs.desktop.in.in
> tracker-0.9.11/data/tracker-miner-fs.desktop.in.in
> +--- tracker-0.9.11.orig/data/tracker-miner-fs.desktop.in.in  2010-07-08
> 10:27:16.721227663 -0700
> ++++ tracker-0.9.11/data/tracker-miner-fs.desktop.in.in       2010-07-08
> 10:35:03.452915484 -0700
> +@@ -6,12 +6,13 @@
> + Terminal=false
> + Type=Application
> + Categories=Utility;
> ++X-Meego-Priority=Late
> + X-GNOME-Autostart-enabled=true
> + X-KDE-autostart-after=panel
> + X-KDE-StartupNotify=false
> + X-KDE-UniqueApplet=true
> + NoDisplay=true
> +-OnlyShowIn=GNOME;KDE;XFCE;
> ++OnlyShowIn=GNOME;KDE;XFCE;X-MEEGO-HS;X-MEEGO-NB;X-IVI;
> + X-GNOME-Bugzilla-Bugzilla=GNOME
> + X-GNOME-Bugzilla-Product=tracker
> + X-GNOME-Bugzilla-Component=Miners
> +diff -Naur tracker-0.9.11.orig/data/tracker-status-icon.desktop.in.in
> tracker-0.9.11/data/tracker-status-icon.desktop.in.in
> +--- tracker-0.9.11.orig/data/tracker-status-icon.desktop.in.in       
> 2010-07-08
> 10:27:16.721227663 -0700
> ++++ tracker-0.9.11/data/tracker-status-icon.desktop.in.in    2010-07-08
> 10:30:08.886915837 -0700
> +@@ -11,7 +11,7 @@
> + X-KDE-StartupNotify=false
> + X-KDE-UniqueApplet=true
> + NoDisplay=true
> +-OnlyShowIn=GNOME;KDE;XFCE;
> ++OnlyShowIn=GNOME;KDE;XFCE;X-MEEGO-HS;X-MEEGO-NB;X-IVI;
> + X-GNOME-Bugzilla-Bugzilla=GNOME
> + X-GNOME-Bugzilla-Product=tracker
> + X-GNOME-Bugzilla-Component=Status Icon
> +diff -Naur tracker-0.9.11.orig/data/tracker-store.desktop.in.in
> tracker-0.9.11/data/tracker-store.desktop.in.in
> +--- tracker-0.9.11.orig/data/tracker-store.desktop.in.in     2010-07-08
> 10:27:16.726227677 -0700
> ++++ tracker-0.9.11/data/tracker-store.desktop.in.in  2010-07-08
> 10:30:55.283921080 -0700
> +@@ -11,7 +11,7 @@
> + X-KDE-StartupNotify=false
> + X-KDE-UniqueApplet=true
> + NoDisplay=true
> +-OnlyShowIn=GNOME;KDE;XFCE;
> ++OnlyShowIn=GNOME;KDE;XFCE;X-MEEGO-HS;X-MEEGO-NB;X-IVI;
> + X-GNOME-Bugzilla-Bugzilla=GNOME
> + X-GNOME-Bugzilla-Product=tracker
> + X-GNOME-Bugzilla-Component=Store
>
> ++++++ 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch (new)
> --- 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> +++ 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> +From 3e6bd60b1f60d89ced9c614e76b16d3ba9820ce3 Mon Sep 17 00:00:00
> 2001
> +From: iain <[email protected]>
> +Date: Mon, 8 Feb 2010 15:32:19 +0000
> +Subject: [PATCH 1/2] [Tracker-extract] Parse the video filename to obtain 
> extra
> metadata
> +
> +---
> + src/tracker-extract/tracker-extract-gstreamer.c |  321
> ++++++++++++++++++++++-
> + 1 files changed, 319 insertions(+), 2 deletions(-)
> +
> +diff --git a/src/tracker-extract/tracker-extract-gstreamer.c
> b/src/tracker-extract/tracker-extract-gstreamer.c
> +index d1c770a..1c84533 100644
> +--- a/src/tracker-extract/tracker-extract-gstreamer.c
> ++++ b/src/tracker-extract/tracker-extract-gstreamer.c
> +@@ -86,6 +86,29 @@ long long int llroundl(long double x);
> + #define GST_TAG_FRAMERATE "framerate"
> + #endif
> +
> ++/* These are in newer GStreamer releases, but we define them here
> ++   so we don't need to depend on a new release */
> ++#ifndef GST_TAG_SHOW_NAME
> ++#define GST_TAG_SHOW_NAME "show-name"
> ++#endif
> ++
> ++#ifndef GST_TAG_SHOW_EPISODE_NUMBER
> ++#define GST_TAG_SHOW_EPISODE_NUMBER "show-episode-number"
> ++#endif
> ++
> ++#ifndef GST_TAG_SHOW_SEASON_NUMBER
> ++#define GST_TAG_SHOW_SEASON_NUMBER "show-season-number"
> ++#endif
> ++
> ++#define TV_REGEX
> "(?<showname>.*)\\.(?<season>(?:\\d{1,2})|(?:[sS]\\K\\d{1,2}))(?<episode>(?:\
> \d{2})|(?:[eE]\\K\\d{1,2}))\\.?(?<name>.*)?"
> ++#define MOVIE_REGEX
> "(?<name>.*)\\.?[\\(\\[](?<year>[12][90]\\d{2})[\\)\\]]"
> ++
> ++typedef enum {
> ++    VIDEO_TYPE_UNKNOWN,
> ++    VIDEO_TYPE_MOVIE,
> ++    VIDEO_TYPE_SERIES
> ++} VideoType;
> ++
> + typedef enum {
> +     EXTRACT_MIME_AUDIO,
> +     EXTRACT_MIME_VIDEO,
> +@@ -448,6 +471,295 @@ extract_stream_metadata_decodebin
> (MetadataExtractor *extractor,
> +     }
> + }
> +
> ++const gchar *blacklisted_prefix[] = {
> ++        "tpz-", NULL
> ++};
> ++
> ++/* Blacklisted are words that we ignore everything after */
> ++const char *blacklist[] = {
> ++        "720p", "1080p",
> ++        "ws", "WS", "proper", "PROPER",
> ++        "repack", "real.repack",
> ++        "hdtv", "HDTV", "pdtv", "PDTV", "notv", "NOTV",
> ++        "dsr", "DSR", "DVDRip", "divx", "DIVX", "xvid", "Xvid",
> ++        NULL
> ++};
> ++
> ++static gchar *
> ++sanitise_string (const gchar *str)
> ++{
> ++        int i;
> ++        gchar *line;
> ++
> ++        line = (gchar *) str;
> ++        for (i = 0; blacklisted_prefix[i]; i++) {
> ++                if (g_str_has_prefix (str, blacklisted_prefix[i])) {
> ++                        int len = strlen (blacklisted_prefix[i]);
> ++
> ++                        line = (gchar *) str + len;
> ++                }
> ++        }
> ++
> ++        for (i = 0; blacklist[i]; i++) {
> ++                gchar *end;
> ++
> ++                end = strstr (line, blacklist[i]);
> ++                if (end) {
> ++                        return g_strndup (line, end - line);
> ++                }
> ++        }
> ++
> ++        return g_strdup (line);
> ++}
> ++
> ++/* tidies strings before we run them through the regexes */
> ++static gchar *
> ++uri_to_metadata (const gchar *uri)
> ++{
> ++        gchar *ext, *basename, *name, *whitelisted;
> ++
> ++        basename = g_path_get_basename (uri);
> ++        ext = strrchr (basename, '.');
> ++        if (ext) {
> ++                name = g_strndup (basename, ext - basename);
> ++                g_free (basename);
> ++        } else {
> ++                name = basename;
> ++        }
> ++
> ++        /* Replace _ <space> with . */
> ++        g_strdelimit (name, "_ ", '.');
> ++        whitelisted = sanitise_string (name);
> ++        g_free (name);
> ++
> ++        return whitelisted;
> ++}
> ++
> ++static VideoType
> ++parse_uri (const gchar *uri,
> ++           gchar      **title,
> ++           gchar      **showname,
> ++           GDate      **date,
> ++           gint        *season,
> ++           gint        *episode)
> ++{
> ++        gchar *metadata;
> ++        GRegex *regex;
> ++        GMatchInfo *info;
> ++
> ++        metadata = uri_to_metadata (uri);
> ++
> ++        regex = g_regex_new (MOVIE_REGEX, 0, 0, NULL);
> ++        g_regex_match (regex, metadata, 0, &info);
> ++
> ++        if (g_match_info_matches (info)) {
> ++                if (title) {
> ++                        *title= g_match_info_fetch_named (info,
> "name");
> ++                        /* Replace "." with <space> */
> ++                        g_strdelimit (*title, ".", ' ');
> ++                }
> ++
> ++                if (date) {
> ++                        gchar *year = g_match_info_fetch_named
> (info, "year");
> ++
> ++                        *date = g_date_new ();
> ++                        g_date_set_year (*date, atoi (year));
> ++                        g_free (year);
> ++                }
> ++
> ++                if (showname) {
> ++                        *showname = NULL;
> ++                }
> ++
> ++                if (season) {
> ++                        *season = 0;
> ++                }
> ++
> ++                if (episode) {
> ++                        *episode = 0;
> ++                }
> ++
> ++                g_regex_unref (regex);
> ++                g_match_info_free (info);
> ++                g_free (metadata);
> ++
> ++                return VIDEO_TYPE_MOVIE;
> ++        }
> ++
> ++        g_regex_unref (regex);
> ++        g_match_info_free (info);
> ++
> ++        regex = g_regex_new (TV_REGEX, 0, 0, NULL);
> ++        g_regex_match (regex, metadata, 0, &info);
> ++
> ++        if (g_match_info_matches (info)) {
> ++                if (title) {
> ++                        *title = g_match_info_fetch_named (info,
> "name");
> ++                        g_strdelimit (*title, ".", ' ');
> ++                }
> ++
> ++                if (showname) {
> ++                        *showname = g_match_info_fetch_named
> (info, "showname");
> ++                        g_strdelimit (*showname, ".", ' ');
> ++                }
> ++
> ++                if (season) {
> ++                        gchar *s = g_match_info_fetch_named (info,
> "season");
> ++                        if (s) {
> ++                                if (*s == 's' || *s == 'S') {
> ++                                        *season = atoi (s + 1);
> ++                                } else {
> ++                                        *season = atoi (s);
> ++                                }
> ++                        } else {
> ++                                *season = 0;
> ++                        }
> ++
> ++                        g_free (s);
> ++                }
> ++
> ++                if (episode) {
> ++                        gchar *e = g_match_info_fetch_named (info,
> "episode");
> ++                        if (e) {
> ++                                if (*e == 'e' || *e == 'E') {
> (163 more lines skipped)
>
> ++++++ 0003-Bug155-workaround.patch (new)
> --- 0003-Bug155-workaround.patch
> +++ 0003-Bug155-workaround.patch
> +diff -Naur tracker-0.9.6/src/miners/fs/tracker-miner-files.c
> tracker-0.9.6-new/src/miners/fs/tracker-miner-files.c
> +--- tracker-0.9.6/src/miners/fs/tracker-miner-files.c        2010-06-09
> 08:58:44.972828531 -0700
> ++++ tracker-0.9.6-new/src/miners/fs/tracker-miner-files.c    2010-06-09
> 09:51:07.738576197 -0700
> +@@ -163,6 +163,8 @@
> + static void      extractor_get_embedded_metadata_cancel (GCancellable
> *cancellable,
> +
> ProcessFileData *data);
> +
> ++static ProcessFileData *data_bk;
> ++
> + static void        miner_finished_cb
> (TrackerMinerFS *fs,
> +
> gdouble         seconds_elapsed,
> +                                                          guint
> total_directories_found,
> +@@ -1419,6 +1421,9 @@
> +     g_object_unref (data->sparql);
> +     g_object_unref (data->cancellable);
> +     g_object_unref (data->file);
> ++    if (data_bk == data){
> ++            data_bk = NULL;
> ++    }
> +     g_slice_free (ProcessFileData, data);
> + }
> +
> +@@ -1546,6 +1551,11 @@
> + {
> +     GError *error;
> +
> ++    if (data_bk == NULL){
> ++            //data is already freed.
> ++            return;
> ++    }
> ++
> +     /* Cancel extractor call */
> +     dbus_g_proxy_cancel_call (data->miner->private->extractor_proxy,
> +                               data->call);
> +@@ -1674,6 +1684,7 @@
> +     const gchar *attrs;
> +
> +     data = g_slice_new0 (ProcessFileData);
> ++    data_bk = data;
> +     data->miner = g_object_ref (fs);
> +     data->cancellable = g_object_ref (cancellable);
> +     data->sparql = g_object_ref (sparql);
>
> ++++++ 0004-Fix-shebang-on-testscript.patch (new)
> --- 0004-Fix-shebang-on-testscript.patch
> +++ 0004-Fix-shebang-on-testscript.patch
> +diff -Nur tracker-0.9.11.orig/tests/functional-tests/mass-storage-mode.py
> tracker-0.9.11/tests/functional-tests/mass-storage-mode.py
> +--- tracker-0.9.11.orig/tests/functional-tests/mass-storage-mode.py
>       2010-07-01 18:45:04.000000000 +0300
> ++++ tracker-0.9.11/tests/functional-tests/mass-storage-mode.py
>       2010-07-07 12:46:19.000000000 +0300
> +@@ -1,4 +1,4 @@
> +-#/bin/env python
> ++#!/bin/env python
> +
> + # Copyright (C) 2008, Nokia ([email protected])
> + #
>
> ++++++ 0005-Fix-shebang-on-functionaltests.patch (new)
> --- 0005-Fix-shebang-on-functionaltests.patch
> +++ 0005-Fix-shebang-on-functionaltests.patch
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//common/__init__.py
> tracker-0.9.26/tests/functional-tests//common/__init__.py
> +--- ../tracker-0.9.26/tests/functional-tests//common/__init__.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//common/__init__.py
>       2010-11-08 12:08:11.462224001 +0200
> +@@ -0,0 +1 @@
> ++#!/usr/bin/python
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//common/utils/__init__.py
> tracker-0.9.26/tests/functional-tests//common/utils/__init__.py
> +--- ../tracker-0.9.26/tests/functional-tests//common/utils/__init__.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//common/utils/__init__.py
>       2010-11-08 12:08:25.498224000 +0200
> +@@ -0,0 +1 @@
> ++#!/usr/bin/python
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//common/utils/system.py
> tracker-0.9.26/tests/functional-tests//common/utils/system.py
> +--- ../tracker-0.9.26/tests/functional-tests//common/utils/system.py
>       2010-10-21 11:29:53.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//common/utils/system.py
>       2010-11-08 12:08:45.130224000 +0200
> +@@ -1,3 +1,4 @@
> ++#!/usr/bin/python
> + import os
> + import subprocess
> + import shutil
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//__init__.py
> tracker-0.9.26/tests/functional-tests//__init__.py
> +--- ../tracker-0.9.26/tests/functional-tests//__init__.py    2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//__init__.py       2010-11-08
> 12:09:03.850224001 +0200
> +@@ -0,0 +1 @@
> ++#!/usr/bin/python
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/case.py
> tracker-0.9.26/tests/functional-tests//unittest2/case.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/case.py      
> 2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/case.py 2010-11-08
> 12:09:30.638224001 +0200
> +@@ -1,3 +1,4 @@
> ++#!/usr/bin/python
> + """Test case implementation"""
> +
> + import sys
> +diff -Naur 
> ../tracker-0.9.26/tests/functional-tests//unittest2/compatibility.py
> tracker-0.9.26/tests/functional-tests//unittest2/compatibility.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/compatibility.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/compatibility.py
>       2010-11-08 12:09:44.178224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + import os
> + import sys
> +
> +@@ -63,4 +65,4 @@
> +                 return os.path.curdir
> +             return os.path.join(*rel_list)
> +
> +-    os.path.relpath = relpath
> +\ No newline at end of file
> ++    os.path.relpath = relpath
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/__init__.py
> tracker-0.9.26/tests/functional-tests//unittest2/__init__.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/__init__.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/__init__.py
>       2010-11-08 12:10:09.294224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """
> + unittest2
> +
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/loader.py
> tracker-0.9.26/tests/functional-tests//unittest2/loader.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/loader.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/loader.py       
> 2010-11-08
> 12:10:24.078224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Loading unittests."""
> +
> + import os
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/__main__.py
> tracker-0.9.26/tests/functional-tests//unittest2/__main__.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/__main__.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/__main__.py
>       2010-11-08 12:10:38.682224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Main entry point"""
> +
> + import sys
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/main.py
> tracker-0.9.26/tests/functional-tests//unittest2/main.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/main.py      
> 2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/main.py 2010-11-08
> 12:10:52.282224001 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Unittest main program"""
> +
> + import sys
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/result.py
> tracker-0.9.26/tests/functional-tests//unittest2/result.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/result.py    
> 2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/result.py       
> 2010-11-08
> 12:11:11.178224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Test result object"""
> +
> + import sys
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/runner.py
> tracker-0.9.26/tests/functional-tests//unittest2/runner.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/runner.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/runner.py       
> 2010-11-08
> 12:11:19.574224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Running tests"""
> +
> + import sys
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/signals.py
> tracker-0.9.26/tests/functional-tests//unittest2/signals.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/signals.py
>       2010-10-07 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/signals.py
>       2010-11-08 12:11:34.998224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + import signal
> + import weakref
> +
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/suite.py
> tracker-0.9.26/tests/functional-tests//unittest2/suite.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/suite.py     
> 2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/suite.py        
> 2010-11-08
> 12:11:42.998224001 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """TestSuite"""
> +
> + import sys
> +diff -Naur ../tracker-0.9.26/tests/functional-tests//unittest2/util.py
> tracker-0.9.26/tests/functional-tests//unittest2/util.py
> +--- ../tracker-0.9.26/tests/functional-tests//unittest2/util.py      
> 2010-10-07
> 16:37:12.000000000 +0300
> ++++ tracker-0.9.26/tests/functional-tests//unittest2/util.py 2010-11-08
> 12:11:55.206224000 +0200
> +@@ -1,3 +1,5 @@
> ++#!/usr/bin/python
> ++
> + """Various utility functions."""
> +
> + def safe_repr(obj):
>
> ++++++ tracker-0.9.16.tar.bz2 -> tracker-0.9.26.tar.bz2
> 207249 lines of diff (skipped)
>
> ++++++ tracker.yaml
> --- tracker.yaml
> +++ tracker.yaml
> @@ -1,18 +1,19 @@
>  Name: tracker
>  Summary: An object database, tag/metadata database, search tool and
> indexer
> -Version: 0.9.16
> +Version: 0.9.26
>  Release: 1
>  Group: Applications/System
>  License: GPLv2+
> -URL: http://www.tracker-project.org/
> +URL: http://ftp.gnome.org/pub/GNOME/sources/tracker/0.9/
>  Sources:
>      -
> http://ftp.gnome.org/pub/GNOME/sources/%{name}/0.9/%{name}-%{version}.
> tar.bz2
>      - tracker-rpmlintrc
>  Patches:
> -    - tracker-0.7.23-desktop-files.patch
> -    - 0001-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> -    - bug155_workaround.patch
> -    - fix-shebang-on-testscript.patch
> +    - 0001-Tracker-0.7.23-desktop-files.patch
> +    - 0002-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> +    - 0003-Bug155-workaround.patch
> +    - 0004-Fix-shebang-on-testscript.patch
> +    - 0005-Fix-shebang-on-functionaltests.patch
>  Description: |
>      Tracker is a powerful desktop-neutral first class object database,
>      tag/metadata database, search tool and indexer.
> @@ -29,49 +30,82 @@
>      all types of files and other first class objects
>
>  Requires:
> -    - exempi
> -    - poppler-utils
> +    - gst-plugins-base >= 0.10
> +    - gst-plugins-good >= 0.10
>      - o3read
> -    - sqlite >= 3.6.23
> +    - unzip
> +    - w3m
>  PkgBR:
> +    - fdupes
>      - gettext
> -    - desktop-file-utils
> +    - giflib-devel
>      - intltool
> +    - libenca-devel
>      - libjpeg-devel
> -    - giflib-devel
> -    - libtiff-devel
> +    - libquill-devel
> +    - libtiff-devel >= 3.8.2
> +    - perl-XML-Parser
> +    - pygobject2
> +    - python >= 2.6
> +    - zlib-devel
>  PkgConfigBR:
> +    - dbus-1
> +    - dbus-glib-1 >= 0.60
> +    - dbus-python
> +    - exempi-2.0
> +    - gee-1.0
> +    - glib-2.0 >= 2.24.0
>      - gmime-2.4
> -    - dbus-glib-1
> -    - pango
> -    - sqlite3
> +    - gstreamer-0.10
> +    - gstreamer-audio-0.10
> +    - gstreamer-plugins-base-0.10
> +    - gstreamer-interfaces-0.10
> +    - gstreamer-video-0.10
>      - gtk+-2.0
> +    - gtk-doc
> +    - icu
>      - id3tag
> -    - vorbis
> -    - uuid
> -    - gee-1.0
> -    - totem-plparser
>      - libexif
> -    - exempi-2.0
> -    - taglib
>      - libgsf-1
> +    - libiptcdata
> +    - libpng12
> +    - libxml-2.0
> +    - ossp-uuid
> +    - pango
>      - poppler-glib
> -    - gstreamer-video-0.10
> -    - gstreamer-interfaces-0.10
> -    - gstreamer-audio-0.10
> -
> -Configure: none
> +    - sqlite3
> +    - taglib
> +    - totem-plparser
> +    - uuid
> +    - vala-1.0
> +    - vorbis
> +Configure: reconfigure
>  Builder: none
>  LocaleName: "%{name}"
> +AutoSubPackages:
> +- devel
>  SubPackages:
> -    - Name: devel
> -      Summary: Headers for developing programs that will use %{name}
> -      Group: Development/Libraries
> +    - Name: tests
> +      Summary: Tests for tracker
> +      Group: System/X11
>        Description: |
> -          This package contains the static libraries and header files needed
> for
> -          developing with tracker
> +          Functional tests for tracker to be run once tracker is installed in
> +          the final environment.
>        Requires:
> -          - pkgconfig
> -          - dbus-glib-devel
> -          - gtk2-devel
> +          - dbus-python
> +          - pygobject2
> +          - python >= 2.6
>
> +    - Name: utils
> +      Summary: Tracker command line applications to lookup data
> +      Group: Development/Tools
> +      Description: |
> +           Tracker command line applications to lookup data
> +           Included utilities for Tracker are as follows
> +            tracker-import      Import TTL files.
> +            tracker-info        Display all information known about an
> entity.
> +            tracker-search      Search for entites (files, folders, videos,
> etc)
> +            tracker-sparql      Run a SPARQL query against the
> databases.
> +            tracker-stats       Get statistics on how many entities are
> indexed.
> +            tracker-status      Get the current state of the miners.
> +            tracker-tag         Add, remove, list tags for entities.
>
> ++++++ deleted files:
> --- 0001-Tracker-extract-Parse-the-video-filename-to-obtain-e.patch
> --- 0002-Tracker-mediatype-signals.patch
> --- bug155_workaround.patch
> --- fix-shebang-on-testscript.patch
> --- tracker-0.7.23-desktop-files.patch
>
> _______________________________________________
> MeeGo-commits mailing list
> [email protected]
> http://lists.meego.com/listinfo/meego-commits
_______________________________________________
MeeGo-packaging mailing list
[email protected]
http://lists.meego.com/listinfo/meego-packaging

Reply via email to