1. 24 Apr, 2019 2 commits
  2. 11 Feb, 2019 3 commits
  3. 21 Jul, 2018 1 commit
  4. 20 Jul, 2018 4 commits
    • Sam Thursfield's avatar
      functional-tests: Reduce timeout to 60 seconds · 0a39a3b1
      Sam Thursfield authored
      It's annoying to wait 3 minutes in cases where a test has just hung
      (which seems to happen frequently :/).
      
      If a test suite times out after 1 minute, let's ideally try to
      speed it up, but if not split it up into parts that do execute
      in under 1 minute.
      0a39a3b1
    • Sam Thursfield's avatar
      functional-tests: Run extractor tests before the rest of the functional tests · a151c56e
      Sam Thursfield authored
      They are much faster and fail less weirdly than the tests that
      involve waiting for the miner.
      a151c56e
    • Sam Thursfield's avatar
      meson: Fix warnings from extractor during functional-tests · a86d55c6
      Sam Thursfield authored
      In order to run tracker-extract without installing it, we set the
      TRACKER_EXTRACT_RULES_DIR path to point to the src/tracker-extract
      directory.
      
      This is problematic because that directory contains lots of stuff
      that isn't .rule files and also contains .rule files for extractors
      which might not be enabled. The result being pointless warnings
      during the tests like this:
      
          ** (tracker-extract:29193): WARNING **: 16:18:11.703: Could not load module '/home/sam/src/tracker-miners/build/tests/functional-tests/../../src/tracker-extract/libextract-libav.so': /home/sam/src/tracker-miners/build/tests/functional-tests/../../src/tracker-extract/libextract-libav.so: cannot open shared object file: No such file or directory
      
      Using Meson it's fairly straightforward to create a separate
      directory in the build tree to contain these files, which fixes
      the warnings.
      
      The same thing could be implemented for Autotools, but it doesn't
      affect the actual functionality of the tests so I haven't spent time
      on it myself.
      a86d55c6
    • Sam Thursfield's avatar
      meson: Enable verbose functional-tests by default · 8db07938
      Sam Thursfield authored
      Since Meson hides all the output anyway by default, there's no point in
      having this extra step.
      8db07938
  5. 19 Jul, 2018 6 commits
  6. 16 Jul, 2018 3 commits
    • Sam Thursfield's avatar
      functional-tests: Remove Jazz_Audio_OPLs0 test · 90be9aa6
      Sam Thursfield authored
      This file is encrypted and seems to require some proprietary software
      to decode it.
      90be9aa6
    • Sam Thursfield's avatar
      functional-tests: Rewrite tracker-extract tests to parse JSON-LD output · baf8b40e
      Sam Thursfield authored
      These tests have been broken for about 2 years (since the TrackerResource
      work landed and changed the output generated by `tracker-extract
      --file`).
      
      In this commit they are reworked with a focus on using JSON-LD rather
      than doing any custom parsing of SPARQL. The test description files are
      now JSON too rather than .ini format, which is not stricty needed but
      should make the code a lot simpler
      
      The failure messages could still be improved in many cases, help is
      welcome here!
      baf8b40e
    • Sam Thursfield's avatar
      meson: Rework how 400-extractor-metadata is run · 441a0886
      Sam Thursfield authored
      We now create a separate test() instance corresponding to each of the
      test cases, which were previously treated as one single test.
      
      This allows running only one of the tests by doing something like
      `meson test functional/extract/images/roi.expected.json`, which is
      useful for debugging.
      441a0886
  7. 01 Jul, 2018 2 commits
  8. 03 Aug, 2017 1 commit
    • Carlos Garnacho's avatar
      Remove code not related to miners · 63af0cfe
      Carlos Garnacho authored
      The miners are being split from the core tracker package.
      
      On both autotools/meson builds, datadir and libdir for
      private data has been changed to be separate from the tracker
      core. Same goes for the gettext package and other bits.
      
      Additionally, avoid installing the dbus xml descriptions.
      That's fairly non-standard and unnecessary with introspection.
      63af0cfe
  9. 22 May, 2017 1 commit
    • Sam Thursfield's avatar
      Meson build instructions for Tracker · 68b41e39
      Sam Thursfield authored
      See <http://mesonbuild.com/> for information about Meson.
      
      Remaining issues:
      
        * There's no `make dist` equivalent. We currently produce release
          tarballs containing the output files of the Vala compiler. We need
          to think through whether we can stop doing that. Shipping the
          generated .c files does make the Vala preprocessor useless so
          it would be good if we can stop.
      
        * The Firefox, Thunderbird, Evolution and Nautilus plugins are not
          built
      
        * https://github.com/mesonbuild/meson/issues/671 -- means we can't
          depend on tracker_common_dep in most places and have to manually
          set link_with, include_directories and sources instead.
      
        * https://github.com/mesonbuild/meson/issues/1469 -- without this we
          have to install generated Vala headers using a script
      
        * https://github.com/mesonbuild/meson/issues/1229 -- means adding
          the #include guard to libtracker-sparql/tracker-generated-no-checks.h
          is a pain
      
        * The test suite has some spurious failures.
      
      Here's a rough speed comparison.
      
      Meson:
              time sh -c 'meson .. --prefix=/opt/tracker-meson -D bash_completion=/opt/tracker-meson/share/bash-completion -Dsystemd_user_services=/opt/tracker-meson/lib/systemd/user -Ddbus_services=/opt/tracker-meson/share/dbus-1/services && ninja-build -j 4 && ninja-build install'
      
              real  1m8.194s
              user  2m16.962s
              sys   0m20.532s
      
      Autotools:
              time sh -c './configure --prefix=/opt/tracker-autotools --with-bash-completion-dir=/opt/tracker-autotools/share/bash-completion --with-session-bus-services-dir=/opt/tracker-autotools/share/dbus-1/services --disable-nautilus-extension && make -j 4 && make install'
      
              real  2m37.750s
              user  4m37.214s
              sys   0m54.806s
      
              Plus 30+ seconds of ./autogen.sh first.
      
      Note that Meson builds may fail if your source tree has generated files
      from an Autotools build in there. If you see errors about duplicate
      definitions, first try cleaning your source tree (use `git clean -dfx`,
      but make sure you commit any work first!!)
      68b41e39