Today I tagged and released version v0.0.1 of the project TYPO3-Analytics. After 303 days and 144 commits, 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.
Update (July 2021): The project is not active anymore.
The idea, passion, and motivation are still alive, but I won’t continue TYPO3-Analytics/Jacobine as it is right now anymore.
The project stays open-source on GitHub.
What does this version include?
13 RabbitMQ consumers 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 producers 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 it will 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
I will try to refactor some code, create unit and integration tests, try to tackle some bugs and “unused” concepts to make better use of existing functionality (e.g. RabbitMQ Dead Lettering) and to add more parameters to messages to decouple the existing consumers 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 hope to find more contributors 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, contact me via Twitter (@andygrunwald) or by email (GitHub profile).