Main Page DBusSharp

From NDesk

(Difference between revisions)
Jump to: navigation, search
Revision as of 01:10, 3 September 2006 (edit)
Alp (Talk | contribs)

← Previous diff
Revision as of 01:13, 3 September 2006 (edit) (undo)
Alp (Talk | contribs)

Next diff →
Line 33: Line 33:
* Finalize public API with input from .NET remoting and DBus experts * Finalize public API with input from .NET remoting and DBus experts
* Run final API through fxcop, gendarme etc. * Run final API through fxcop, gendarme etc.
-* Old Mono compatibility layer to replace broken unix sockets on pre-1.1.17 releases+* Complete GLib main loop integration API
==== Tasks towards a 1.0 release ==== ==== Tasks towards a 1.0 release ====
 +* Build system, versioning and packaging considerations
 +* Old Mono compatibility layer to replace broken unix sockets on pre-1.1.17 releases
* Optimize low hanging fruit like marshaling arrays and collections of primitives * Optimize low hanging fruit like marshaling arrays and collections of primitives
* Optimize marshaling of entirely blittable structures * Optimize marshaling of entirely blittable structures

Revision as of 01:13, 3 September 2006

dbus-sharp is a C# implementation of D-Bus. It's also known as "managed DBus" to avoid confusion with existing bindings (which wrap libdbus).

D-Bus is an inter-process communication framework that lets applications interface with the system event bus as well as allowing them to talk to one another in a peer-to-peer configuration.

Contents

Status

This is currently at an early stage of development.

However it is hoped that it will soon provide a tested, high-performance bridge to and from all systems that are exposed via D-Bus, regardless of programming language, UI toolkit or license.

The code is a clean-room implementation based on the D-Bus Specification Version 0.11 and study of the wire protocol of existing tools.

It aims for compatibility with Mono and Microsoft .NET frameworks supporting the 2.0 profile. Backward compatibility with 1.0 will not be a consideration.

Note that the UNIX transport requires changes made to the runtime and class libraries that are only available in Mono svn as of August 21 '06. See Mono bug #79084 and svn revisions r63823 and r63824. These modifications add support for the UNIX domain socket abstract namespace. Mono 1.1.17 is the first release to include the required fixes.

Tasks remaining

Updated Sunday September '03 2006

Tasks towards a pre-1.0 preview release

  • Fix remaining obscure object mapping and transport bugs
  • Finalize public API with input from .NET remoting and DBus experts
  • Run final API through fxcop, gendarme etc.
  • Complete GLib main loop integration API

Tasks towards a 1.0 release

  • Build system, versioning and packaging considerations
  • Old Mono compatibility layer to replace broken unix sockets on pre-1.1.17 releases
  • Optimize low hanging fruit like marshaling arrays and collections of primitives
  • Optimize marshaling of entirely blittable structures
  • Built-in non-unix transports (tcp etc.)
  • More?

Tasks for 1.1

  • Optimize marshaling of structures which are partially blittable
  • Clever optimizations (scatter gather IO etc.)
  • Customizable object mapping based on constraints and a regular-expression style mapper

Download

git-clone git://git.ndesk.org/pub/scm/dbus-sharp

There are no releases yet, and the API is not stable. In particular, please don't even think about checking this into your cvs/svn repository, bundling it with your program or packaging it for your distribution yet!

There is also a module which provides GLib integration as an optional extra:

git-clone git://git.ndesk.org/pub/scm/dbus-sharp-glib

Retrieved from "http://ndesk.org/DBusSharp"