Local development

A Makefile is available to perform project-related operations: - Documentation - generate a local HTML copy of the GitHub wiki - Static analysis - check that the code is compliant to PHP conventions - Unit tests - ensure there are no regressions introduced by new commits

Automatic builds

Travis CI is a Continuous Integration build server, that runs a build: - each time a commit is merged to the mainline (master branch) - each time a Pull Request is submitted or updated

A build is composed of several jobs: one for each supported PHP version (see Server requirements).

Each build job: - updates Composer - installs 3rd-party test dependencies with Composer - runs Unit tests

After all jobs have finished, Travis returns the results to GitHub: - a status icon represents the result for the master branch: - Pull Requests are updated with the Travis result - Green: all tests have passed - Red: some tests failed - Orange: tests are pending