summaryrefslogtreecommitdiff
path: root/NEWS
blob: 7a943ff82960162699dc81310e11093f78d0e11e (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
telepathy-mission-control 5.2.6 (2009-10-08)
============================================

The "Tooting Bec" release.

Enhancements:

* mc-wait-for-name: give up after 5 minutes and exit EX_TEMPFAIL. Also exit
  with EX_UNAVAILABLE (instead of 1) if the session bus doesn't work, EX_USAGE
  (instead of 1) on wrong arguments, and EX_USAGE (instead of g_critical()
  and never terminating) if the requested bus name is not valid (smcv)

Fixes:

* mc_account_conditions_call_when_ready: explain why it's OK to ignore the
  result of mc_iface_call_when_ready_int, which was a Coverity false-positive
  (smcv)

* Consider calls to be potentially-missed if they terminate for reason ERROR,
  even if we're the actor, because that's what happens in Gabble >= 0.8.4
  if the streaming implementation (i.e. telepathy-farsight) discovers that
  none of the candidates work and calls Error() (smcv)

* Fix a race condition in the test account-manager/make-valid.py, which
  would sometimes incorrectly make it fail (smcv)

* Add a regression test for dispatching and requests being delayed while
  waiting for a plugin to make an asynchronous request for permission (smcv)

telepathy-mission-control 5.2.5 (2009-09-18)
============================================

The "Mornington Crescent" release.

Fixes:

* If we see too many transitions from CONNECTED to DISCONNECTED state (i.e.
  we get kicked off by the server more than 3 times in 2 minutes), stop
  reconnecting; also, don't reset the exponential backoff until we've been
  connected for 2 minutes. This avoids reconnecting in a tight loop if the
  server lets us connect, then immediately drops our connection. (smcv)

* fd.o#23935: call AddRequest if appropriate even on clients that match only
  channels with Requested=true, and use requested channels' complete
  properties in preference to the properties that were requested (smcv)

* Make signed values in .client files work instead of g_critical'ing (smcv)

* Add MCD_CHANNEL_STATUS_ABORTED to avoid sometimes counting aborted channels
  in mcd_dispatcher_get_channel_type_usage (mardy)

* Fix some minor memory leaks (smcv)

telepathy-mission-control 5.2.4 (2009-09-16)
============================================

The "High Barnet" release.

Fixes:

* Deal with the user's alias in a race-free way by calling GetAliases as well
  as binding to the AliasesChanged signal (smcv/mardy)

* Fix a reference leak when recovering from a connection being cancelled before
  RequestConnection has returned (smcv)

* Stop abusing glibc internal feature-test macros (smcv)

* Fix some race conditions in the regression tests (smcv)

telepathy-mission-control 5.2.3 (2009-09-10)
============================================

The "Morden, via Bank" release.

Fixes:

* fd.o #23807: even if someone without gconf headers makes the tarball, ship
  the necessary files so people with gconf headers can compile it (smcv)

* Resync what's in git with what's in tarball releases: remove some unused
  source files from git, add more support files to tarballs, and don't
  distribute any generated source in tarballs (smcv)

telepathy-mission-control 5.2.2 (2009-09-07)
============================================

The "St. Pancreas" release.

Enhancements:

* Better debug output under various circumstances, including outputting the
  version number on startup (smcv)

* Add the concept of always-on accounts, which can't be disabled or otherwise
  put offline (smcv)

* Try to set initial presence before calling Connect (smcv)

Fixes:

* fd.o #23778: make sure account details (including passwords) are stored in
  directories readable only by the user. Distributions wanting this fix
  without any other changes should cherry-pick git commits 16c55625,
  2a42ac03, c16f40ec and 3558c3b2 (smcv)

* Replace deprecated g_strcasecmp with g_ascii_strcasecmp (Jonh Wendell)

* Don't close old-style Tubes channels if they can't be dispatched, since
  that closes the new-style StreamTube/DBusTube channels that everyone
  should be using, as a side-effect (smcv)

telepathy-mission-control 5.2.1 (2009-08-26)
============================================

The "secret cake" release.

Enhancements:

* Add change notification in the Compat interface (mardy)

* Make the low-memory check overridable by subclasses (smcv)

* Complete online requests with error on DISCONNECTED -> DISCONNECTED
  transition (i.e. cancellation) (mardy)

* Set the initial connection status reason to Requested, since None_Specified
  usually means "generic error" (mardy)

Fixes:

* fd.o #23509: wait for observers and approvers to finish initial processing
  before letting Claim() finish (smcv)

* Don't allow transition from one transport to another (smcv)

* If a transport plugin stops a connection before RequestConnection has even
  returned, remember that, and disconnect that Connection later when it does
  turn up (smcv)

telepathy-mission-control 5.2.0 (2009-07-30)
============================================

The "too many timeouts, reducing the advertised EDNS UDP packet size to 512
octets" release.

This is the first release of a new 5.2.x stable branch, available in git as
the 'telepathy-mission-control-5.2' branch. Feature development will continue
in the 5.3.x series.

Enhancements:

* Update ContactCapabilities draft to the version in telepathy-spec 0.17.26
  (smcv)

* Add regression tests for Capabilities, and for ContactCapabilities draft 1
  (smcv)

Fixes:

* McdConnection: fix a rare crash if no fallbacks for a presence are
  supported (smcv)

* libmcclient: avoid invoking callback twice if the object is already
  ready (mardy)

telepathy-mission-control 5.1.4 (2009-07-09)
============================================

The "I only came here seeking peas" release.

Dependencies:

* fd.o #22332: GConf is no longer required (if it is not available, then the
  MC 4 to MC 5 migration tool, mc-account-convert, will not be built)

Enhancements:

* fd.o #21378: support connection manager parameters whose value is a single
  byte (smcv)

* Add simple man pages for the daemon and utilities (smcv)

Fixes:

* fd.o #22670: don't assume a client has crashed just because it has lost a
  well-known name (smcv)

* Don't use the AutomaticPresence status from account configuration unless the
  presence type is an online presence (mardy)

* fd.o #22585: remove symbols from libmissioncontrol-server that collide with
  symbols in libmcclient, allowing the telepathy-mission-control daemon to be
  statically linked on platforms that don't want to support plugins (smcv)

telepathy-mission-control 5.1.3 (2009-07-01)
============================================

The "wilting" release.

Enhancements:

* Improve test coverage, including EnsureChannel (smcv)

* In tests, add the ability to test an installed MC binary (installcheck)
  (smcv)

Fixes:

* Make sure that ChannelDispatchOperations emit Finished before they are
  unreffed for the last time (smcv)

* Stop mcd_mission_abort() from implicitly closing channels, meaning that
  when Close() has an extra protocol-level meaning (for instance, when using
  an IRC proxy), we don't respond to connection loss by departing from all
  channels. Instead, explicitly close channels whenever desired (smcv)

* Add API for plugins to destroy channels, close channels with a reason,
  or "forget" (do not dispatch) channels (smcv)

* In situations where channels can't be handled, use Destroy() to terminate
  them, if available (smcv)

* In wait-for-name, initialize error properly if we can't connect to D-Bus
  (smcv)

* In tests, restructure `make check-torture` so it doesn't exceed command-line
  length limits (smcv)

* Use g_file_set_contents to overwrite files (mardy)

telepathy-mission-control 5.1.2 (2009-06-26)
============================================

The "don't cross the stream engines" release.

Dependencies:

* telepathy-glib >= 0.7.32 (or 0.7.33 if you want to run the regression tests)

Enhancements:

* Stop generating duplicate bindings in the daemon for interfaces that are
  now available in telepathy-glib 0.7.32

Fixes:

* Fix a subtle use-after-free that can crash MC if more than 4 distinct
  properties change in a 10ms interval (!)

* Make various fixes to putting accounts online:
  - ConnectAutomatically takes effect immediately
  - Fix a race between loading accounts and requesting channels
  - Never consider accounts to be Valid until they've loaded, meaning that we
    never try to put an account online before we've loaded its parameters (!)
  - Don't connect (automatically or by request) unless the account is Valid
  - Don't connect in order to satisfy a channel request unless the account is
    both Valid and Enabled
  - Allow setting RequestedPresence on disabled accounts, fixing creation of
    accounts that already have a RequestedPresence
  - Improve regression test coverage considerably
  - If an account's parameters change and it becomes Valid, consider putting it
    online
  - If an account becomes enabled after an online presence was requested, try
    to put it online

* Change the default RequestedPresence on startup from UNSET to OFFLINE

* Simplify API for low memory indication

* Delete some unnecessary code from McdMaster, and simplify some redundant code

* Forbid setting AutomaticPresence to a non-online status

* Forbid setting RequestedPresence to a status that can't be set on yourself

* Fix a memory leak and some races in the regression tests

* Turn the daemon into a convenience library so one of the tests can link it
  statically even if it's eventually going to be a shared library, fixing
  make check with --enable-plugins

telepathy-mission-control 5.1.1 (2009-06-16)
============================================

The "Beautiful And Damned" release.

Fixes:

* fd.o #22169: allowed PreferredHandler to be empty when requesting a
  channel (smcv)

* Updated code generation from telepathy-glib and followed the recommendations
  of telepathy-glib 0.7.6's NEWS, fixing some possible assertion
  failures (smcv)

* Ensured that AccountValidityChanged will be emitted if an account is added
  in an already-valid state (smcv)

* fd.o #21377: added support for 64-bit integers, doubles and object paths as
  CM parameters, did some work towards supporting bytes as CM parameters,
  and fixed serialization of large 32-bit unsigned integers and
  deserialization of integers of large magnitude (smcv)

* fd.o #21299: prevented automatic reconnection after Name_In_Use error (smcv)

* fd.o #22201: avoided rewriting accounts.cfg if nothing changed (smcv)

* Ensured that the transport was reset when a Connection disconnected (mardy)

telepathy-mission-control 5.1.0 (2009-06-05)
============================================

The "beta 75 would have been silly" release.

After months of development, this is the first numbered release of Mission
Control 5. We jumped straight to 5.1 in order to use the Linux-style odd/even
versioning seen in the other Telepathy components, so the 5.1.x development
branch will lead to the 5.2.x stable branch.

Changes since Mission Control 4 are too numerous to list here, but here are
the major architectural changes.

The proprietary MissionControl API no longer exists; the daemon is a
telepathy-spec-compliant AccountManager, and also a telepathy-spec-compliant
ChannelDispatcher. Consequences of this include:

* Clients are no longer expected to implement the ChannelHandler interface.
  Instead, they may implement the Observer, Approver and/or Handler interfaces
  specified in telepathy-spec.

* The design of channel dispatching copes better with having multiple user
  interface components installed.

* Accounts' presence, avatar and nickname are now independent (stored
  per-account), allowing for more precise control by UIs.

* Accounts no longer have to belong to a "profile", although they still can
  (albeit only by using a non-standard extension).

Accounts are now stored in a flat file, rather than by abusing GConf. The
included mc-account-convert tool might be able to convert MC 4 accounts to
the MC 5 format, if you're lucky.

libmissioncontrol-server has changed its API and ABI considerably, and is not
yet considered stable in its new form either. It is no longer installed by
default (in a normal configuration it'll just be compiled into the daemon).

libmissioncontrol (based on libtelepathy and also known as
libmissioncontrol-client) no longer exists, and has been replaced by
libmcclient (based on telepathy-glib).

Mission Control 5 is not a drop-in replacement for Mission Control 4, and
cannot be used by Mission-Control-4-based applications like Empathy 2.26
and the Maemo 4 platform. However, both versions can be installed
independently in the same directory prefix, to facilitate porting from one to
the other.

Known regressions since Mission Control 4:

* There is no gnome-keyring integration yet.
* The client and server library APIs are not considered to be stable yet.