feat: Add initial TravisCI config file#9
feat: Add initial TravisCI config file#90xazure merged 6 commits into0xazure:masterfrom seanprashad:issue-3
Conversation
This initial configuration supports stable, beta, and nightly versions of Rust with failures allowed for nightly. In addition, it also supports caching Cargo dependencies, as well as linting and tests. Fixes #3
|
@0xazure The builds won't pass as the current configuration fails if there are errors reported by Clippy. Should we pursue this route, or wait for #5 to land? |
0xazure
left a comment
There was a problem hiding this comment.
@seanprashad thanks for taking the time to configure Travis!
I'm fine with incorporating this change before a fix for #5 lands, it's not the end of the world if a few Travis builds fail. Ideally #5 will get fixed soon and it won't be an issue.
It would be really great if we could include Windows as an operating system target for TravisCI builds too in addition to linux. I feel pretty confident that if it works on linux it works on macOS so I don't think we need all 3, but making sure we support Windows would be a really great addition.
I took a look at the output produced by Travis for the build and saw that it still tried to run cargo test even after the clippy lints had failed. Is this desired behaviour? On one hand, the builds will take longer to run if clippy fails and it continues on to the tests. On the other, Travis would report more failures at once which might be more useful to contributors.
I also made a few inline comments; in particular we need to discuss caching on Travis and how it might impact build times.
Thanks again, really looking forward to getting this merged 👍
As caching target and ~/.cargo/registry accumulates a lot of dead weight, removing these will speed up the build significantly. Reference: https://levans.fr/rust_travis_cache.html
|
Thanks very much @seanprashad ✨ |
Fixes #3: Integrate TravisCI for fast feedback cycles
This initial Travis configuration supports stable, beta, and nightly versions of Rust with failures allowed for nightly.
In addition, it also supports caching Cargo dependencies, as well as linting and tests.