开源 .NET 一年后,ASP.NET 贡献情况分析

jopen 9年前

之前的文章我们讨论了微软开源 .NET 框架核心部分后一年的社区的贡献程度。本文要继续继续分析这个问题,但是主要关注的是 ASP.NET 生态圈下的项目:

  • MVC - 构建动态 Web 网站的 模型-视图-控制器 框架,包括合并 MVC,Web API 和 Web Pages w/ Razor。

  • DNX - DNX (一个 .NET 执行环境) 包括启动和运行应用所需要的代码,包括编译系统,SDK 工具和原生 CLR hosts。

  • EntityFramework - 微软为 .NET 新应用推荐的数据访问技术

  • KestrelHttpServer - ASP.NET 5 基于 libuv 的 Web 服务器

方法论

在上一篇文章把 issues/PRs 创建者分为项目拥有者,协作者和社区成员。但是这会有一些质疑,有一些协作者并不是微软员工。

所以,决定分为以下两种角色:

  • 微软

  • 社区

这是可行的,因为所有微软员工都会在 GitHub 个人信息里面标记为微软员工,比如:

开源 .NET 一年后,ASP.NET 贡献情况分析

结果

经过这个调查分析,“issues”超过 60% 是社区成员创建的,合并的“Pull Requests”有超过 30% 是社区成员完成的。但是,这个数据平均值已经被 EntityFramework 项目变得有点不真实,因为 EntityFramework 里面微软员工完成合并的 PRs 比社区成员的多太多,如果忽略这个项目,社区成员完成的 PRs 数可以达到 44%

Issues 创建 (2013 年 11 月 - 2015 年 12 月)

Project Microsoft Community Total
aspnet/MVC 716 1380 2096
aspnet/dnx 897 1206 2103
aspnet/EntityFramework 1066 1427 2493
aspnet/KestrelHttpServer 89 176 265
Total 2768 4189 6957

合并的 Pull Requests (2013 年 11 月 - 2015 年 12 月)

Project Microsoft Community Total
aspnet/MVC 385 228 613
aspnet/dnx 406 368 774
aspnet/EntityFramework 937 225 1162
aspnet/KestrelHttpServer 69 88 157
Total 1798 909 2706

注意:这里包括了 Kestrel Http Server 项目,因为这是非常有趣的一个事例,当前 #1 贡献者并不是微软员工,他是 Ben Adams,在改进内存使用做了很大的贡献。

每个月创建的 Issues - By Submitter (点击查看原图)

开源 .NET 一年后,ASP.NET 贡献情况分析

每个月合并的 Pull Request  - By Submitter (点击查看原图)

开源 .NET 一年后,ASP.NET 贡献情况分析

人们的贡献总和

不同角色 GitHub 用户对每个项目的总贡献成都,issue 创建和 PR 合并:

Project Microsoft Community Total
aspnet/MVC 39 395 434
aspnet/dnx 46 421 467
aspnet/EntityFramework 31 570 601
aspnet/KestrelHttpServer 22 95 117
Total 138 1481 1619


FSharp

Isaac Abraham 指出了之前那篇文章的一些问题:

.NET 在一年之间开源的部分不仅仅是这么多,还有  F# 编译器和 FSharp.Core。

为了确认这个,大概浏览了一下 FSharp 库:

就像 Isaac 解释的,他们的关系是:

... visualfsharp 是微软的库 Visual F#,另一个是社区所有。前者是直接集成到 Visual Studio 的 Visual F# 工具链;后者是类似 Xamarin 的工具。这里有一个 (过时) 关系解释图,其他内容请看 http://fsharp.github.io/

FSharp - Issues 创建数 (2010 年 12 月 - 2015 年 12 月)

Project Microsoft Community Total
fsharp/fsharp 9 312 321
microsoft/visualfsharp 161 367 528
Total 170 679 849


FSharp - 合并的 Pull Requests (2011 年 5 月 - 2015 年 12 月)

Project Microsoft Community Total
fsharp/fsharp 27 134 161
microsoft/visualfsharp 36 33 69
Total 63 167 230


总结

社区越来越多的响应会促使微软开源更多的项目代码。

via mattwarren.github.io 

来自: http://www.oschina.net//news/70073/open-source-net-1-year-later-now-with-aspnet