The previous commit was merged somewhat prematurely, and fixed the
coverage on Travis by limiting `kcov` to a single process.
The previous commit also pins to a specific branch, which was not
necessary to fix this issue, but is a good idea anyway to prevent
bad commits on kcov's master branch from breaking PyO3's build.
The `-c example-path/tox.init` parameter will read the tox.ini from the
provided location and also set `workdir` and `toxinidir` to the
directory of the passed tox.ini
Previously, when only --workdir was passed, tox read the root `tox.ini`,
with the effect that tox was never run on the projects in `examples/`.
This is really a test module, but the Rust convention is to put
something like this under examples/, and when it lands, we can take
advantage of "Project-based Examples for Cargo Projects" - RFC link
at https://github.com/rust-lang/rfcs/pull/2517
* Use Travis-CI build matrix to setup environment
* Setup Travis cache
* Use `sccache` to cache compiled artifacts
* Use `setup.sh` script to setup Travis-CI
* Add more tests to `ci/travis` to lighten `.travis.yml`
* Use `script` deployment to run `kcov` in Travis-CI
* Export `RUSTC_WRAPPER` in the Travis configuration directly
* Fix wrong Python `3.7` version in Travis configuration
* Fix `ci/travis/cover.sh`
* Prevent Travis-CI from cleaning build artifacts
* Recompile `kcov` only when needed in Travis-CI
* Collect coverage in parallel
* Add github-pages deployment script