The basic premise of all Open Source software (Open Source being software licensed under an OSI approved license and adhering to the Open Source Definition) is that the code is ..well..open and available to all. Someone at Microsoft didn’t think that applied to them when they loaded up the Sandcastle project on Microsoft’s Codeplex site and listed in under the OSI approved Ms-PL (Microsoft Permissive License).
Simply labeling a piece of software as Open Source isn’t enough – you actually have to adhere to the terms of the license – which requires that the code be open and available to all. Sandcastle which is a documentation compiler for managed class libraries did not have source code open and available for download.
To Microsoft’s credit, when Sam Ramji who runs their Open Source Lab found out about the violation he took action rather quickly as he notes in his blog.
This is unacceptable and represents a violation of Microsoft’s Open Source policy. I take it extremely seriously.
I have directed the project to be unpublished from
Codeplex immediately, including removal of the project’s use of the
Ms-PL. If the team chooses to publish the source code and follow
Microsoft policy, then the project may be re-published in the future.
If not, we will remove all references to Sandcastle from Codeplex.I apologize to the OSI on behalf of Microsoft for this mistake.
While I applaud Ramji’s quick actions – just to argue Devil’s Advocate – I’ve seen plenty of projects on SourceForge, Google Code and other places that were set to be licensed under an OSI approved Open Source license that did not have code available. Typically those are startup/early phase projects where they are soliciting interest and don’t actually have code available. That wasn’t quite the case here though and Microsoft does have to prove itself to an overly suspicious Open Source community.