-
Notifications
You must be signed in to change notification settings - Fork 29
Test timings on Travis
Write a package that helps developers track how much execution time their code takes. The idea is to be able to easily produce a plot of execution time of a function in seconds, versus GitHub commit/date. Then the developer can easily see if any given commit has increased or decreased the execution time of his code.
Same for memory and disk space, for example animint::animint2dir which takes a list of ggplots and outputs a bunch of TSV files.
We could test the code on Travis after every push to GitHub, and then have a web page with the plot be updated automatically when the Travis build finishes. But it may be a bit more complicated to get meaningful timings, since I guess each Travis build machine has a different hardware configuration (CPU speed). Some ideas about how to push files from Travis to GitHub:
http://sleepycoders.blogspot.ca/2013/03/sharing-travis-ci-generated-files.html http://rmflight.github.io/posts/2014/11/travis_ci_gh_pages.html
Instead of doing the timings on a travis build machine, we could just do it on the user’s machine. Download lots of different versions of the package, and run the tests for each package version. Maybe have some integration with manual git bisect?