Skip to content
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

Run Travis CI scripts on specific versions of CMake, YARP, etc. #111

Closed
PeterBowman opened this issue Mar 30, 2017 · 10 comments
Closed

Run Travis CI scripts on specific versions of CMake, YARP, etc. #111

PeterBowman opened this issue Mar 30, 2017 · 10 comments

Comments

@PeterBowman
Copy link
Member

Several BodyYarp plugins need to run on a Debian 6.0 and a particular revision of YARP (docs). Travis builds would be more meaningful if this (quite basic) dependency was adjusted to meet a realistic scenario. Furthermore, we could benefit from caching (example: roboticslab-uc3m/project-generator@722ffc4).

@PeterBowman
Copy link
Member Author

Also, decide whether to keep running tests on Precise or switch to Trusty. Assuming the former, add a dist: precise line to the YAML file. Info:

https://blog.travis-ci.com/2017-04-17-precise-EOL

@PeterBowman
Copy link
Member Author

This issue might block roboticslab-uc3m/questions-and-answers#17.

@jgvictores
Copy link
Member

Also, decide whether to keep running tests on Precise or switch to Trusty.

No doubts here, forget Precise and move on to Trusty.

@PeterBowman
Copy link
Member Author

I was thinking more about getting as close as possible to the software ecosystem provided by Debian, which may be no longer reproducible if switching to a newer release of Ubuntu. Remember the issues we encountered during compilation of latest YARP with Debian's outdated gcc (#89).

@jgvictores
Copy link
Member

I think we're blocked by #118 here then. If hc-driver-4.9 provides good results, we can begin to forget about outdated Distro versions.

@PeterBowman
Copy link
Member Author

Just noting that Travis builds no longer run on Precise images by default, thus we are currently testing against Trusty.

@PeterBowman
Copy link
Member Author

I think we need this, regardless of the outcome of distro-related debates. Providing backwards compatibility is fine, but requires downgrading specific software to make sure that version requirements are fulfilled. For instance, how should I know that my code will work on CMake v2.8.9 (or whichever version I set in cmake_minimum_required(VERSION)) without compiling CMake itself at that specific version, re-compiling the code and running some tests? Unexpected errors may easily occur, see #26 (comment), roboticslab-uc3m/questions-and-answers#39. That's what continuous integration is meant for, compare https://travis-ci.org/robotology/ycm/builds/216344488 (robotology/ycm-cmake-modules#114).

@PeterBowman PeterBowman changed the title Run Travis CI scripts on specific versions of YARP Run Travis CI scripts on specific versions of CMake, YARP, etc. Dec 12, 2017
@PeterBowman
Copy link
Member Author

PeterBowman commented May 23, 2018

We've moved on to CMake 3.1 and dropped support for Debian 6.0 (check the old-debian-6.0 tag). I'm prone to abandon this issue, or at least move it to QA since the above considerations could be easily extended to other repositories. We are prone to require CMake 3.5, and Trusty is de facto the oldest distro supported. Therefore, working with software releases so close to the minimum requirements makes all this pondering rather pointless. Caching is already discussed at roboticslab-uc3m/questions-and-answers#48.

@PeterBowman
Copy link
Member Author

PeterBowman commented Jun 7, 2018

Travis has moved on to CMake 3.9, way ahead of current Xenial packages (3.5). We've discovered recently a nasty bug at YARP devel that prevented it from working on systems with CMake 3.5, but didn't show up in Travis builds: robotology/yarp#1727.

@PeterBowman
Copy link
Member Author

PeterBowman commented Jun 19, 2018

Therefore, working with software releases so close to the minimum requirements makes all this pondering rather pointless.

To sum up:

Closing as invalid.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants