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