summaryrefslogtreecommitdiff
path: root/NEWS
blob: 55a0acd075ff9607e5b764143e01d34cfd921183 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
Overview of changes from libfolks 0.3.6 to libfolks 0.3.7
=========================================================

Bugs fixed:
* Bug 642351 — BACKEND_STORE_KEY_FILE format should support a wildcard entry
* Bug 643241 — _update_urls () needs to create copies of each
  List<FieldDetails>
* Bug 643247 — Folks needs C API documentation
* Bug 643201 — folks-inspect can't handle properties which are
  List<FieldDetails>
* Bug 642866 — tp-lowlevel leaks TpChannel
* Bug 642861 — FolksLinkedHashSet still alive when exiting Empathy
* Bug 642493 — Folks needs API for specifying a contact's organisation
* Bug 642500 — Folks needs API for specifying a contact's birthday
* Bug 642501 — Folks needs API for attaching notes to a Contact
* Bug 641210 — Add interface for postal addresses
* Bug 643956 — Use the correct signal name for postal addresses
* Bug 643954 — Add to_string () to PostalAddress class
* Bug 643955 — Add to_string () to RoleOwner class
* Bug 643957 — Deal handle birthday and postal-addresses.

API changes:
* Add RoleDetails interface
* Add BirthdayDetails interface
* Add NoteDetails interface
* Add PostalAddressDetails interface
* Rename Aliasable -> AliasDetails
* Rename AvatarOwner -> AvatarDetails
* Rename Emailable -> EmailDetails
* Rename Favouritable -> FavouriteDetails
* Rename GenderOwner -> GenderDetails
* Rename Groupable -> GroupDetails
* Rename IMable -> ImDetails
* Rename NameOwner -> NameDetails
* Rename Phoneable -> PhoneDetails
* Rename PresenceOwner -> PresenceDetails
* Rename Urlable -> UrlDetails

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.

Overview of changes from libfolks 0.3.4 to libfolks 0.3.5
=========================================================

Major changes:
* Various API breaks and improvements, especially in the IndividualAggregator
* Add various new interfaces: NameOwner, FieldDetails, Urlable, GenderOwner,
  Phoneable and Emailable

API changes:
* Add NameOwner interface
* Add FieldDetails interface
* Add Urlable interface
* Add GenderOwner interface
* Add Phoneable interface
* Add Emailable interface
* Add Tpf.Persona.is_in_contact_list
* Rename the URLable interface to Urlable
* Take a PersonaStore in IndividualAggregator.add_persona_from_details
* Remove IndividualAggregatorError.STORE_NOT_FOUND
* 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()

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

Overview of changes from libfolks 0.3.3 to libfolks 0.3.4
=========================================================

Major changes:
* Add folks-inspect tool
* 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).

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

Bugs fixed:
* Bug 637240 — libfolks-telepathy.so exports private symbols
* Bug 638311 — Add a HACKING file that outlines development policies and
  coding style
* Bug 629083 — Review coding conventions in folks
* Bug 629075 — Add folks command line application
* Bug 638609 — libfolks hard-codes backend names for debugging
* Bug 639195 — Print stack traces for failed tests to improve remote
  debugging
* Bug 639113 — Add static aggregation tests
* Bug 639742 — Logger service unavailable in make check
* Bug 640213 — Add tests for LinkedHashSet
* Bug 627397 — Use better interface names

Overview of changes from libfolks 0.3.2 to libfolks 0.3.3
=========================================================

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

API changes:
* Rename the Avatar interface to HasAvatar
* Rename the Presence interface to HasPresence
* Rename the Favourite interface to Favouritable
* Add IMableError
* Throw IMableError from IMable.normalise_im_address()

Bugs fixed:
* Bug 635178 — Leak in
  folks_tp_lowlevel_connection_open_contact_list_channel_async
* Bug 635649 — autopoint fails to run
* Bug 635703 — Leak in connection_get_requestable_channel_classes_cb
* Bug 635823 — [PATCH] telepathy test not linking against GIO
* Bug 636251 — Fails to add contact
* Bug 629526 — Generate gtk-doc documentation
* Bug 627397 — Use better interface names
* Bug 636714 — Assertion failure on invalid IM address
* Bug 637136 — Infinite loop when disconnecting accounts

Overview of changes from libfolks 0.3.1 to libfolks 0.3.2
==========================================================

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

API changes:
* Added BackendStore.prepare() and BackendStore::is-prepared
* Add BackendStore.enable_backend().
* Add BackendStore.disable_backend().
* Add BackendStore.unprepare().
* Remove casting convenience methods on Individual (casting isn't hard)
* 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
* Remove Tpf.PersonaError
* Remove the exception from the Tpf.Persona constructor

Bugs fixed:
* Bug 629081 — Add API to allow specific backends to be disabled
* Bug 629862 — Add tests for the key-file backend
* Bug 628883 — Add localisation support
* Bug 633718 — Make the Folks releases buildable without vala, valadoc, or
  g-i
* Bug 633080 — Crash when disconnecting twice

Overview of changes from libfolks 0.3.0 to libfolks 0.3.1
==========================================================

Major changes:
* Tpf.Persona.contact is now guaranteed to have the client type feature

API changes:
* Add the PersonaStore:can-add-personas property
* Add the PersonaStore:can-remove-personas property
* Add the PersonaStore:can-alias-personas property
* Add the PersonaStore:can-group-personas property
* Make Individual implement the IMable interface

Bugs fixed:
* Bug 630431 — notify::alias is never emitted
* Bug 631864 — Crash when empathy disconnects
* Bug 632096 — build failure: contact-retrieval.o: undefined reference to
  symbol 'gee_abstract_collection_add'
* Bug 632163 — Folks key-file backend needs a way to point to a specific
  .ini file
* Bug 632564 — assertion `EMPATHY_IS_CONTACT (contact)' failed in
  individual_store_contact_sort

Overview of changes from libfolks 0.1.17 to libfolks 0.3.0
==========================================================

Major changes:
* Fixed some linking problems
* Added some missing documentation
* Fixed build problems introduced by switching to gobject-introspection 0.9.6
  (i.e. GIR format 1.2)
* Bumped telepathy-glib dependency to 0.11.16
* Bumped Vala dependency to 0.10.0
* Bumped gobject-introspection dependency to 0.9.6
* Ensured IM addresses are normalised before being compared
* Made the folks-import build optional through a configure argument
* Added support for a “self” individual
* Added support for generating and installing Devhelp format documentation
* BackendStore.load_backends and the prepare() functions are now idempotent
* Tpf.Persona.contact is now guaranteed to have the avatar token and data
  features
* Tpf.Persona.contact is now guaranteed to have the capabilities feature

API changes:
* Added IMable.normalise_im_address()
* Renamed Groups interface to Groupable
* Renamed Alias interface to Aliasable
* Removed BackendStore constructor
* Added BackendStore.dup()
* Added BackendStore::enabled-backends
* Added Individual::is-user
* Added Persona::is-user
* Added IndividualAggregator::user
* Added PersonaStoreError.UNSUPPORTED_ON_USER
* Added {IndividualAggregator, PersonaStoreError}.STORE_OFFLINE, used by the
  respective add_persona_from_details() functions

Bugs fixed:
* Bug 629452 — [Patch] Add missing gio linking for import-tool
* Bug 626008 — Add @since lines to all symbols
* Bug 629311 — Folks should normalize IDs written to the writable backend
* Bug 629644 — Key file backend cannot be loaded because of linking problems
* Bug 629666 — libfolks should not hard autodetect libxml
* Bug 628970 — Folks API needs a way to determine whether a specific type of
  PersonaStore is available
* Bug 629096 — Add a library init function
* Bug 627402 — Support marking FolksPersonas as "me"
* Bug 629642 — individuals-changed emitted in the wrong order
* Bug 629643 — do not fall back to the id if alias is empty
* Bug 629006 — PersonaStore should gracefully handle offline Persona change
  attempts
* Bug 629331 — BackendStore.load_backends and the prepare() functions should
  be idempotent.
* Bug 629008 — Add a test for Persona additions
* Bug 630347 — Avatars are always NULL

Overview of changes from libfolks 0.1.16 to libfolks 0.1.17
===========================================================

Major changes:
* Added a basic test suite
* Cleaned up the build system
* Ensured the public libraries' VAPI files are distributed and installed
* Prevented the key-file from being saved unnecessarily
* Fixed multi-byte character handling in the key-file backend
* Ensured account removal and invalidation is handled in the Telepathy backend
* Prevented a hang when creating relationships.ini in certain situations
* Added a folks-import tool to import meta-contact data from Pidgin; this adds
  a dependency on libxml

API changes:
* Added PersonaStore.flush()

Bugs fixed:
* Bug 628930 — folks crahses empathy on relationships.ini read
* Bug 629082 — Empathy crashes when toggling "Ignore SSL certificate errors"
  checkbox
* Bug 628853 — hangs if there's no relationships.ini file
* Bug 629084 — Add a folks-import tool

Overview of changes from libfolks 0.1.15 to libfolks 0.1.16
===========================================================

Major changes:
* Added more debugging output
* Fixed various small outputted code bugs
* Fixed problem where key file groups would be overwritten in some situations
* Fixed various signal emission problems
* Prevented changes to Personas' properties from being propagated back up to the
  Individuals
* Limited libgee dependency to < 0.7 due to API changes in libgee
* Added a FOLKS_DISABLE_LINKING environment variable to disable linking (for
  debugging purposes)

Bugs fixed:
* Bug 628108 — Favorite contacts are not save any more
* Bug 628294 — Some contacts appear to be linked together while they shouldn't
* Bug 628305 — Signal removal of Individuals containing untrusted Personas
* Bug 628131 — error message when trying to link ICQ with jabber
* Bug 628343 — Add an environment variable to disable linking
* Bug 628335 — Assertion error with master

Overview of changes from libfolks 0.1.14.1 to libfolks 0.1.15
=============================================================

Major changes:
* Fixed various build problems
* Ensured duplicate entries don't appear in various sets
* Made gobject-introspection dependency explicit
* Limited libgee dependency to <= 0.5.2 due to API changes in libgee
* Reworked some of the Individual internals to make notifications more efficient
* Added the concept of an Individual's “trust level”
* Changed alias fallbacks to fall back to a display ID instead of a UID
* Added support for storing aliases in the key-file backend and use them in
  preference to aliases from other Personas in an Individual

API changes:
* Added Individual:personas-changed
* Added TrustLevel enum
* Added Individual::trust-level
* Implemented Alias on Kf.Persona

Bugs fixed:
* Bug 627314 — folks cannot be install in gentoo sandbox
* Bug 627506 — Require gobject-introspection
* Bug 626725 — Add an Individual.personas_changed signal
* Bug 627968 — Add Individual.trust_level property
* Bug 626578 — Use vala's vala.m4 to check for telepathy-glib(.vapi)
* Bug 626410 — contacts show up with a weird alias
* Bug 627508 — Store alias and groups in the key-file backend
* Bug 627898 — Fails to install with -j4

Overview of changes from libfolks 0.1.14 to libfolks 0.1.14.1
=============================================================

Major changes:
* Bumped Vala dependency to 0.9.6
* Fixed some more warning spew

Overview of changes from libfolks 0.1.13 to libfolks 0.1.14
===========================================================

Major changes:
* Changed Vala detection code to use the correct macro
* Bumped Vala dependency to 0.9.5
* Removed some more message spew
* Changed tp-lowlevel Vala bindings to be generated using gobject-introspection
* Added optional dependency on gobject-introspection 0.6.7

Overview of changes from libfolks 0.1.12 to libfolks 0.1.13
===========================================================

Major changes:
* Added the concept of “linkable properties”
* Added the IMable interface
* Added the concept of persona store “trust”
* Added a writeable key-file backend
* Added linking support to the IndividualAggregator
* Tidied up ID handling in the backends
* Warn if a backend's MIME type could not be determined, notifying the user if
  libfolks can't load backends due to shared-mime-info not being installed
* Hint to clients the Individual replacing a removed Individual (if any)
* Exposed Telepathy contacts' IM addresses using the IMable interface
* Fixed some build and dependency issues
* Bumped telepathy-glib dependency to 0.11.11 and dropped dependency on
  telepathy-vala
* Added the concept of “writeable” PersonaStores and use this concept to prevent
  properties being synchronised between PersonaStores unnecessarily (and
  potentially even destructively)

API changes:
* Added Persona::linkable-properties
* Added IMable interface
* Added PersonaStoreTrust enum
* Added PersonaStore::trust-level
* Added Persona.LinkablePropertyCallback()
* Added Persona.linkable_property_to_links()
* Added Persona.build_uid()
* Added Persona.split_uid()
* Added Persona::display-id
* Added PersonaStore::display-name
* Added replacement_individual parameter to Individual:removed
* Implemented IMable on Tpf.Persona
* Added IndividualAggregatorError.NO_WRITEABLE_STORE
* Added IndividualAggregator.link_personas()
* Added IndividualAggregator.unlink_individual()
* Added PersonaStore::is-writeable

Bugs fixed:
* Bug 625830 — Adding an existing contact to the tp backend results in bogus
  warnings
* Bug 626108 — Defining XDG_DATA_DIRS prevents backends from being loaded

Overview of changes from libfolks 0.1.11 to libfolks 0.1.12
===========================================================

Major changes:
* Added debug flags support using the FOLKS_DEBUG environment variable
* Removed various bits of message and warning spew
* Bumped Vala dependency to 0.9.4
* Ensured connections which are ready as soon as they're connected are handled
  correctly
* Versioned the installed backends using the main library's libtool version

Bugs fixed:
* Bug 625815 — No contat showed in the contact list

Overview of changes from libfolks 0.1.10 to libfolks 0.1.11
===========================================================

Major changes:
* Moved various bits of preparation code out into async prepare() methods to
  avoid race conditions on startup
* Reset TpfPersonaStore state when going offline
* Made several methods async which could potentially require it in future
* Added error throws to various functions which could potentially fail in future

API changes:
* Added PersonaStore.prepare()
* Added Backend.prepare()
* Removed error thrown from Backend constructor
* Added IndividualAggregator.prepare()
* Changed return type of Presence.is_online() from uint to int
* Made IndividualAggregator.remove_individual() async
* Made PersonaStore.remove_persona() async
* Added an error throw to BackendStore.load_backends()
* Added an error throw to IndividualAggregator.prepare()
* Added an error throw to IndividualAggregator.remove_individual()
* Added an error throw to IndividualAggregator.remove_persona()
* Added an error throw to PersonaStore.remove_persona()
* Made Groups.change_group() async
* Made Groups:group-changed async

Overview of changes from libfolks 0.1.9 to libfolks 0.1.10
==========================================================

Major changes:
* Fixed various memory and reference leaks
* Lots of build system improvements
* Added a libtool version to the installed libraries

Initial release of libfolks 0.1.9
=================================

Major changes:
* Move to GNOME infrastructure