1. 07 Jul, 2012 1 commit
    • Philip Withnall's avatar
      core: Add core anti-linking support · 1441ae9d
      Philip Withnall authored
      This adds the core of the anti-linking support, based around a new
      AntiLinkable interface. This will be implemented by Persona subclasses which
      can store anti-linking information (in the form of a set of Persona UIDs
      which the given Persona should never be linked to).
      This approach allows anti-linking information to be stored with the personas
      (presumably in the primary persona store) and thus it should be network
      transparent. i.e. Using folks on two different computers with a Google
      Contacts address book as primary should cause the anti-linking data to be
      This also includes the necessary IndividualAggregator changes.
      Sadly, no unit tests are included.
      Closes: https://bugzilla.gnome.org/show_bug.cgi?id=629537
  2. 27 Jun, 2012 1 commit
  3. 13 Jun, 2012 1 commit
  4. 27 May, 2012 1 commit
  5. 25 Apr, 2012 1 commit
  6. 23 Apr, 2012 1 commit
  7. 26 Mar, 2012 1 commit
  8. 09 Jan, 2012 1 commit
    • Philip Withnall's avatar
      Bug 667410 — A second aggregator instance only fetches a subset of contacts · d258c868
      Philip Withnall authored
      This was happening because the initial BackendStore was hanging around across
      multiple IndividualAggregator instances, keeping all the Backends,
      PersonaStores and Personas alive.
      The IndividualAggregator didn’t have code to deal with pre-prepared Backends
      and PersonaStores, meaning it never realised the Personas existed (because
      they weren’t announced via personas-changed signals), and thus never created
      Individuals out of them.
      This commit fixes the problem by having IndividualAggregator check for
      existing Backends, PersonaStores and Personas when prepare() is called.
      It also adds a test case to the folks test suite, based on the one written
      by Guillaume in bgo#667410.
      Closes: https://bugzilla.gnome.org/show_bug.cgi?id=667410
  9. 06 Jan, 2012 2 commits
    • Philip Withnall's avatar
      eds: Nullability fixes · 33f7d056
      Philip Withnall authored
      With the EDS annotation fixes in
      https://bugzilla.gnome.org/show_bug.cgi?id=667388, this fixes all of the
      nullability problems found by compiling with --enable-experimental-non-null.
      As mentioned in the previous commit, we can’t use
      --enable-experimental-non-null by default yet, but the fixes should work by
    • Philip Withnall's avatar
      core: Nullability fixes · d3385bae
      Philip Withnall authored
      Almost all of these are just the necessary ‘(!)’ annotations to allow the
      nullability check to pass. There were few, if any, actual bugs found by the
      check (which either means folks is perfect, or Vala's nullability checking
      is imperfect).
      This brings us down from 296 nullability errors to just below 50.
      The work was done by compiling folks with valac’s
      --enable-experimental-non-null flag. We’re not ready to add the flag to
      VALAFLAGS permanently yet, since this commit depends on various annotation
      fixes in GLib (and similarly, the next one depends on several in EDS).
      However, the fixes themselves should be valid without the flag.
      This depends on (at least):
       • https://bugzilla.gnome.org/show_bug.cgi?id=666700https://bugzilla.gnome.org/show_bug.cgi?id=666699
  10. 09 Dec, 2011 1 commit
    • Philip Withnall's avatar
      backends: Tidy up prepare() and unprepare() methods’ mutual exclusion · 58dba5a8
      Philip Withnall authored
      As discovered in bgo#665728, all our prepare() (and unprepare()) methods are
      currently vulnerable to being run multiple times concurrently from a single
      thread. Add a _pending_prepare flag to all of them to prevent this. It
      doesn't need to be locked, since it should only ever be accessed from a
      single thread (since only a single thread can get through the lock{}
      recursive mutex at once).
      Helps: bgo#665728
  11. 18 Oct, 2011 1 commit
  12. 11 Oct, 2011 3 commits
  13. 23 Sep, 2011 1 commit
  14. 20 Sep, 2011 1 commit
  15. 18 Sep, 2011 1 commit
  16. 16 Sep, 2011 1 commit
  17. 14 Sep, 2011 2 commits
  18. 08 Sep, 2011 1 commit
  19. 04 Sep, 2011 1 commit
    • Philip Withnall's avatar
      core: Add GROUPS and INVALID to PersonaDetail · 3f71f115
      Philip Withnall authored
      One is obviously necessary. The other is necessary for use as an error return
      from a function in the fix for bgo#657789.
      This also adds some bounds checking to PersonaStore.detail_key(), which can
      now return null if the PersonaDetail wasn't recognised.
      Helps: bgo#657789
  20. 02 Sep, 2011 1 commit
    • Philip Withnall's avatar
      Bug 656184 — Add is-quiescent property · 77ee30d3
      Philip Withnall authored
      This allows clients to determine when the IndividualAggregator has reached
      a quiescent state — it's received and linked all of the personas it should
      do at startup, and from that point onwards will only relink personas in
      response to (for example), persona stores dynamically being added and removed
      at runtime.
      Closes: bgo#656184
  21. 29 Aug, 2011 1 commit
    • Philip Withnall's avatar
      core: Add PersonaStore:always-writeable-properties · 9ce804c7
      Philip Withnall authored
      This complements Persona:writeable-properties, listing the properties which
      are guaranteed to always be writeable on the personas in a given persona
      store. This is in contrast to Persona:writeable-properties, which may list
      extra properties which are only writeable on that particular persona.
      This could be the case with, for example, personas representing the user,
      which might have extra writeable properties to allow the user to change their
      alias or avatar.
      Helps: bgo#653777
  22. 21 Aug, 2011 1 commit
  23. 13 Aug, 2011 1 commit
  24. 03 Aug, 2011 1 commit
  25. 02 Aug, 2011 1 commit
  26. 29 Jul, 2011 1 commit
  27. 20 Jul, 2011 2 commits
  28. 19 Jul, 2011 1 commit
  29. 13 May, 2011 1 commit
  30. 27 Apr, 2011 1 commit
  31. 23 Apr, 2011 2 commits
  32. 12 Apr, 2011 1 commit
  33. 08 Apr, 2011 2 commits