# Specifying Travis CI versions

**URL:** <https://discourse.julialang.org/t/specifying-travis-ci-versions/7172>\
**Category:** Internals & Design\
**Tags:** package, development, travis\
**Created:** [November 19, 2017, 6:35pm UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172 "2017-11-19T18:35:33Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [November 19, 2017, 6:35pm UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/1 "2017-11-19T18:35:33Z")

</div>

How do I select which Julia version to use if it isn’t tagged? For example, if instead of using the nightly I want to use a previous Dev-version by the version number of commit.

Can one specify to checkout certain packages rather than use the default Require \to `Pkg.add`?

---

<div class="post-metadata">

**Author:** ![mauro3](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mauro3/32/292_2.png) [@mauro3](https://discourse.julialang.org/u/mauro3)\
**Post date:** [November 19, 2017, 7:07pm UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/2 "2017-11-19T19:07:54Z")

</div>

I wonder what the value is of testing against an old 0.7 commit? Do you need a feature of 0.7 but don’t want to spend time to keep your package working against the current master?

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [November 19, 2017, 7:22pm UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/3 "2017-11-19T19:22:46Z")

</div>

Valid point. There were some packages which broke after a certain commit of the master. For example, Conda is currently broken in the nightly. In an ideal situation were all packages (dependencies) can keep up with breaking changes it would be true, but sometimes there it is beneficial to develop using that intermediate stage until the dependencies catch up.

As for packages, currently this solution works in `test/runtests.jl`

```julia
Pkg.rm("C")
Pkg.rm("C")
Pkg.rm("B")
Pkg.rm("B")
Pkg.rm("A")
Pkg.rm("A")
Pkg.clone("A")
Pkg.clone("B")
Pkg.clone("C")

using C
using module

using Test

```

is there a way to indicate the version or branch rather than having to remove and clone it again?

---

<div class="post-metadata">

**Author:** ![Michael\_Eastwood](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/michael_eastwood/32/669_2.png) [@Michael\_Eastwood](https://discourse.julialang.org/u/Michael_Eastwood)\
**Post date:** [November 20, 2017, 12:03am UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/4 "2017-11-20T00:03:56Z")

</div>

`Pkg.checkout`?

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [November 20, 2017, 1:28am UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/5 "2017-11-20T01:28:24Z")

</div>

Would work if the branch is at the source project. I would prefer having the flexibility of providing my own developing fork for testing though.

---

<div class="post-metadata">

**Author:** ![vchuravy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vchuravy/32/8_2.png) [@vchuravy](https://discourse.julialang.org/u/vchuravy)\
**Post date:** [November 20, 2017, 2:03am UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/6 "2017-11-20T02:03:15Z")

</div>

You would have to build Julia on your own using the sha to checkout the specific version and the using that version of Julia to test your package.

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [November 20, 2017, 2:52am UTC](https://discourse.julialang.org/t/specifying-travis-ci-versions/7172/7 "2017-11-20T02:52:32Z")

</div>

That kinda beats the purpose of the C.I., but since it would only be temporary I think it would be alright. Thanks, y’all.
