-
Notifications
You must be signed in to change notification settings - Fork 580
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use tox #2910
Use tox #2910
Conversation
Coverage appearing at https://codecov.io/gh/coala/coala-bears/tree/c50ebe9/bears 99.9% The remaining coverage is Constants, which is only used by Having coverage at 100% isnt critical any more because of the use of per-file 100% coverage requirements. We should remove Constants. Anyway, this will be fixed by running the docs inside tox also. |
The travis failures are intentional, and will be added to "allowed failures", except for Elm and Haskell, the two languages which are supported by Travis but not yet working. Another change I'll likely try getting into this PR is adding Linux to AppVeyor, as it supports Bionic, which the apt_get factor should handle ok, and there are many more bears with OS distributed packages in bionic. |
b44ab18
to
8813076
Compare
2e149da
to
852a3b7
Compare
bb63381
to
63991bb
Compare
6b9b27c
to
2928f92
Compare
This rewrites `.ci/generate_bear_requirements.py` to inject more metadata into new file bear-metadata.yaml.
This Circle CI v1 file is no longer useful since Circle CI now requires a v2 file, which will be significantly different. Related to coala#2298
This reverts commit c77ee65. coala bears does not control the installed versions on users machines. The package.json in this repository is generated to aide installing, and is not used to build a product and is therefore not locked! CI fails when the lock is not maintained, and we have no reason to maintain a lock file. Related to coala#2508
Setting check_end_labels was created to remove the need to add copious comments in the Jinja templates. These help with Jinja2 templates, however there are other unavoidable errors with bears-travis.yml.jj2
2346c2b
to
a10afdf
Compare
This replaces Travis CI 'single image' with one VM for each set of bears with similar dependencies, using tox to select the sets. And it replaces AppVeyor CI to use FudgeCI to be a managable 'single image' VM that includes most of the dependencies needed by bears, and uses tox to select the sets of bears. The tox setup allows being used with or without --sitepackages, and the AppVeyor CI does use --sitepackages and other tricks to allow .ps1 finer control over the process of installing python dependencies. This uses tox-backticks to allow multiple selectors to be mapped to multiple tests that pytest will run. It uses pytest-cov-threshold to allow custom thresholds for each source file, allowing each job to deselect the source files that need coverage depending on the selected tests for the job.
Running of .ci/deps.coala-bears.sh was removed from tox.ini during the cleanup of coala#2910 but was necessary and the problem masked by the CI cache. Fixes coala#2937
Running of .ci/deps.coala-bears.sh was removed from tox.ini during the cleanup of coala#2910 but was necessary and the problem masked by the CI cache. Fixes coala#2937
Green builds, and lots of closes. Continues #1386 . This is a new PR because that one is so old and has some interesting implementation choices where are no longer relevant due to new approaches.
WIP as the commits need to be split up, linked to issues, etc.
A few parts of this are hopefully going to be replaced with PRs underway by other folk, otherwise I'll take over the assigned issues.
This also implements https://gitlab.com/coala/mobans/merge_requests/130 for Windows CI on both AppVeyor and Travis CI.