* Release 0.90
[platform/upstream/dbus.git] / NEWS
1 D-Bus 0.90 (17 July 2006)
2 - API/ABI freeze for 1.0
3 - Bindings are now split out into seperate packages
4 - ListActivatableNames added as a method on the bus
5 - Removed deprecated dbus_connection_disconnect (use dbus_connection_close)
6 - Shared connections are now unreffed on disconnect
7 - Fixed pending calls for threaded enviornments
8 - Pending calls get timed out on connection disconnect
9 - dbus_connection_send_with_reply returns TRUE and a NULL pending call
10   if you call it on a connection object which has been disconnected already
11   (it returns FALSE on Out of Memory errors only)
12 - dbus-monitor now correctly catches methods, not just signals
13 - dbus-monitor now prints object paths 
14
15 D-BUS 0.62 (12 June 2006)
16 ==
17 - Doc fixes
18 - Added support for all data-types for the dbus tools
19 - Fixed eavesdropping on method calls (dbus-monitor)
20 - Fixed silent dropping of method calls with interface=NULL
21 - Fixed console ownership problems in Solaris
22 - Fixed installation of dbus-signature.h and #include it in dbus/dbus.h
23 - Flush the user database cache on config reload
24 - GLib bindings:
25   - Fix memory leaks
26   - Fix properties in DBusGProxy so that they can be given in any
27     order
28   - Added lots of assertions to ensure correct use
29   - Remove duplicated code
30   - Fix static string pointer uses in GPtrArray-based collections
31 - Python bindings:
32   - Remove reference to sys/cdefs.h
33 - Qt4 bindings:
34   - Code reorganized
35   - Added the dbusidl2cpp, dbuscpp2xml and dbus tools
36   - Added example programs (ping-pong, complex ping-pong, listnames, chat)
37   - Updated selftests
38   - Fixed compilation and .moc- and .ui-file processing and cleaning
39   - Made central classes derive from QObject
40   - Enhance error reporting
41   - Many bugfixes
42 - Mono bindings:
43   - Minor bugfixes
44
45 D-BUS 0.61 (24 Febuary 2006)
46 ==
47 - Documentation all around
48 - dbus-launch now produces correct sh and csh syntax
49 - Nested arrays now work correctly
50 - GLib bindings:
51   - Inheriting from DBusGProxy is now possible
52   - GPtrArrays can now be marshalled
53   - org.freedesktop.DBus.GLib.ClientCSymbol annotation added
54   - Openning connections to arbitrary addresses now supported
55 - Python bindings:
56   - sender_keyword and path_keyword keywords added to signal listener API
57   - Byte types now demarshal to unsigned char
58   - calling methods now do the correct thing
59 - Qt bindings:
60   - both Qt3 and Qt4 bindings can be built at the same time
61   - Use the standard org.freedesktop.DBus.Method.NoReply annotation 
62     for the "async" calls instead of creating one for us.
63 - Mono bindings:
64   - 64bit arch fixes
65 - Massive bug fixing all around
66
67 D-BUS 0.60 (30 November 2005)
68 ==
69
70 - major ABI/API changes - sonames changed
71 - RequestName queuing behavior has changed (refer to dbus-specification)
72   - DBUS_NAME_FLAG_PROHIBIT_REPLACEMENT has been removed and
73     DBUS_NAME_FLAG_ALLOW_REPLACEMENT has been added to the flags
74 - signals emitted by the bus now show up in the introspect data
75 - auth EXTERNAL now supported on BSD varients
76 - ReleaseName method added to the bus to allow a service
77   to remove itself as owner of a bus name
78 - dbus_connection_read_write added for getting messages off the bus 
79   in the absence of a mainloop
80 - Qt4 bindings added and the Qt3 bindings have been depricated
81 - python bindings:
82   - marshal using introspect data if available
83   - better exception handling and propigation
84   - private connections are now supported
85   - UTF-8 cleanups
86   - out_signature added to method decorators for specifying
87     how the return values should be marshaled
88   - sender_keyword added to method decorators for specifying
89     and argument to provide the unique name of the method caller
90   - async_callbacks added to method decorators 
91   - multiple inheritance of classes now supported 
92 - GLib bindings:
93   - respect NoReply annotations
94   - dbus_g_method_return_get_reply and dbus_g_method_return_send_reply
95     added to the lowlevel code for use when the dbus-glib marshalling
96     code is not adiquate
97 - numerous bug fixes all around
98
99 D-BUS 0.50 (06 September 2005)
100 ===
101 This is a minor release from 0.36.2.  The series number has changed 
102 not because of any technical reasons but as an indication that we
103 are moving closer to 1.0.  It is hoped that this will be the last
104 series to see major changes, most of which will be isolated to the
105 GLib and Python bindings, as we transition to concentrate more on
106 bug busting and code auditing.
107
108 - D-Bus builds on the Cygwin platform
109 - Makefile cleanups
110 - Various bug fixes
111 - Optimization of the dbus object tree 
112 - Memleaks and GIL crasher bugs have been fixed in the Python bindings
113
114 D-BUS 0.36.2 (29 August 2005)
115 ===
116 - Security: Restrict other users from connecting to another users 
117   session bus
118
119 D-BUS 0.36.1 (24 August 2005)
120 ===
121 - Python Bindings:
122   - fixed to work with hal-device-manager
123   - For 64bit builds everything is installed to lib64/python2.4/
124     since Python can't handle multilib
125
126 D-BUS 0.36 (23 August 2005)
127 ===
128 - Maximum sized of cached messages have been reduced to 10K
129 - Match rules now allow matching on arguments inside the message
130 - introspect.xsl XSLT style sheet added for formatting introspection
131   data into XHTML for analysis
132 - Python bindings:
133   - now have working type objects for explicit
134     typecasting
135   - Variant type has been added
136   - Dictionaries, Variants and Arrays can all be passed the signiture or
137     type(s) of their children
138   - the optional timeout= keyword has been added when making method calls
139   - match on args has been implemented
140   - a .pth file has been added for dealing with libraries and python files
141     being in different directories such as in 64bit installs
142   - various bug fixes
143 - GLib bindings:
144   - deeply recursive types now supported
145   - many symbols are no longer exported as part of the public API
146   - various memleak and other bug fixes
147
148 D-BUS 0.35.2 (17 July 2005)
149 ===
150 - Rename Unix Security Context to SELinux Security Context in API
151 - Fixed more dist errors that distcheck didn't pick up on
152 - Fixed various bugs in the python bindings that prevented them from working
153
154 D-BUS 0.35.1 (16 July 2005)
155 ===
156 - Fixed dist error where python/dbus_bindings.pxd was being shipped 
157   instead of dbus_bindings.pxd.in
158 - Use this instead of the 0.35 tarball 
159
160 D-BUS 0.35 (15 July 2005)
161 ===
162 - --with-dbus-user added to the configure scripts for configuring the 
163   user the system bus runs on
164 - --with-console-auth-dir added to configure scripts for configuring the
165   directory to look in for console user locks
166 - service files for auto-starting D-Bus services now has the ability to pass
167   in command line arguments to the executable
168 - Huge auto-start bug squashed which caused some services not to start when
169   requested in rapid succession
170 - SE-Linux security contexts can now be appended to messages for inspection
171   by services that enforce their own security policies
172 - Colin says the GLib binding are ready for general consumption
173 - New GLib tutorial
174 - New GLib example code
175 - Python bindings are now version (0,42,0)
176 - Python bindings API has changed on the service side
177 - dbus.service has been split out as a seperate module
178 - dbus.service.Service is renamed to dbus.service.BusName
179 - dbus.service.Object has swapped the bus_name and object_path constructor
180   parameters to make it easier to do inheritance over the bus
181 - dbus.glib has been seperated out in order to lessen the dependency on glib
182   and to allow other mainloops to be integrated with the bindings including
183   a planned generic mainloop for non-gui apps.
184 - Python bindings now aquire the GIL when calling back into the python
185   interpreter.  Fixes crashes when using threading and other random segfaults.
186 - New Python tutorial
187 - Numerous D-Bus bug fixes all around
188
189 D-BUS 0.34 (15 June 2005)
190 ===
191 - dbus_connection_disconnect is deprecated in favor of dbus_connection_close
192 - The bus can now use D_NOTIFY (if available) to check when configuration files 
193   have changed and reload them
194 - New dbus_message_has_path/member/interface API added
195 - The Ping message from the org.freedesktop.DBus.Peer interface is now handled
196 - Complete glib bindings overhaul (and are still under construction)
197 - Tutorial now has an updated GLib section 
198 - GLib bindings can now send/receive hash tables, arrays and other complex types
199 - Python bindings overhaul (most public facing API's done)
200 - Python bindings have been split up into separate files
201 - Python added new type classes for hinting to the marshaler what type
202   to send over the wire
203 - Python bindings now have decorators for specifying exported methods and signals
204 - Numerous bug fixes
205
206 D-BUS 0.33 (25 Apr 2005)
207 ===
208
209 - downgrade requirement from GTK+-2.6 to 2.4 for building gtk components
210 - python binding API's have been overhalled to be more "pythonic" and cleaner
211 - python bindings now export dbus.version which is set to (0,40,0)
212 - python bindings now implement the org.freedesktop.DBus.Introspectable interface
213 - python binding match rules are now more flexable
214 - make check has been fixed
215 - many, many major bug fixes
216
217 D-BUS 0.32 (29 Mar 2005)
218 ===
219
220 - mono bindings now compiles correctly
221 - mono binding cleanups
222 - glib bindings generates wrappers for bus methods in dbus-glib-bindings.h
223 - glib binding cleanus
224 - users and groups can now be specified by UID and GID in config files
225 - numerous memory leak fixes
226 - various other fixes
227
228 D-BUS 0.31 (07 Mar 2005)
229 ===
230
231 - land the new message args API and recursive type system
232 - add docs and fixed Doxygen warnings throught source
233 - split out some functions not needed in libdbus to *-util.c source files
234 - take out type convienience functions
235 - libdbus now back below 150K
236 - booleans are now 32-bit instead of 8-bit
237 - specification updated
238 - grand renaming to strip out the use of "service"
239   just say "name" instead (or "bus name" when ambiguous)
240 - rename dbus-daemon-1 to dbus-daemon throughout
241 - rename activation to auto-start
242 - auto-start on by default now
243 - note that libdbus is the low-level API
244 - python bindings updated to the new API
245 - mono bindings updated to the new API
246 - add 16 bit types
247 - dictionaries are now ARRAYS of DICT_ENTRY
248 - dbus-glib-tool renamed to dbus-binding-tool
249 - massive rewrite of the glib bindings
250 - saner names for the dbus interface, object path and service defines
251 - new functions for handling type signitures
252 - bump sonames for libdbus and libdbus-glib
253 - various small fixes
254
255 D-BUS 0.23 (11 Jan 2005)
256 ===
257
258 - add setgroups() to drop supplementary groups
259 - updated SELinux support
260 - add an "at console" security policy
261 - fix a bug where org.freedesktop.DBus wasn't recognized as an existing
262   service.
263 - error out if --enable-mono is explicitly set and mono libs can't be found
264 - set the max_match_rules_per_connection limit from the config file.
265 - removed dbus_bug_get_with_g_main since it's been replaced by
266   dbus_g_bus_get
267 - fix fd leaks in socket code
268 - lots and lots of mono binding updates, including fixes to make it
269   compatible with Mono 1.1.3
270 - added --nofork option to override config file setting at runtime
271 - added support for int64 and uint64 to the python bindings
272 - lots of python binding updates
273 - config file DTD updates
274 - use SerivceOwnerChanges signal instead of ServiceCreated and
275   ServiceDeleted
276 - fixes to the authentication code
277 - new init script for Slackware
278 - print out the pid even when --fork is passed
279 - increase preallocation sizes in DBusMessage to heavily reduce
280   reallocs
281 - lots of performance enhancements
282 - lots more small bug fixes
283
284 D-BUS 0.22
285 ===
286
287 - add --reply-timeout to dbus-send
288 - fix a memleak
289 - fix Solaris/Forte build
290 - switch to AFL 2.1 rather than 2.0 to address patent termination clause 
291   concerns
292 - add SELinux support
293 - mostly repair libxml backend for config parser, still doesn't 
294   pass out of memory tests
295 - fix distcheck to include language bindings
296 - add GetConnectionUnixUser method on bus driver
297 - also for UnixProcessID
298 - lots of Python, Mono, other binding fixes
299 - change GLib bindings to not include dbus/dbus.h (fully encapsulate libdbus)
300 - pass paths as strings, not arrays of string
301 - add message signature header field
302 - cleanups to marshaling code
303 - clean up authentication code
304 - reload conf files on SIGHUP
305 - rename SERVICE/SENDER_SERVICE to DESTINATION/SENDER
306 - fix circular conf file inclusion
307 - allow empty arrays
308 - tons of other small bugfixes
309
310 D-BUS 0.21
311 ===
312
313 - implement "auto activation" flag on messages, so the destination 
314   service can be launched automatically
315 - fix a bug in custom type marshaling
316 - optimize case where multiple apps activate the same service
317   (avoid "thundering herd")
318 - add dynamic service file discovery/reloading
319 - fix a busy loop when blocking for a reply
320 - fix a 64-bit crash involving varargs
321 - fix a bus crash when processing an AcquireService
322 - allow appending TYPE_BYTE via append_args_valist
323 - fix dicts-inside-dicts
324 - enhancements to Python and Qt bindings
325
326 D-BUS 0.20
327 ===
328
329 This release lands some very large API changes and numerous bugfixes.
330 The list of changes is too large to fully document here; please refer
331 to the documentation, and message-bus-list archives.
332
333 D-BUS 0.13
334 ===
335
336 This is probably the last release before landing the large API changes
337 on the "dbus-object-names" branch.
338
339 - fix system bus to always use filesystem socket; anyone 
340   can create any abstract socket, which isn't secure 
341   since if you can crash the system bus you'd be able
342   to replace it.
343 - add DTD for configuration file
344 - improve specification a bit
345
346 D-BUS 0.12
347 ===
348
349 - fix "service messagebus status" on Red Hat
350 - fix demarshaling of DBUS_TYPE_NAMED
351 - fix "eval `dbus-launch --exit-with-session`" to exit properly
352 - fix build without --prefix
353 - useless fooling with Mono bindings
354 - useless fooling with gcj bindings
355 - fix srcdir != builddir
356 - fix various compiler warnings and other issues
357 - add get/set data to DBusMessage
358 - fix headers for C++
359 - OS X build fixes
360 - abstract domain sockets support (Linux only)
361 - add dbus-cleanup-sockets utility for people
362   not using linux
363 - be consistent about defaulting to --session/--system 
364   with command line tools
365 - merge in policies from included config files
366 - fix build on non-x86
367 - docs updates
368 - lots of other bugfixes
369
370 D-BUS 0.11
371 ===
372
373 - add --enable-docs to turn off/on the docbook stuff
374   (doesn't cover doxygen stuff yet)
375 - make people define DBUS_API_SUBJECT_TO_CHANGE
376   and read warning in README so they don't 
377   expect the API to be frozen already
378 - rename .pc files to "dbus-1.pc" instead of 
379   "dbus-1.0.pc" etc. - this will require changing 
380   pkg-config invocations
381 - some docs cleanups
382 - add man pages for all executables
383 - allow send to/from bus driver in the default system.conf
384 - fix user lookup bug
385 - implement dbus-launch to launch the session message bus
386 - fix some thread deadlocks
387 - some performance profiling/optimization
388 - add dbus_bus_activate_service() function
389 - fix some minor bugs here and there
390 - install Red Hat initscript in the right place
391
392 D-BUS 0.10
393 ===
394
395 - reversed order of args to dbus_message_new()
396 - renamed dbus_message_name_is() and some other
397   functions
398 - change DBusWatch to have dbus_watch_handle() 
399   similar to dbus_timeout_handle(), drop 
400   connection/server-specific handle routines
401 - change message serials to be unsigned
402 - implemented <allow>/<deny>/<limit> features for 
403   config file; system bus now has a deny-all policy 
404   by default.
405 - system.conf has <includedir>system.d</includedir>
406   so packages can install additions to the default 
407   policy to <allow> the messages they need. e.g.
408   CUPS might install a cups.conf - see 
409   test/data/valid-config-files/system.d/test.conf 
410   for an example.
411 - add timeouts for authentication, activation
412 - add glib-style "checks" on public API, enable 
413   those by default, disable assertions by default
414 - add GMainContext argument to GLib setup functions, 
415   can be NULL for default context. Needed for threads.
416 - add 64-bit integer type
417 - validate type of standard message header fields
418 - consider messages in the org.freedesktop.Local
419   namespace to be invalid (to avoid fake disconnect 
420   messages for example)
421 - fix assorted memory leaks and other bugs in 
422   the SHA-1 auth mechanism
423 - cache user database information (groups user is 
424   in, etc.) helps a lot with NIS
425 - always store uid_t, pid_t, gid_t in "ulong" 
426   rather than "int"
427 - implement config file settings for which 
428   users can connect
429 - SHA-1 unit test
430 - dbus-send, dbus-monitor command line utilities
431 - fixed lots of misc crashes and other bugs
432
433 D-BUS 0.9
434 ===
435
436 - implemented a test case for service activation,
437   and fixed many bugs exposed by that
438 - implemented recursive argument marshaling/demarshaling 
439   for messages, allowing multidimensional arrays
440 - fixed up integration of message dispatch with 
441   main loop by adding a callback on change of 
442   dispatch status
443 - add a pidfile feature to daemon
444 - some build fixes
445 - clean up unix domain sockets on exit
446 - add --print-address and the ability 
447   to create a random server address 
448   in a temporary directory
449
450 D-BUS 0.8
451 ===
452
453 - fix dumb bug in 0.7
454
455 D-BUS 0.7
456 ===
457
458 - implement configuration file used to control bus characteristics
459 - implement daemon mode, changing user ID, and other system
460   bus features
461 - add init scripts for systemwide bus
462 - add "make check-coverage" target to check test coverage
463 - more test suite additions
464 - many, many bugfixes
465 - many API changes/fixes
466
467 D-BUS 0.6
468 ===
469 - Vastly improved bus daemon test suite
470 - Lots of misc. bugfixes and memory leak fixes
471 - Support for marshalling key/value data
472 - Activation improvements.
473
474 D-BUS 0.5
475 ===
476
477 - Specification updates
478 - port to OS X and other BSD variants
479 - port to Solaris
480 - Partial work on cookie-based authentication
481 - Thread safety fixes
482 - Lots of misc. bugfixes
483 - Support for more array types
484 - Add data slots to DBusServer
485 - DBusString security audit fixes
486 - Fix for systems (or valgrind) with unaligned malloc blocks
487
488 D-BUS 0.4
489 ===
490
491 - Preliminary activation support.
492 - Better authentication test suite
493 - Bus test program
494 - Specification updates
495 - Thread safety
496 - Bug fixes
497
498 D-BUS 0.3
499 ===
500
501  - Preliminary limitations 
502  - Message sending works
503  - Bus client
504  - Array marshalling/demarshalling
505  - Services
506  - Better OOM handling in the bus
507  - In-proc debug transport
508  - Transport/server address support
509
510 D-BUS 0.2
511 ===
512
513  - Include test code in the tarball.
514
515 D-BUS 0.1
516 ===
517
518  - Initial release.