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