Download the PHP package mrimann/como without Composer

On this page you can find all versions of the php package mrimann/como. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package como

Why?

It started as a fun-project - and still is: One day we discussed at internezzo how we can give away an award to our employees for e.g. "the committer of the month" (hence the name "CoMo").

CoMo fetches the meta data of commits from Git repositories, stores them in the database, aggregates them and renders some stats per person (this part and some trending stuff will be added soon).

The main screen looks like this:

Screenshot of CoMo in action

The stats can be integrated in a radiator screen within one's office to publicly promote the most active employee. To show different tool's output and "flip" through those pages one after each other, we've additionally built a small wrapper called "radiate"

But it goes even further: There's a command controller that can be run e.g. once a day to fetch a list of all repositories from a remote server via the Gitweb frontend. This eases it a lot for us as newly added repositories will be detected automatically by CoMo.

Regarding the repositories: Remote repositories will be cloned the first time, then just the changes will be pulled down to the local clone to save bandwith and processing time. For repos that are located locally (URL begins with file://), no clone is made, their log get's directly read from the original repo location.

Does it make sense?

Well, basically one can create a ton of smallish commits and he'll be the winner every month. That's true and of course a fact. CoMo is really more about the fun. But if you and your team is running via a code-review system (e.g. Gerrit) before committing to your master branch, the number of "merged-to-master"-changes get's more relevant of course (and you'll directly see those black sheeps that try to cheat with small commits)

Feature list

Configuration options

Getting it set-up

To get the system up and running, of course you need to have a TYPO3 Flow setup and install this package into it (it's on packagist as mrimann/como. Then you need to execute the following commands on the commandline - or even better run them via crontab to let the system do the work on it's own:

Adding new repositories

A list of repositories to monitor is kept in the database. If you run a server that hosts your Git repositories and have a Gitweb-Frontend installed, CoMo can actually get a list of all repos e.g. once daily and automatically add new repositories that have been created so they get monitored, too.

./flow help repodetectorgitweb:fetchrepos

This will show you all the options on how to use this command.

Processing the data

There are two commands that do the whole data-processing-stuff. Just execute the following two commands to get stuff processed:

./flow metadataextractor:processrepositories
./flow dataaggregator:processcommits

Electing the Coder of the Month

Based on the now processed (aggregated) data, CoMo can now elect the Coder of the Month if you execute the following command:

./flow election:electlastmonth

This will elect the coder of the month for the last calendar month (since the current month is not over yet, it can't be elected yet).

How to contribute?

Feel free to file new issues if you find a problem or to propose a new feature. If you want to contribute your time and submit a code change, I'm very eager to look at your pull request!

In case you want to discuss a new feature with me, just send me an e-mail.

Want to make me happy?

Here's a list of things to make me happy and that will keep me doing stuff like this in the future :-)

License

Licensed under the permissive MIT license - have fun with it!


All versions of como with dependencies

PHP Build Version
Package Version
Requires typo3/flow Version 2.0.*
typo3/swiftmailer Version 4.1.*
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package mrimann/como contains the following files

Loading the files please wait ...