NEWS 43.2 KB
Newer Older
Philip Withnall's avatar
Philip Withnall committed
1 2 3 4
Overview of changes from libfolks 0.7.3 to libfolks 0.7.4
=========================================================

Bugs fixed:
5
• Bug 681346 — Individual id can be inconsistent
6 7
• Bug 681420 — warning (vala 0.17.x): access to static class members through an
  instance variable
8 9
• Bug 664072 — Folks should only use assert*() for critical, program-terminating
  errors
10
• Bug 682572 — Build failures due to accessing static members
11
• Bug 682346 — build: Make telepathy backend optional
12
• Bug 682809 — Lazy instantiation of multi-valued properties
13
• Bug 682719 — eds test fails to compile
14
• Bug 683319 — Crash in individual-aggregator: _personas_changed_cb
Jeremy Whiting's avatar
Jeremy Whiting committed
15
• Bug 681164 — Folks-inspect linking fails
16 17
• Bug 680335 — empathy crashed with SIGSEGV in
  _tpf_persona_contact_weak_notify_cb()
18
• Bug 681726 — empathy crashed with SIGABRT in g_assertion_message()
19
• Bug 683452 — gnome-contacts starts up with an empty address book
20
• Bug 681476 — folks-inspect could use some methods to set values
Philip Withnall's avatar
Philip Withnall committed
21

22 23 24
API changes:
• Add PropertyError.UNAVAILABLE

25 26 27 28
Overview of changes from libfolks 0.7.2 to libfolks 0.7.3
=========================================================

Bugs fixed:
29
• Bug 629537 — Support anti-linking
30
• Bug 679618 — Crash when unsetting all groups
31
• Bug 678696 — Add API for EDS Google system groups
32
• Bug 669158 — Readonly/Offline issues
33
• Bug 675223 — Shouldn't warn if CM does not implement any contact list
34
• Bug 660128 — Most contacts don't have an avatar
35
• Bug 652637 — Don't hold locks across async calls
36
• Bug 660236 — Paging for long text in folks-inspect
Philip Withnall's avatar
Philip Withnall committed
37 38 39 40
• Bug 679116 — Output debug message if modules are not loaded because of mime
  type detection
• Bug 657456 — Folks test output not terribly useful
• Bug 674611 — Remove gconf.path once EDS drops GConf
41 42

API changes:
43
• Add AntiLinkable interface and implement it on Kf.Persona and Edsf.Persona
44
• Add Edsf.Persona.in_google_personal_group
45
• Add IndividualAggregator.unprepare()
46

47 48 49 50
Overview of changes from libfolks 0.7.1 to libfolks 0.7.2
=========================================================

Dependencies:
Jeremy Whiting's avatar
Jeremy Whiting committed
51
• evolution-data-server ≥ 3.5.3.1
52

53 54
Bugs fixed:
• Bug 677166 — Salut personas survive disconnection
55
• Bug 678474 — potential-match should be smarter with accents
56
• Bug 678781 — memory leak in e-d-s backend
Jeremy Whiting's avatar
Jeremy Whiting committed
57
• Bug 678811 — Fix eds backend unit tests
58
• Bug 678734 — Add profiling API
Jeremy Whiting's avatar
Jeremy Whiting committed
59
• Bug 679020 — Fail to build master using vala master
60 61

API changes:
62
• Add profiling api
63

Philip Withnall's avatar
Philip Withnall committed
64 65 66
Overview of changes from libfolks 0.7.0 to libfolks 0.7.1
=========================================================

67 68
Dependencies:
• telepathy-glib ≥ 0.17.5
69
• libzeitgeist ≥ 0.3.14
70
• evolution-data-server ≥ 3.5.3
71 72
• GLib ≥ 2.26.0
• GConf dependency dropped
73
• intltool ≥ 0.50.0
74

Philip Withnall's avatar
Philip Withnall committed
75
Bugs fixed:
76
• Bug 674256 — telepathy-glib minimal version is insufficient
77
• Bug 647909 — Port Folks to GSettings
78
• Bug 663890 — @throws annotations missing for some functions
79
• Bug 675292 — Assertion when joining IRC channel
80
• Bug 676023 — Invalid read when preparing the aggregator
81
• Bug 627403 — Move default presence messages from Empathy to libfolks
82
• Bug 675121 — port Folks to eds api changes
83
• Bug 672709 — Add new interaction details properties to individuals
Philip Withnall's avatar
Philip Withnall committed
84

85
API changes:
Travis Reitter's avatar
Travis Reitter committed
86 87
• Add PresenceDetails.get_default_message_from_type()
• Add new Individual properties:
88 89 90 91
    - im_interaction_count
    - call_interaction_count
    - last_im_interaction_timestamp
    - last_call_interaction_timestamp
92 93
• Add InteractionDetails interface to report interactions with Personas and
  Individuals
94

95 96 97
Overview of changes from libfolks 0.6.9 to libfolks 0.7.0
=========================================================

Philip Withnall's avatar
Philip Withnall committed
98 99 100 101 102
Major changes:
* Folks now uses the Connection.ContactList Telepathy spec. instead of the
  deprecated Channel.ContactList. This means legacy Connection Managers
  (notably telepathy-butterfly) are not supported any more .

103 104
Bugs fixed:
• Bug 658576 — Need API to get a FolksIndividual from his ID
105
• Bug 671662 — Renamed alias of Facebook contact is not saved
Philip Withnall's avatar
Philip Withnall committed
106
• Bug 630822 — Support Connection.Interface.ContactList API
107 108 109 110

API changes:
• Add IndividualAggregator.look_up_individual()

Philip Withnall's avatar
Philip Withnall committed
111 112 113
Overview of changes from libfolks 0.6.8 to libfolks 0.6.9
=============================================================

114 115 116
Dependencies:
• telepathy-glib ≥ 0.15.5

Philip Withnall's avatar
Philip Withnall committed
117
Bugs fixed:
118
• Bug 672980 — tp_account_get_protocol: assertion `TP_IS_ACCOUNT (account)' failed
Philip Withnall's avatar
Philip Withnall committed
119

Travis Reitter's avatar
Travis Reitter committed
120 121
Overview of changes from libfolks 0.6.7 to libfolks 0.6.8
=============================================================
Philip Withnall's avatar
Philip Withnall committed
122 123 124 125 126 127 128 129 130 131

Major changes:
* FOLKS_DEBUG has been removed in favour of G_MESSAGES_DEBUG (and the bug where
  folks would set G_MESSAGES_DEBUG for any process linked to it has been fixed)
* A --disable-fatal-warnings configure flag has been added for non-developers
* Update favourite status of EDS contacts with membership of the ‘Starred in
  Android’ Google Contacts group
* Improvements to linking suggestions (potential matches)
* Improvements to folks-inspect to make it a good command line citizen

Travis Reitter's avatar
Travis Reitter committed
132
Bugs fixed:
133
* Bug 670191 — IndividualAggregator::is-quiescent is never set to TRUE
134 135
* Bug 670523 — persona.vala:153:folks_persona_get_individual:
  assertion failed: (_tmp6_)
136 137
* Bug 672381 — invalid uninstantiatable type `<invalid>' in cast to
  `FolksIndividual'
138
* Bug 670347 — Check for null birthday strings
139 140
* Bug 661490 — Should mark contacts from the "Starred in Android" group as
  Favorites
141
* Bug 671714 — Fail to add contact to the contact list
142
* Bug 672373 — folks-import segfaults (Archlinux x86_64)
143
* Bug 670348 — Handle Telepathy CMs crashing/being invalidated
144
* Bug 671900 — Folks should not suggest linking contacts from telepathy-salut
145
* Bug 670872 — Should be less sensitive to accentuated chars
146
* Bug 669984 — Does not notify when contacts are added to groups
147
* Bug 660235 — Consistent signal handlers to a terminal would be cool
Philip Withnall's avatar
Philip Withnall committed
148 149 150 151
* Bug 671499 — Don't set G_MESSAGES_DEBUG unconditionally

API changes:
* Add MatchResult.NONE enum member
Travis Reitter's avatar
Travis Reitter committed
152

Travis Reitter's avatar
Travis Reitter committed
153 154 155
Overview of changes from libfolks 0.6.6 to libfolks 0.6.7
=============================================================
Bugs fixed:
156
* Bug 666310 — Crash in Tracker backend by unsetting an entry in a read-only map
157
* Bug 666528 — Can't convert from type 'GFile' to 'gchararray'
158
* Bug 666540 — Segfault on empty e-mail addresses with potential match
159 160
* Bug 659610 — Support code coverage report generation
* Bug 657063 — Allow to pass a command to folks-inspect
161 162
* Bug 667410 — A second instance of the aggregator only fetch a small subset of
  my contacts
163 164
* Bug 667535 — persona created by tpf_persona_dup_for_contact() outlives its
  TpContact
165
* Bug 670196 — Disable GLib deprecation warnings
Colin Walters's avatar
Colin Walters committed
166
* Bug 668415 — Port to Vala 0.15.x
Travis Reitter's avatar
Travis Reitter committed
167

168 169 170
API changes:
* Add PostalAddress.is_empty() and Role.is_empty()

Travis Reitter's avatar
Travis Reitter committed
171 172 173
Overview of changes from libfolks 0.6.5 to libfolks 0.6.6
=============================================================
Bugs fixed:
174 175
* Bug 664158 — Stale log handler can cause segfault when re-creating Aggregator
  in a single run
176 177
* Bug 663889 — crash due to NameDetails which fail to guarantee
  non-null full-name/nickname
178
* Bug 665039 — Crash in folks_backends_sw_backend_add_service
179 180
* Bug 665728 — TpfPersonaStore: prepare() isn't mutually exclusive inside a
  single thread
181
* Bug 665692 — Use constructors correctly
182
* Bug 665376 — Add API to get a TpfPersona from a TpContact
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

API changes:
* Add Edsf.PersonaStore.source
* Make Edsf.Persona.contact writeable on construct (previously private setter)
* Make Edsf.Persona.contact_id writeable on construct (previously private
  setter)
* Add Swf.PersonaStore.service
* Make Swf.Persona.lsw_contact writeable on construct (previously private
  setter)
* Add Trf.Persona.tracker_id
* Add Trf.Persona.cursor
* Make AbstractFieldDetails.value writeable on construct (previously just a
  normal setter)
* Make AbstractFieldDetails.parameters writeable on construct (previously just a
  normal setter)
* Add ObjectCache.type_id
* Add ObjectCache.id
200
* Add Tpf.PersonaStore.dup_for_account() and Tpf.Persona.dup_for_contact()
Travis Reitter's avatar
Travis Reitter committed
201

Travis Reitter's avatar
Travis Reitter committed
202 203 204
Overview of changes from libfolks 0.6.4.1 to libfolks 0.6.5
=============================================================
Bugs fixed:
205
* Bug 662285 — Error with email -> im_addresses when updating a contact
206 207
* Bug 662433 — AbstractFieldDetails.equal() is ambiguous about checking
  parameters.
208
* Bug 660908 — Add favourites support to EDS backend
209
* Bug 662770 — ContactPhotos are ignored when mime type is null
210
* Bug 662616 — We should set mime type when setting an EContact's photo
211 212
* Bug 662274 — Failed to link personas: Can't link personas with no primary
  store.
213 214
* Bug 662314 — Gnome-shell restarts if I change my user status to
  disconnected/unavailable
215
* Bug 663798 — Add AbstractFieldDetails.value_type
216 217
* Bug 659585 — GLib-GIO-CRITICAL **: g_bus_unwatch_name: assertion
  `watcher_id > 0' failed
Travis Reitter's avatar
Travis Reitter committed
218

219 220
API changes:
* Add AbstractFieldDetails.id to identify instances of details
221
* Deprecate PostalAddress.uid in favor of AbstractFieldDetails.id
222
* Deprecate NoteFieldDetails.uid in favor of AbstractFieldDetails.id
223
* Deprecate Role.uid in favor of AbstractFieldDetails.id
224
* Add AbstractFieldDetails.values_equal() to compare values (but not parameters)
225
* Implement FavouriteDetails on Edsf.Persona
226
* Add AbstractFieldDetails.value_type
227 228 229

Behavior changes:
* PostalAddress.equal() now ignores PostalAddress.uid
230
* NoteFieldDetails.equal() now ignores NoteFieldDetails.uid
231

Travis Reitter's avatar
Travis Reitter committed
232
Overview of changes from libfolks 0.6.4 to libfolks 0.6.4.1
Travis Reitter's avatar
Travis Reitter committed
233 234
=============================================================
Bugs fixed:
Travis Reitter's avatar
Travis Reitter committed
235
* Bug 662095 — so name of libfolks v 0.6.4 is lower than of libfolks v 0.6.3.x
Travis Reitter's avatar
Travis Reitter committed
236

Travis Reitter's avatar
Travis Reitter committed
237 238 239
Overview of changes from libfolks 0.6.3.2 to libfolks 0.6.4
=============================================================
Bugs fixed:
240
* Bug 660217 — folks-0.6.3.2 requires tracker-0.12, but configure.ac calls
241
  VALA_CHECK_PACKAGES([tracker-sparql-0.12])
242 243
* Bug 657602 — Telepathy backend fails to set Personas' phone numbers from
  ContactInfo
244
* Bug 660937 — [regression] build failure: No package 'gee-1.0' found
245
* Bug 661475 — string_strip: assertion `self != NULL' failed
246 247 248 249

API changes:
* Implement PhoneDetails on Tpf.Persona
* Implement NameDetails on Tpf.Persona
250
* Implement EmailDetails on Tpf.Persona
251
* Implement UrlDetails on Tpf.Persona
252
* Implement BirthdayDetails on Tpf.Persona
253
* Add PersonaStoreError.UNSUPPORTED_ON_NON_USER
Travis Reitter's avatar
Travis Reitter committed
254 255 256 257

Overview of changes from libfolks 0.6.3.1 to libfolks 0.6.3.2
=============================================================
Bugs fixed:
258 259
* Bug 660140 — contacts_contact_find_persona_from_store: assertion `store !=
  NULL' failed
260
* Bug 659041 — tpf-persona-store.vala: try to connect to a NULL object
Travis Reitter's avatar
Travis Reitter committed
261
* Bug 660051 — require tracker 0.12
Travis Reitter's avatar
Travis Reitter committed
262

Travis Reitter's avatar
Travis Reitter committed
263
Overview of changes from libfolks 0.6.3 to libfolks 0.6.3.1
264
===========================================================
265 266
Bugs fixed:
* Bug 658631 — Deprecate PersonaStore.can-[alias|group]-personas
267
* Bug 658002 — defective typelib
268
* Bug 659737 — tests fail due to usage of deprecated methods
269 270
* Bug 659732 — Gnome fails to load and crashes when the Evolution-exchange
  plugin is configured
271 272 273 274 275 276

API changes:
* Deprecate Folks.PersonaStore.can_[alias, group]_personas.
  Applications should use Folks.PersonaStore#always-writeable-properties
  and Folks.Persona#writeable-properties to check availability of "alias"
  and "groups" properties.
277

278 279 280
Overview of changes from libfolks 0.6.2.1 to libfolks 0.6.3
===========================================================

Philip Withnall's avatar
Philip Withnall committed
281 282 283 284 285
Major changes:
* Cleanup of the definition of “writeable” which involves a couple of API
  deprecations and additions, and some internal re-working.
* Beginnings of standardising TYPE values for AbstractFieldDetails

286 287
Bugs fixed:
* Bug 658631 — crash at empathy startup
288
* Bug 658331 — Ensure read-only PersonaStores have empty writeable-properties
Philip Withnall's avatar
Philip Withnall committed
289
* Bug 658874 — Typo?
290 291
* Bug 658730 — ngettext (Plural forms) needed for
  "Imported %u buddies from '%s'."
292
* Bug 633781 — Allow to set avatar on individuals
293 294
* Bug 657142 — Automatically link e-d-s contacts with their contacts from
  telepathy
295
* Bug 658002 — defective typelib
296
* Bug 657065 — Cache keeps around contacts from disabled accounts
297
* Bug 658323 — Deprecate FOLKS_WRITEABLE_STORE in favour of FOLKS_PRIMARY_STORE
298
* Bug 659095 — Don't distribute typelib file
299
* Bug 659128 — If a persona store goes away we don't remove its personas
300
* Bug 657141 — Backend should ask eds for the default backend, not hardcode it
301
* Bug 658531 — Sometimes avatar caching doesn't work
302 303
* Bug 658328 — Return PropertyError.NOT_WRITEABLE from Persona property setters
  as appropriate
304 305
* Bug 646847 — We should rename _update () in Trf.Persona to something more less
  misleading
306 307
* Bug 658161 — Consistently use “contact” in translatable strings instead of
  “persona”
308
* Bug 657738 — Favorite people are not always displayed
309
* Bug 653623 — Would like a set of standard "type" parameters for UrlDetails
310 311 312 313

API changes:
* Individual.avatar is now settable using Individual.change_avatar() (not new
  API, but it no longer always returns an error)
314 315
* We now use the FOLKS_PRIMARY_STORE env var instead of FOLKS_WRITEABLE_STORE
  to configure the primary store
316 317
* Deprecate Folks.PersonaStore.is_writeable
* Add Folks.PersonaStore.is_primary_store
318 319 320
* Add Folks.IndividualAggregatorError.NO_PRIMARY_STORE
* In IndividualAggregator.ensure_individual_property_writeable we now throw
  NO_PRIMARY_STORE instead of NO_WRITEABLE_STORE
321
* Add Folks.PersonaStore.user_set_default
322 323
* Add AbstractFieldDetails.PARAM_TYPE, .PARAM_TYPE_HOME, .PARAM_TYPE_WORK,
  .PARAM_TYPE_OTHER
324
* Add UrlFieldDetails.PARAM_TYPE_HOME_PAGE, .PARAM_TYPE_BLOG,
325
  .PARAM_TYPE_PROFILE, .PARAM_TYPE_FTP
326

327 328
Overview of changes from libfolks 0.6.2 to libfolks 0.6.2.1
===========================================================
329

330 331
Bugs fixed:
* Bug 658580 — Assertion in gee_hash_map_node_iterator_next with folks 0.6.2
332

Philip Withnall's avatar
Philip Withnall committed
333 334 335 336 337
Overview of changes from libfolks 0.6.1 to libfolks 0.6.2
=========================================================

Bugs fixed:
* Bug 645056 — TpLowlevel library should have only static public functions
338 339
* Bug 653777 — Would be nice to have a helper function to create a writable
  persona
340
* Bug 657635 — Linking personas from different (e-d-s) stores is not working
341
* Bug 657510 — Add asynchronous property setter methods
342
* Bug 656184 — Add is-quiescent property
Raul Gutierrez Segales's avatar
Raul Gutierrez Segales committed
343
* Bug 657971 — Need BirthdayDetails support in eds backend
344
* Bug 657789 — Don't claim uneditable eds fields as writable
345
* Bug 657282 — Add an IndividualAggregator.individuals_changed_detailed signal
346
* Bug 657969 — Support RoleDetails in eds backend
347
* Bug 657783 — Prefer data from primary store when picking Individual values
348 349
* Bug 658411 — Only emit notifications for linkable properties if they've
  actually changed
Raul Gutierrez Segales's avatar
Raul Gutierrez Segales committed
350
* Bug 656689 — Re-link personas on linkable properties being changed
Philip Withnall's avatar
Philip Withnall committed
351

352 353
API changes:
* Add PersonaStore:always-writeable-properties property
354 355
* Add IndividualAggregatorError.PROPERTY_NOT_WRITEABLE error
* Add IndividualAggregator.ensure_individual_property_writeable()
356
* Add Folks.PropertyError
357
* Add *Details.change_*() virtual methods
358 359
* Add IndividualAggregator:is-quiescent, Backend:is-quiescent and
  PersonaStore:is-quiescent
360
* Add PersonaDetail.GROUPS and PersonaDetail.INVALID
361 362
* Add IndividualAggregator.individuals_changed_detailed and deprecate
  IndividualAggregator.individuals_changed (but not remove or break it)
363

Raul Gutierrez Segales's avatar
Raul Gutierrez Segales committed
364 365 366 367 368
Overview of changes from libfolks 0.6.0 to libfolks 0.6.1
=========================================================

Bugs fixed:
* Bug 656659 — Use vcards for postal addresses
369
* Bug 655374 — Un-break avatar tests
370
* Bug 657067 — Can't build EDS backend using Vala master
371
* Bug 657332 — Add linking link-individuals
Raul Gutierrez Segales's avatar
Raul Gutierrez Segales committed
372

373
Overview of changes from libfolks 0.5.2 to libfolks 0.6.0
Travis Reitter's avatar
Travis Reitter committed
374 375
=========================================================

376 377
Bugs fixed:
* Bug 649925 — expose SocialWebClient.Contact in Swf.Persona
378
* Bug 646244 — Incomplete logic to handle attribute updates in Folks.Individual
379
* Bug 652463 — Tidy up CLEANFILES
380
* Bug 652434 — Add ability to run any tests through gdb
381
* Bug 648071 — Add support for presence status from Telepathy
382
* Bug 652472 — Handle failure in getting the logger service better
383
* Bug 629716 — Migrate Folks to GDBus
384
* Bug 652660 — Make Individual.id more stable and well-defined
385
* Bug 652449 — Folks.Individual's property getters should be read only
386 387
* Bug 653325 — Build system does not complain if trying to build docs without
  vala-doc installed
388
* Bug 653746 — mismatch between hash and equals in Note
Raul Gutierrez Segales's avatar
Raul Gutierrez Segales committed
389
* Bug 638281 — Add an EDS backend
Travis Reitter's avatar
Travis Reitter committed
390
* Bug 654509 — Folks master not building
391
* Bug 652048 — Make nickname writable
392
* Bug 652425 — Failure codes for removing personas needed in PersonaStoreError
393
* Bug 645549 — Add a way to get the individual from a persona
394
* Bug 650422 — Add API for easily checking whether details are writeable
395
* Bug 655019 — Don't notify twice for nickname changes
396
* Bug 650414 — Need better APIs to handle image data
397
* Bug 652643 — Add PersonaStore cache
398
* Bug 655510 — Make truly-writeable *Details property setters public
399
* Bug 654907 — The writable store shouldn't be set by type_id
400
* Bug 655745 — Implement read/write support for gender property
401
* Bug 649296 — Folks backend files shouldn't begin with "lib"
402
* Bug 652657 — Allow writing to properties of all personas
403
* Bug 655008 — Tidy up error handling in eds backend
404
* Bug 653619 — Add company details
405 406
* Bug 653679 — Change PostalAddressDetails.postal_addresses to support
  vCard-like arbitrary parameters
407 408
* Bug 653680 — Change ImDetails.im_addresses to support vCard-like arbitrary
  parameters
409 410 411
* Bug 655917 — Rebase EmailDetails.email_addresses upon an
  AbstractFieldDetails-derived class
* Bug 655374 — Un-break avatar tests
412 413
* Bug 655919 — Rebase NoteDetails.notes upon an AbstractFieldDetails-derived
  class
414 415
* Bug 655920 — Rebase PhoneDetails.numbers upon an AbstractFieldDetails-derived
  class
416 417
* Bug 653682 — Change WebServiceDetails.web_service_addresses to support
  vCard-like arbitrary parameters
418 419
* Bug 655921 — Change RoleDetails.roles to support vCard-like arbitrary
  parameters
Travis Reitter's avatar
Travis Reitter committed
420
* Bug 655922 — Rebase UrlDetails.urls upon an AbstractFieldDetails-derived class
421
* Bug 648818 — Support the EDS backend being a primary
422
* Bug 655609 — Implement setter for URLs
Travis Reitter's avatar
Travis Reitter committed
423

424 425
API changes:
* Swf.Persona retains and exposes its libsocialweb Contact
426
* Add a PresenceDetails.presence_status property
427
* Make NameDetails.nickname settable
428
* Drop AliasDetails support from Trf.Persona
429
* Add PersonaStoreError.PERMISSION_DENIED and PersonaStoreError.REMOVE_FAILED
430 431
* Change the error domain of PersonaStore.remove_persona() from GLib.Error to
  Folks.PersonaStoreError
432
* Add a Persona.individual property
433 434
* Add a Persona.writeable_properties property and implement it in all the
  Persona subclasses
435
* Make BirthdayDetails.calendar_event_id nullable
436
* Make Folks.Utils public and add Gee structure equality functions
437 438
* AvatarDetails.avatar is now of type LoadableIcon?
* Add AvatarCache class
439
* Add ObjectCache class
440
* Remove leaked internal PotentialMatch.result_to_string() method
441
* Add RoleDetails:role property
442 443
* Rebase FieldDetails upon AbstractFieldDetails (requiring the use of the
  equivalent AbstractFieldDetails functions in place of the FieldDetails ones).
444 445
* Add AbstractFieldDetails.equal() and hash() for better matching on structures
  which will store derived objects.
446
* Add parameters as an optional argument for the FieldDetails constructor
447 448
* Use PostalAddressFieldDetails for PostalAddressDetails.postal_addresses
* Remove PostalAddress.types (obsoleted by PostalAddressFieldDetails.parameters)
449
* Add and use ImFieldDetails for ImDetails.im_addresses
450
* Add and use EmailFieldDetails for EmailFieldDetails.email_addresses
451 452
* Add and use NoteFieldDetails for NoteFieldDetails.notes
* Remove Note class (obsoleted by NoteFieldDetails)
453 454
* Add and use PhoneFieldDetails for PhoneFieldDetails.phone_numbers
* Remove all PhoneDetails functions (obsoleted by PhoneFieldDetails)
455 456
* Add and use WebServiceFieldDetails for
  WebServiceFieldDetails.web_service_addresses
457
* Use RoleFieldDetails for RoleDetails.roles
458
* Use UrlFieldDetails for UrlDetails.urls
459

Travis Reitter's avatar
Travis Reitter committed
460 461 462
Overview of changes from libfolks 0.5.1 to libfolks 0.5.2
=========================================================

463 464 465
Bugs fixed:
* Bug 650067 — Tracker backend warns when setting a NULL avatar (ie, unsetting
  the avatar)
466
* Bug 650268 — build failure: "--vapidir=.: command not found"
467

Travis Reitter's avatar
Travis Reitter committed
468 469 470
Overview of changes from libfolks 0.5.0 to libfolks 0.5.1
=========================================================

471 472
Bugs fixed:
* Bug 645388 — Group channels are leaked
473
* Bug 647562 — Don't crash on duplicate group channels
474 475
* Bug 647121 — Crash in individual_store_contact_sort at
  empathy-individual-store.c line 1387
476
* Bug 645684 — Implement Iterator on LinkedHashSet
477
* Bug 640092 — Folks should minimize use of GLib.List (including its public API)
478
* Bug 648161 — Add GObject Introspection Support
479
* Bug 645186 — Make sure all connect() calls have appropriate disconnect() calls
480
* Bug 648533 — Add runtime debug signalling
481
* Bug 649790 — Vala uses the wrong includes
482
* Bug 649088 — Combining contacts doesn't work with german Umlauts
483

484 485
API changes:
* LinkedHashSet.list_iterator() is now disallowed (causes an assertion failure)
486 487
* LinkedHashSet.iterator() now returns a BidirIterator instead of just an
  Iterator
488
* ImDetails.im_addresses is now of type MultiMap<string, string>
489 490
* WebServiceDetails.web_service_addresses is now of type
  MultiMap<string, string>
491
* Removed LinkedHashSet in favour of Gee.HashSet
492
* Backend.persona_stores is now of type Map<string, PersonaStore>
493
* GroupDetails.groups is now of type Set<string>
494 495 496
* FieldDetails.parameters is now of type MultiMap<string, string>
* FieldDetails.get_parameter_values() now returns type Collection<string>
* FieldDetails.extend_parameters() now takes type MultiMap<string, string>
497
* PostalAddressDetails.postal_addresses is now of type Set<PostalAddress>
498
* EmailDetails.email_addresses is now of type Set<FieldDetails>
499
* PhoneDetails.phone_numbers is now of type Set<FieldDetails>
500
* UrlDetails.urls is now of type Set<FieldDetails>
501 502 503 504
* BackendStore.enabled_backends now has type Map<string, Backend>
  - The corresponding C function folks_backend_store_dup_enabled_backends()
    has been renamed folks_backend_store_get_enabled_backends(), and no longer
    returns an owned variable.
505
* Individual.personas now has type Set<Persona>
506
* Individual.personas_changed now uses Set<Persona>-typed parameters
507
* PersonaStore.personas_changed now uses Set<Persona>-typed parameters
508 509
* IndividualAggregator.individuals_changed now uses
  Set<Individual>-typed parameters
510
* IndividualAggregator.link_personas() now takes a Set<Persona>
511 512 513 514
* IndividualAggregator.get_all_potential_matches() now returns a
  Map<Individual, Map<Individual, MatchResult>>
* IndividualAggregator.get_potential_matches() now returns a
  Map<Individual, MatchResult>
515
* IndividualAggregator.individuals now has type Map<string, Individual>
516
* PersonaStore.personas now has type Map<string, Persona>
517
* LocalIdDetails.local_ids now has type Set<string>
518
* NoteDetails.notes now has type Set<Note>
519
* RoleDetails.roles now has type Set<Role>
520
* PotentialMatch.known_email_aliases now has type Set<string>
521
* PostalAddress.types now has type Set<string>
522
* Add Folks.Debug debug controller class
523 524
* All pc-files now only add the $includedir to the cflags, so all includes
  must be of the form <folks/*.h>
525

Travis Reitter's avatar
Travis Reitter committed
526 527 528
Overview of changes from libfolks 0.4.0 to libfolks 0.5.0
=========================================================

529 530 531
Major changes:
* Add support to change primary (writeable) store either via
  GConf or an env variable (bug 645441).
532
* Bumped Vala dependency to 0.12.0 for bug #646345
533

534
Bugs fixed:
535 536
* Bug 644968 - _update_phone_numbers() needs to create copies
  of each List<FieldDetails>
537 538
* Bug 644966 - _update_emails () needs to create copies of each
  List<FieldDetails>
539 540
* Bug 644527 - Add a Tracker backend
* Bug 645430 - folks-inspect: Use LinkedHashSet to access im-addresses
541
* Bug 645411 - folks-import segfaults on startup
542
* Crasher when removing Personas
543
* Crasher when reconnecting a Telepathy account
544
* Bug 645680 — Use random integer IDs for Kf.Personas
545
* Bug 645475 — Linker warnings for Tracker backend tests
546
* Bug 645570 — Fix checks for empty and equal StructuredNames
547
* Bug 645989 — Ensure add_persona_from_details handles the basic attribute
548
* Bug 645413 — Write support for Tracker
549
* Bug 645441 — Mechanism to specify primary backend
Alban Crequy's avatar
Alban Crequy committed
550
* Bug 638280 — Add a libsocialweb backend
551
* Deal with duplicated phones/e-mails in Tracker
552 553
* Bug 646944 — Fix libsocialweb updates and removals of contacts
* Bug 644867 — add interface for linkable web service contact UIDs
554
* Bug 647168 — print the "web-service-addresses" property correctly
555 556
* Bug 646831 — Setting an existing phone number or e-mail address on a
  Trf.Persona fails
557 558
* Bug 647298 — folks-inspect gets SIGSEGV when trying to auto-complete
  parameters
559
* Bug 646948 — Support for potential matches
560

561 562
API changes:
* Add equal () to StructuredName
563 564 565
* Add detail_key () along with an enum PersonaDetail to PersonaStore
  which together define the basic attributes that should be supported
  by add_persona_from_details ().
566
* Add public primary_store to IndividualAggregator
567 568
* Add LocalIdDetails interface for linking Personas based on local address book
  IDs (such as for the Tracker backend Personas)
569 570
* Add WebServiceDetails interface for linking Personas based on web service
  accounts (such as for the libsocialweb backend Personas)
571 572 573
* Add PotentialMatch class and IndividualAggregator.get_potential_matches() and
  IndividualAggregator.get_all_potential_matches() to suggest Individuals that
  may match the given Individual or all potential matches, respectively.
574

Travis Reitter's avatar
Travis Reitter committed
575
Overview of changes from libfolks 0.3.6 to libfolks 0.4.0
576 577 578 579
=========================================================

Bugs fixed:
* Bug 642351 — BACKEND_STORE_KEY_FILE format should support a wildcard entry
580 581
* Bug 643241 — _update_urls () needs to create copies of each
  List<FieldDetails>
582
* Bug 643247 — Folks needs C API documentation
583 584
* Bug 643201 — folks-inspect can't handle properties which are
  List<FieldDetails>
585 586
* Bug 642866 — tp-lowlevel leaks TpChannel
* Bug 642861 — FolksLinkedHashSet still alive when exiting Empathy
Travis Reitter's avatar
Travis Reitter committed
587
* Bug 642493 — Folks needs API for specifying a contact's organisation
588
* Bug 642500 — Folks needs API for specifying a contact's birthday
589
* Bug 642501 — Folks needs API for attaching notes to a Contact
590
* Bug 641210 — Add interface for postal addresses
591
* Bug 643956 — Use the correct signal name for postal addresses
592
* Bug 643954 — Add to_string () to PostalAddress class
593
* Bug 643955 — Add to_string () to RoleOwner class
594
* Bug 643957 — Deal handle birthday and postal-addresses.
595
* Bug 644457 — Handle structured names
596
* Bug 644165 — An individual's avatar shouldn't be replaced by a null avatar
597 598

API changes:
599
* Add RoleDetails interface
600
* Add BirthdayDetails interface
601
* Add NoteDetails interface
602
* Add PostalAddressDetails interface
603
* Rename Aliasable -> AliasDetails
604
* Rename AvatarOwner -> AvatarDetails
605
* Rename Emailable -> EmailDetails
606
* Rename Favouritable -> FavouriteDetails
607
* Rename GenderOwner -> GenderDetails
608
* Rename Groupable -> GroupDetails
Travis Reitter's avatar
Travis Reitter committed
609
* Rename IMable -> ImDetails
610
* Rename NameOwner -> NameDetails
611
* Rename Phoneable -> PhoneDetails
612
* Rename PresenceOwner -> PresenceDetails
Travis Reitter's avatar
Travis Reitter committed
613
* Rename Urlable -> UrlDetails
614

Philip Withnall's avatar
Philip Withnall committed
615 616 617 618 619 620
Overview of changes from libfolks 0.3.5 to libfolks 0.3.6
=========================================================

This is just a repackaging of libfolks 0.3.5 with some documentation comment
version numbers fixed.

Philip Withnall's avatar
Philip Withnall committed
621 622 623
Overview of changes from libfolks 0.3.4 to libfolks 0.3.5
=========================================================

Philip Withnall's avatar
Philip Withnall committed
624 625 626 627 628
Major changes:
* Various API breaks and improvements, especially in the IndividualAggregator
* Add various new interfaces: NameOwner, FieldDetails, Urlable, GenderOwner,
  Phoneable and Emailable

Philip Withnall's avatar
Philip Withnall committed
629
API changes:
Philip Withnall's avatar
Philip Withnall committed
630 631 632 633 634 635
* Add NameOwner interface
* Add FieldDetails interface
* Add Urlable interface
* Add GenderOwner interface
* Add Phoneable interface
* Add Emailable interface
Philip Withnall's avatar
Philip Withnall committed
636
* Add Tpf.Persona.is_in_contact_list
637
* Rename the URLable interface to Urlable
638 639
* Take a PersonaStore in IndividualAggregator.add_persona_from_details
* Remove IndividualAggregatorError.STORE_NOT_FOUND
640 641 642 643
* Rename the getter for BackendStore.enabled_backends from
  folks_backend_store_get_enabled_backends() to
  folks_backend_store_dup_enabled_backends()
* Rename BackendStore.get_backend_by_name() to .dup_backend_by_name()
Philip Withnall's avatar
Philip Withnall committed
644 645 646 647

Bugs fixed:
* Bug 640901 — Allow it to be determined whether a user Tpf.Persona is in the
  contact list
648
* Bug 641780 — Incorrect C function names for URLable interface
649 650
* Bug 629078 — Folks needs a full API review to take advantage of our
  compatibility break in 0.2.x
Philip Withnall's avatar
Philip Withnall committed
651
* Bug 642036 — No way to pass a message when adding a contact
Philip Withnall's avatar
Philip Withnall committed
652

653 654 655
Overview of changes from libfolks 0.3.3 to libfolks 0.3.4
=========================================================

656 657
Major changes:
* Add folks-inspect tool
658 659
* The use of the new LinkedHashSet type in the API may make libgee a requirement
  for some clients (to take full advantage of its class lineage).
660

661 662
API changes:
* New type: LinkedHashSet, similar to Gee.HashSet, but ordered.
663
* IMable.im_addresses is now a mapping of string to LinkedHashSet.
664 665
* Rename the HasAvatar interface to AvatarOwner
* Rename the HasPresence interface to PresenceOwner
666

667 668
Bugs fixed:
* Bug 637240 — libfolks-telepathy.so exports private symbols
669 670
* Bug 638311 — Add a HACKING file that outlines development policies and
  coding style
671
* Bug 629083 — Review coding conventions in folks
672
* Bug 629075 — Add folks command line application
673
* Bug 638609 — libfolks hard-codes backend names for debugging
674 675
* Bug 639195 — Print stack traces for failed tests to improve remote
  debugging
676
* Bug 639113 — Add static aggregation tests
677
* Bug 639742 — Logger service unavailable in make check
Travis Reitter's avatar
Travis Reitter committed
678
* Bug 640213 — Add tests for LinkedHashSet
679
* Bug 627397 — Use better interface names
680

Philip Withnall's avatar
Philip Withnall committed
681 682 683
Overview of changes from libfolks 0.3.2 to libfolks 0.3.3
=========================================================

Philip Withnall's avatar
Philip Withnall committed
684 685 686 687 688 689 690 691 692 693 694
Major changes:
* Fix some minor leaks
* Add support for building gtk-doc documentation for the C API
* Fix some related documentation problems
* Fix some Vala problems caused by differences between Vala 0.10 and 0.12
* Finish off renaming interfaces (this is an API break; see below)
* Don't trust personas from IRC
* Handle invalid IM addresses more gracefully than with an assertion failure
* Fix a linking problem with the user's individual when going offline which
  could lead to infinite loops

695 696
API changes:
* Rename the Avatar interface to HasAvatar
697
* Rename the Presence interface to HasPresence
698
* Rename the Favourite interface to Favouritable
699 700
* Add IMableError
* Throw IMableError from IMable.normalise_im_address()
701

Philip Withnall's avatar
Philip Withnall committed
702 703 704
Bugs fixed:
* Bug 635178 — Leak in
  folks_tp_lowlevel_connection_open_contact_list_channel_async
705
* Bug 635649 — autopoint fails to run
706
* Bug 635703 — Leak in connection_get_requestable_channel_classes_cb
707
* Bug 635823 — [PATCH] telepathy test not linking against GIO
708 709
* Bug 636251 — Fails to add contact
* Bug 629526 — Generate gtk-doc documentation
710
* Bug 627397 — Use better interface names
711
* Bug 636714 — Assertion failure on invalid IM address
Philip Withnall's avatar
Philip Withnall committed
712
* Bug 637136 — Infinite loop when disconnecting accounts
Philip Withnall's avatar
Philip Withnall committed
713

714 715 716
Overview of changes from libfolks 0.3.1 to libfolks 0.3.2
==========================================================

717 718 719
Major changes:
* BackendStore.load_backends() now (un)loads backends which have been
  (dis|en)abled since the last call
720 721
* FOLKS_BACKEND_DIR has been replaced by FOLKS_BACKEND_PATH. It accepts any
  number of files and directories, separated by :
722
* Significantly clean up the build system
723

724 725
API changes:
* Added BackendStore.prepare() and BackendStore::is-prepared
726 727
* Add BackendStore.enable_backend().
* Add BackendStore.disable_backend().
728
* Add BackendStore.unprepare().
729
* Remove casting convenience methods on Individual (casting isn't hard)
730 731 732 733
* Change the visibility of the setters of PersonaStore.type_id,
  PersonaStore.display_name, PersonaStore.id, Backend.name,
  Backend.persona_stores and Persona.linkable_properties. This removes the
  corresponding C setter methods which should never have been exposed
734 735
* Remove Tpf.PersonaError
* Remove the exception from the Tpf.Person