Microsoft is promising not to pursue patent claims against Linux and open-source software using the open-source implementation of .NET, Project Mono.
The company has said that third party implementations of its C# and the Common Language Infrastructure (CLI) - a language runtime - will be made available under its Community Promise. The promise will cover ECMA specifications 334 and 335 - C# and CLI respectively.
That means developers, users and distributors of Mono, which implements the C# and CLI specs, should be protected against possible action by Microsoft.
There was no word on why Microsoft has made the promise, but it's a sudden move likely designed to limit damage between Microsoft and the community over Mono.
GNU father and open-source evangelist Richard Stallman last week stuck his finger in the sensitive part of Microsoft's relationship with open source when he claimed Debian's inclusion of Mono in the "default" installation posed a dangerous risk to the open-source movement. Stallman warned Microsoft might evoke software patents used in C# through legal action to drive independent implementations of the language underground.
Such was the impact that Debian denied Stallman's claims and the cuddly Ubuntu - which is based on Debian - issued a calming statement.
The Ubuntu Technical Board issued a position statement that said it saw no reason to exclude Mono or applications based on it from the default Ubuntu installation or the Ubuntu archive.
Technical Board representative Scott James Remnant has said: "It is common practice in the software industry to register patents as protection against litigation, rather than as an intent to litigate. Thus mere existence of a patent, without a claim of infringement, is not sufficient reason to warrant exclusion from the Ubuntu Project."
Meanwhile, Microsoft stressed that third parties are free to implement technologies under the Community Promise without signing a license.
"The Community Promise is an excellent vehicle and, in this situation, ensures the best balance of interoperability and flexibility for developers," corporate vice president for the .Net developer platform Scott Guthrie has said.
The Community Promise covers developers, distributors, and users that make use, sell, import, or distribute technologies that use Microsoft owned or claimed patents "under any type of development or distribution model, including open-source licensing models such as the LGPL or GPL." Until now, Community Promise has only covered Microsoft's HealthVault Service specification, UI Automation 1.0, XPS specification 1.0, and the VBA Language specification.
The important part in all of these statements are the qualifications. Notably, neither Debian or Ubuntu has denied the existence of patents or the presence of Mono as a default piece of software in their Linuxes. Rather, they have sought to play down the threat Mono posed.
Increasingly, it's looking like Microsoft's promise and Stallman's apparently random outburst are due to some industry politicking based on the sudden realization by somebody that Mono users were not covered under Microsoft's controversial patent indemnification covenant with Novell from November 2006.
Mono is owned and funded by Novell, and the agreement with Microsoft promised to protect Novell SuSE Linux users and developers against action from Microsoft over any patent claims against Linux. In a separate deal, Microsoft has also covered users of Novell's Moonlight, the open-source implementation of Microsoft's Silverlight browser-based media player.
Mono is important to Microsoft. The project's very existence helps show the world that Microsoft is willing to not just permit but also to work with open-source on independent implementations of .NET. Also, the company sees implementations of .NET and runtimes like Silverlight as helping seed the market for its own closed versions of .NET and runtimes. ®