Can 0.6 and 0.7 no longer coexist?


#1

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?


#2

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).


#3

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


#4

Up to now I could run tests as show here: "using" module within the same file where module was defined

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.


#5

See this commit in a recent PR for FFTW.jl:

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

#6

using .mod should work on 0.6 as well.

This will be handled by Compat, @fengyang.wang has an open PR for that. https://github.com/JuliaLang/Compat.jl/pull/403 and https://github.com/JuliaLang/Compat.jl/pull/404


#7

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?)…


#8

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


#9

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


#10

The update that will allow using Compat.Test to work is still in an open PR: 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.


#11

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.


#12

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


#13

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.


#14

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.