Closed
Description
I'd like to setup some infrastructure that does continuous regression testing
for incremental compilation with the purpose of discovering issues and test
cases that can then be added to Rust's regular auto-test suite. I'd like to
discuss a few things before I start implementing something.
Requirements
I imagine the basic functionality of the testing infrastructure somewhat like
this:
- There is a curated list of Rust codebases available as git repositories
- There is a tool that will regularly probe those codebase for new commits
- The tool will walk the history of a given branch of each project, compiling in
regular and in incremental mode at each step and checking that the result is
the same
(see cargo-incremental). - When there is something wrong, it should post some kind of notification
somewhere, containing enough information to reproduce the problem. - It will re-run whenever there is a new nightly version of the compiler
- The tool should run on as many platforms as possible but at least the tier 1
platforms.
Questions
I'm looking for input from people already dealing with our automation and
experience with this kind of thing.
Specifically I'd be interested in the following questions:
- Do we have (virtual) machines that could host this and that prospective
maintainers have access to? - Could some of this be hosted on travis-ci or similar services?
- Is there something in this plan that sounds like a bad idea?
- Is there some better way of achieving the given goals?
cc @rust-lang/tools @edunham @nikomatsakis