Today i tagged and released version v0.0.1 of the project TYPO3-Analytics. After 303 days and 144 commits later, i decided to make a “cut” and start a new version.

This version is a first (workable as far as I know) “proof of concept” for a repository mining platform to produce (community) metrics of various systems. The first example system is TYPO3.

What does this version include?

13 RabbitMQ consumer written in PHP:

  • Download a git resource
  • Download an HTTP resource
  • Extract a tar.gz archive
  • Crawl a Gerrit server
  • Crawl a single Gerrit project
  • Crawl a Gitweb site
  • Crawl an NNTP server
  • Crawl a single NNTP group
  • Analyze the filesize of a file
  • Analyze a VCS repository via CVSAnaly
  • Analyze PHP source code via PHPLoc
  • Analyze PHP source code via pDepend
  • Analyze used programming languages via GitHub linguist

4 RabbitMQ producer written in PHP:

  • Messages to crawl a Gerrit code review system
  • Messages to download TYPO3 releases from get.typo3.org
  • Messages to crawl a Gitweb site
  • Messages to crawl an NNTP server

This release can be downloaded from github: v0.0.1: Release of version 0.0.1

What will be tackled in the next version?

There is no concrete roadmap for the next version(s). And I do not know which version number will it be. Maybe a new minor, perhaps a new major version. The next version of TYPO3-Analytics will focus on:

  • code quality
  • testing
  • stability
  • flexibility
  • documentation

This means that I try to refactor some code, create unit and integration tests, try to tackle some bugs and “unused” concepts to make a better use of existing functionality (e.g. RabbitMQ Dead Lettering) and to add more parameter to messages to decouple the existing consumer from the proof of concept TYPO3.

Furthermore, I want to write more documentation and some blog posts about the architecture and concept of this project. I got the hope to find more contributor or to find more people who are interested in it. Maybe it will help. We will see.

If you want to contribute and you do not know how just contact me via Twitter (@andygrunwald) or by e-mail (github profile).