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
|
Overview of changes from libfolks 0.3.4 to libfolks 0.3.5
=========================================================
API changes:
* Add Tpf.Persona.is_in_contact_list
Bugs fixed:
* Bug 640901 — Allow it to be determined whether a user Tpf.Persona is in the
contact list
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
|