Microsoft publiera en grande partie le code source du .NET Framework avec la sortie de Visual Studio 2008

Aujourd'hui, nous annonçons que nous publierons sous licence Shared Source "Microsoft Reference Licence" une grande partie des codes sources des composants et technologies qui constituent le .NET Framework.

Dans un premier temps, l'ensemble de classes et des bibliothèques qui sera couvert par cette publication de leur code source comprendra les bibliothèques de base (la BCL, aka Base Classe Library, qui regroupe par exemple les namespaces System, IO, Text, Collections, CodeDom, Remoting, etc...) ainsi que ASP.NET, Windows Forms et WPF (aka Windows Presentation Foundation). D'autres parties constitutives du .NET Framework seront ajoutées avec le temps.

Pour les développeurs, cela signifie d'une part qu'il sera possible d'étudier le fonctionnement des composants de base du .NET Framework, et que d'autre part, il sera possible d'utiliser ces codes sources au sein des outils de debugging intégrés à Visual Studio 2008.

Il sera donc possible d'installer ces codes sources localement sur les machines de développement pour les étudier et naviguer d'un code à l'autre, et d'autre part, il sera possible de configurer Visual Studio 2008 de façon à ce qu'il rappatrie les codes sources et fichiers de symboles (.PDB) nécessaires au sein des sessions de Debug.

Vous pouvez retrouver cette annonce sur le blog de Scott Guthrie, ainsi qu'une interview publiée sur Channel9 qui présente les différents aspects et détails liés à cette annonce.

On dirait que Shawn Burke est finalement parvenu à faire entendre sa voix ;)

[Edit 05/10/2007] : Miguel de Icaza a posté un billet dans lequel il commente cette annonce. Son billet comporte un paragraphe de "spéculations" personnelles.

A mon tour, non pas de faire des spéculations, mais de prononcer mes rêves à voix haute : Je veux croire que la publication de ces codes sources sous licence Microsoft Reference Licence soient un premier pas vers un accord de droit d'utilisation de notre propriété intellectuelle par les contributeurs du projet Mono. Clairement, c'est complètement utopique, et sans doute ingérable au niveau juridique avec ces imbrications et implications entre les différentes licences en présences qui ne sont pas toutes mutuellement solubles.

En même temps, c'est pourtant déjà bien le cas avec IronPython et le DLR, non ? Alors pourquoi n'étendrions nous pas ceci à tout le .NET Framework ?

Dernier commentaire personnel : Si vous ne l'aviez pas remarqué, ou si vous avez passé les 12, 24 ou 36 derniers mois dans une grotte, sachez qu'il se passe des choses en profondeur chez nous. Microsoft change... I luv this c0mpany ;)