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