# Can 0.6 and 0.7 no longer coexist?

**URL:** <https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223>\
**Category:** Internals & Design\
**Created:** [October 3, 2017, 5:23pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223 "2017-10-03T17:23:07Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [October 3, 2017, 5:23pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/1 "2017-10-03T17:23:07Z")

</div>

I think there was a breaking change in 0.7 yesterday. Is that an indication that 0.6 and 0.7 cannot really coexist at this point?

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [October 3, 2017, 5:30pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/2 "2017-10-03T17:30:40Z")

</div>

What is the specific change that is causing problems? Coexistence of 0.6 and 0.7 is not a priority since 1.0 will be 0.7 without the deprecations and as soon as 1.0 is ready we will strongly encourage everyone to upgrade to 1.0 (via 0.7 so they get deprecation warnings when migrating).

---

<div class="post-metadata">

**Author:** ![yuyichao](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yuyichao/32/20_2.png) [@yuyichao](https://discourse.julialang.org/u/yuyichao)\
**Post date:** [October 3, 2017, 5:31pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/3 "2017-10-03T17:31:01Z")

</div>

There has been many breaking change and that should have nothing to do with whether the two versions can co-exist.

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [October 3, 2017, 5:34pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/4 "2017-10-03T17:34:31Z")

</div>

Up to now I could run tests as show here: ["using" module within the same file where module was defined - #3 by PetrKryslUCSD](https://discourse.julialang.org/t/using-module-within-the-same-file-where-module-was-defined/6211/3)

This morning this wouldn’t run with 0.7 and I have to do “using .mod” instead of “using mod”. Also, I cannot now do “`using Base.Test`”, since apparently `Test` was moved.

With these 2 changes I cannot get my package to pass tests for both 0.6 and 0.7.

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [October 3, 2017, 8:14pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/5 "2017-10-03T20:14:11Z")

</div>

See [this commit](https://github.com/JuliaMath/FFTW.jl/pull/44/commits/9a52ccc1084161bf1afccc9409f45f799fdd7325) in a recent PR for FFTW.jl:

```julia
if isdefined(Base, :Test) && !Base.isdeprecated(Base, :Test)
    using Base.Test
else
    using Test
end

```

---

<div class="post-metadata">

**Author:** ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)\
**Post date:** [October 3, 2017, 8:43pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/6 "2017-10-03T20:43:09Z")

</div>

> [@PetrKryslUCSD](#):
>
> This morning this wouldn’t run with 0.7 and I have to do “using .mod” instead of “using mod”.

`using .mod` should work on 0.6 as well.

> [@PetrKryslUCSD](#):
>
> Also, I cannot now do “using Base.Test”, since apparently Test was moved.

This will be handled by `Compat`, @fengyang.wang has an open PR for that. [Add @compat for standard library imports by TotalVerb · Pull Request #403 · JuliaLang/Compat.jl · GitHub](https://github.com/JuliaLang/Compat.jl/pull/403) and [Add Compat for standard library imports by TotalVerb · Pull Request #404 · JuliaLang/Compat.jl · GitHub](https://github.com/JuliaLang/Compat.jl/pull/404)

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [October 3, 2017, 10:09pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/7 "2017-10-03T22:09:05Z")

</div>

using .mod should work on 0.6 as well: Yes, I realized that too. Thanks.

This will be handled by Compat: this seems like too much work given that .6 is on its way out (isn’t it?)…

---

<div class="post-metadata">

**Author:** ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)\
**Post date:** [October 4, 2017, 6:41am UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/8 "2017-10-04T06:41:03Z")

</div>

> [@PetrKryslUCSD](#):
>
> This will be handled by Compat: this seems like too much work given that .6 is on its way out (isn’t it?)…

`using Compat.Test` is not more work than `using Base.Test`.

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [October 4, 2017, 5:39pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/9 "2017-10-04T17:39:38Z")

</div>

Yes it is. Compat.Test doesn’t work.

 ![image](https://global.discourse-cdn.com/julialang/original/3X/5/8/58a3d083492748cc4a025cb133a6bb6d2eba4b18.png)

---

<div class="post-metadata">

**Author:** ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)\
**Post date:** [October 4, 2017, 5:42pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/10 "2017-10-04T17:42:51Z")

</div>

The update that will allow `using Compat.Test` to work is still in an open PR: [https://github.com/JuliaLang/Compat.jl/pull/404](https://github.com/JuliaLang/Compat.jl/pull/404)

So I think that using @giordano’s suggestion is the best thing to do for the next few days until Compat is updated.

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [October 4, 2017, 6:02pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/11 "2017-10-04T18:02:44Z")

</div>

Why are you running your package on 0.7? Is there something specific there you need right now? Keeping up with a rapidly moving target like julia master will be annoying especially since Compat stuff will not immediately be in place.

---

<div class="post-metadata">

**Author:** ![yuyichao](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yuyichao/32/20_2.png) [@yuyichao](https://discourse.julialang.org/u/yuyichao)\
**Post date:** [October 4, 2017, 6:16pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/12 "2017-10-04T18:16:54Z")

</div>

Do note that having package actually be tested on master is one of the most important way we get bug reports!

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [October 4, 2017, 7:26pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/13 "2017-10-04T19:26:05Z")

</div>

That is a good point.

Perhaps a bit more soft, having CI fail if master fails and keeping CI green commit to commit is probably not worthwhile.

---

<div class="post-metadata">

**Author:** ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)\
**Post date:** [October 4, 2017, 9:47pm UTC](https://discourse.julialang.org/t/can-0-6-and-0-7-no-longer-coexist/6223/14 "2017-10-04T21:47:14Z")

</div>

I’d like to learn the language that will be rather than the one that was.  
I have on purpose abstained from packages that don’t work with 0.7. That is why I don’t care if  
the compatibility with 0.6 is broken. My question was simply about whether or not there was a bug  
in the `using` statement.
