]> git.immae.eu Git - github/shaarli/Shaarli.git/blob - doc/Development.md
Merge pull request #717 from ArthurHoaro/v0.8
[github/shaarli/Shaarli.git] / doc / Development.md
1 #Development
2 ## Guidelines
3 Please have a look at the following pages:
4 - [Contributing to Shaarli](https://github.com/shaarli/Shaarli/tree/master/CONTRIBUTING.md)[](.html)
5 - [Static analysis](Static-analysis.html) - patches should try to stick to the [PHP Standard Recommendations](http://www.php-fig.org/psr/) (PSR), especially:
6 - [PSR-1](http://www.php-fig.org/psr/psr-1/) - Basic Coding Standard[](.html)
7 - [PSR-2](http://www.php-fig.org/psr/psr-2/) - Coding Style Guide[](.html)
8 - [Unit tests](Unit-tests.html)
9 - [GnuPG signature](GnuPG-signature.html) for tags/releases
10
11 ## Continuous integration tools
12 ### Local development
13 A [`Makefile`](https://github.com/shaarli/Shaarli/blob/master/Makefile) is available to perform project-related operations:[](.html)
14 - Documentation - generate a local HTML copy of the GitHub wiki
15 - [Static analysis](Static-analysis.html) - check that the code is compliant to PHP conventions
16 - [Unit tests](Unit-tests.html) - ensure there are no regressions introduced by new commits
17
18 ### Automatic builds
19 [Travis CI](http://docs.travis-ci.com/) is a Continuous Integration build server, that runs a build:[](.html)
20 - each time a commit is merged to the mainline (`master` branch)
21 - each time a Pull Request is submitted or updated
22
23 A build is composed of several jobs: one for each supported PHP version (see [Server requirements](Server-requirements.html)).
24
25 Each build job:
26 - updates Composer
27 - installs 3rd-party test dependencies with Composer
28 - runs [Unit tests](Unit-tests.html)
29
30 After all jobs have finished, Travis returns the results to GitHub:
31 - a status icon represents the result for the `master` branch: [![(https://api.travis-ci.org/shaarli/Shaarli.svg)](https://travis-ci.org/shaarli/Shaarli)]((https://api.travis-ci.org/shaarli/Shaarli.svg)](https://travis-ci.org/shaarli/Shaarli).html)
32 - Pull Requests are updated with the Travis result
33 - Green: all tests have passed
34 - Red: some tests failed
35 - Orange: tests are pending