Microsoft this week released a portion of its source code through an open-source license, posting the code on SourceForge, an online source-code repository, in its most high-profile code disclosure ever.
The move is designed to help the company improve the toolset’s documentation and to allow the open-source community to find the bugs in the product, the company said.
The internal toolset is known by the acronym WiX, which stands for Windows Installer XML. The software is for developers to build Windows installation packages from XML source code for Windows 2000 and Windows NT.
Microsoft Release Expected
The move by Redmond was anticipated. “Microsoft remains committed to enabling software developers to create the applications and services that will shape the future of computing,” Microsoft chairman and chief software architect Bill Gates said late last month at a developer conference in San Francisco.
Pressure to release the toolset has been building internally at the company for some time as the software giant nears its 30th anniversary of operations.
A Microsoft employee, Rob Mensching, lobbied the company to release WiX, which is now the first project from the software developer to be released through the Common Public License scheme. The CPL was first conceived by IBM as a new version of the older IBM Public License (IPL). The CPL was approved by the Open Source Initiative (OPI) in 2001.
The software toolset is commonly used by developers who are working on projects for the msn.com network, as well as Windows Messenger, Virtual PC, Office SQL Server and BizTalk.
The company says the software is targeted toward developer teams of 10 or more. It is designed to help teams build on the technology but retain proprietary rights to their own creations.
Compiling XML Source into Object Files
The toolset is a Beta 2 release and includes a lib tool, a linker and a decompiler. The compiler is used to compile XML source code into object files that have references to symbols, as well as symbols themselves. The linker feeds to several object files and connects the references in the object files to the correct symbols in other object files. This linker also packages the software’s binaries properly and then creates the final product: the MSM or MSI file.
The optional lib tool is used by developers to integrate multiple object files into libraries.
Documentation for the project is not yet complete, but company executives expect the release to the open-source repository to help solve that problem.
Improving Relations with Open Source
The company hopes the release will improve its relationship with open-source developers, even though Microsoft is continuing international litigation against Linux developer Lindows, alleging trademark infringement. That company is even being forced to change its name overseas due to an ongoing onslaught of lawsuits.
Although its latest move is generating a lot of publicity, Microsoft has, in fact, released portions of its code in the past. More than 25 percent of SourceForge projects are Microsoft-related.
“The developer community is the catalyst,” said Gates. The release, however, does not presage on era in which Microsoft will release all of its code to the open-source community. Projects like the Yukon database, update services and Xbox will continue to keep their code close to their vest, so to speak.