Within a few hours the OpenStack Juno release will be delivered. At the moment of writing this analysis the OpenStack Activity Board shows 91,317 commits spread across 108 repositories. All of this activity was performed by close to 2,600 developers, affiliated to about 230 different organizations. In addition, around 75,000 changesets have gone through code review, submitted by 3,082 developers.
BMW (> 1,500 commits) keeps growing in the community, being the leader of the open source development process in GENIVI ecosystem, or at least to the publicly available repositories that Bitergia has had access. However, we do not find another automobile and engine manufacturing company until Ford (10 commits), with a discrete development participation. Although raising to the 5th position if counting commits from its owned subsidiary Livio Connect.
In a previous post (Commits: that metric), we were talking about all of the flavors we should take into account when measuring commits.
An example was provided and in some cases, and depending on the development policy of the project, commits ignoring merges represented around a 50% of the total activity that we can find.
CVSAnalY is one of the tools that is used as input in our dashboards. It is specialized in versioning systems, and parses the log provided by some of the most used in the open source world. It does this with the priceless help of Repository Handler, in charge of adding a transparency layer.
Its procedure is simple: CVSAnalY reads a log from SVN, CVS or Git and builds and feeds a relational database. For other distributed versioning systems, there are hooks to migrate from those, such as Mercurial or Bazaar to Git.
In order to illustrate this post, the publicly available database for the OpenStack project is used. This database is the basement of the dashboard that can be visualized at the Openstack Activity Dashboard page. Bitergia provides and daily updates this database. So, this analysis is done with dataset up to today.
Source code versioning systems are tools that help to facilitate the life of developers. Basically those are used to have a list of all of the changes in the source code and allow to navigate and recover old version of the project. Each of those changes to the source code is defined as a commit, and this may be considered as the nuclear piece of information in these systems.
And commits are nowadays considered as a “good” metric to have an initial idea of the total effort developed in a project. However, this is not as simple as it seems to be, and each versioning system and even each project with its particularities may distort this metric. So we all need to be a bit careful when raising this metric as “the most wonderful, marvelous and incredible metric in the world”.
So, in first place, what kind of information can we find in a commit? Typically commits provide information about the time when the change took place, files that were affected by that change, added, removed or modified lines, the author of the commit, and maybe extra information such as the reviewer, specific acknowledgements and others. The following example shows information that can be found in a specific commit (using the git log command):
Author: Daniel Izquierdo <email@example.com>
Date: Fri Mar 7 13:32:25 2014 +0100
Add turnover in ITS and SCR
diff –git a/vizGrimoireJS/alerts.py b/vizGrimoireJS/alerts.py
index ff5a703..12b1de6 100755
@@ -82,15 +82,29 @@ if __name__ == ‘__main__’:
However, the definition of commit is really specific of the versioning system. Just an example, a commit in CVS is a modification in one file. So N modified files, implies, N commits. But, on the other hand, Subversion or Git may have several “touched” files in the same commit. Are comparable projects at the level of commits using different versioning system? The answer is probably that they are not comparable simply counting commits. You need a bit more advanced way to count them.
Havana release is scheduled on the 17th of October. In just a few hours the new version of OpenStack will be ready. As we did for other releases, we at Bitergia have prepared the Havana development dashboard for showing and exploring the main development parameters of the project during this cycle. The first headline that becomes apparent by browsing it is that during these last six months, the OpenStack community has experienced the most active period in their history, and still keeps growing and growing.
The analysis of the OpenStack community is one of the challenging activities on which Bitergia is working. OpenStack enjoys a very lively community, with interest from many companies and a lot of people from around the globe. But, let’s go to the numbers so you can have a better picture:
- 1,263 developers, with close to 200 of them contributing every week
- 3,392 participants in the ticketing system
- 1,472 members in the mailing lists
- More than 12,000 people from 130 different countries registered in the OpenStack Foundation.
Some other amazing numbers: annual increase of almost 65% in commits, 55% in Launchpad activity, and an incredible 639% in mailing lists. It is clear that once mailing lists were ready, a huge amount of people started to use them.
On February 3rd, I was delivering a lightning talk at FOSDEM, presenting MetricsGrimoire and vizGrimoire as free software tools to get some analytics from the software repositories of your preferred project. The talk was titled “Do you want to measure your project?”, as it was focused on explaining the capabilities of these tools for analyzing a project, and on how they can be easily used for that.
[Update (2013.03.01): New post in the series: Reviewers and companies in the WebKit project]
Today Bitergia presents the first of a series on analytics for the WebKit project. After the preview we published some weeks ago, we finally have more detailed and accurate numbers about the evolution of the project. In this case, we’re presenting a report on the activity of the companies contributing to WebKit based on the analysis of reviewed commits.
Some interesting results are the share of contributions by the two main companies behind the project (Apple and Google), and how it has evolved from a project clearly driven by Apple, before 2009, to the current situation, with Google leading the top contributors table, and both Apple and Google being almost equal in contribution share over the whole history of the project. During the last years, it is also noteworthy how the diversity of the project is increasing, with new players starting to show a significant activity.
[Update: we have published a more accurate and validated report, please have a look at it]
WebKit is a well known free, open source software project which is producing the core of several of the most popular web browsers. Several companies (and other actors) are collaborating together to build this component, which is key to many of them. The two main players in WebKit are Apple and Google, but it is less known that there are many others participating actively as well. They are far away from the big players, but all together account for a sizable fraction of the total activity.