# PSA: use Julia 0.7 if you are upgrading

**URL:** <https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321>\
**Category:** Announcements\
**Tags:** psa\
**Created:** [August 12, 2018, 8:05pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321 "2018-08-12T20:05:46Z")\
**Posts on this page:** 20\
**Page:** 1

<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:** [August 12, 2018, 8:05pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/1 "2018-08-12T20:05:46Z")

</div>

A lot of people are posting issues where their old code doesn’t work anymore on 1.0 because some function has been renamed or removed. The 0.7 release exists exactly for this reason: your old code will work on 0.7 and give you a specific warning about how to fix your code. If you have any old code, you should use 0.7 to get these warnings before switching to 1.0; even if you just have work habits that may need changing, you should probably use 0.7 for a while.

If someone posts an issue like this in discourse, feel free to just link them to this post.

PSA = Public Service Announcement

---

<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:** [August 12, 2018, 8:06pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/2 "2018-08-12T20:06:10Z")

</div>



---

<div class="post-metadata">

**Author:** ![thierry](https://avatars.discourse-cdn.com/v4/letter/t/65b543/32.png) [@thierry](https://discourse.julialang.org/u/thierry)\
**Post date:** [August 12, 2018, 8:46pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/3 "2018-08-12T20:46:30Z")

</div>

Stef,

Of course, there are problems with 1.0, fortunately there still is some work to do!

Before Julia, there was no problem with Julia…! But was it better?

There are always more problems with the future than with the past, and Julia is made for the future!

What you have done is not perfect, but it is wonderful!

T.

---

<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:** [August 13, 2018, 12:58am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/4 "2018-08-13T00:58:07Z")

</div>

A post was split to a new topic: [New Pkg confusion](https://discourse.julialang.org/t/new-pkg-confusion/13333)

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [August 13, 2018, 8:44pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/5 "2018-08-13T20:44:39Z")

</div>

I would tend to say that almost no one should use 1.0 day-to-day for the next month or so, until most packages have fully upgraded.

There is zero advantage to using 1.0 over 0.7 right now (except for testing), just more non-functioning packages, because 1.0 is just 0.7 minus deprecations.

---

<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:** [August 14, 2018, 1:02am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/6 "2018-08-14T01:02:33Z")

</div>

Yes. After this process, it has occurred to me that it might have been better to release 1.0 with deprecations and then delete them in 1.1 but that’s not what we did, but that occurred to me only after the fact, so ¯\_(ツ)\_/¯

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [August 14, 2018, 6:30am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/7 "2018-08-14T06:30:25Z")

</div>

> [@stevengj](#):
>
> There is zero advantage to using 1.0 over 0.7 right now (except for testing), just more non-functioning packages, because 1.0 is just 0.7 minus deprecations.

Will the (minor) changes in the short run be backported to v0.7?

---

<div class="post-metadata">

**Author:** ![barche](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/barche/32/79_2.png) [@barche](https://discourse.julialang.org/u/barche)\
**Post date:** [August 14, 2018, 7:23am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/8 "2018-08-14T07:23:00Z")

</div>

In case you use 0.7 to upgrade a package: do test on 1.0 as well, even if it is without warnings on 0.7. Two possible gotchas are overloading a method that no longer exists in Base and the fact that precompile is the default in 1.0.

---

<div class="post-metadata">

**Author:** ![KZiemian](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kziemian/32/9020_2.png) [@KZiemian](https://discourse.julialang.org/u/KZiemian)\
**Post date:** [August 14, 2018, 7:33am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/9 "2018-08-14T07:33:12Z")

</div>

> [@StefanKarpinski](#):
>
> Yes. After this process, it has occurred to me that it might have been better to release 1.0 with deprecations and then delete them in 1.1 but that’s not what we did, but that occurred to me only after the fact, so ¯\_(ツ)\_/¯

Everyone makes mistakes, but not everybody is able to confess his mistakes. Thank for all the work.

---

<div class="post-metadata">

**Author:** ![Daniel\_Berge](https://avatars.discourse-cdn.com/v4/letter/d/eb9ed0/32.png) [@Daniel\_Berge](https://discourse.julialang.org/u/Daniel_Berge)\
**Post date:** [August 14, 2018, 6:18pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/10 "2018-08-14T18:18:40Z")

</div>

What would have happened if Pkg3 in 1.0 were to have assumed an upper bound on dependencies in legacy REQUIRE files, so that only releases tagged for 1.0 could be added? Would that have made things better or worse from a new user perspective?

---

<div class="post-metadata">

**Author:** ![jlapeyre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jlapeyre/32/4514_2.png) [@jlapeyre](https://discourse.julialang.org/u/jlapeyre)\
**Post date:** [August 14, 2018, 7:38pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/11 "2018-08-14T19:38:03Z")

</div>

I think this could be very confusing for people new to Julia (and maybe even not so new). Is it reasonable to turn errors into deprecation warnings in 1.0 (or 1.0.x )? And then release 1.1 ASAP, when most packages are upgraded ? I know that’s what 0.7 is for, but it would be easier for people to understand and lessen the potential backlash.

---

<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:** [August 14, 2018, 7:41pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/12 "2018-08-14T19:41:23Z")

</div>

I’ve worked out some heuristics for when a package is or is not compatible with 0.7 which I will try to get into the script that generates the General registry soon.

---

<div class="post-metadata">

**Author:** ![lobingera](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lobingera/32/211_2.png) [@lobingera](https://discourse.julialang.org/u/lobingera)\
**Post date:** [August 15, 2018, 9:15am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/13 "2018-08-15T09:15:43Z")

</div>

btw: How should i understand “Unfortunately that’s a bug in Julia that is fixed on 1.0 but not on 0.7.” that was recently on slack (by staticfloat?). I thought 1.0 is 0.7 without deprecations only?

---

<div class="post-metadata">

**Author:** ![mzaffalon](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mzaffalon/32/214168_2.png) [@mzaffalon](https://discourse.julialang.org/u/mzaffalon)\
**Post date:** [August 15, 2018, 9:28am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/14 "2018-08-15T09:28:36Z")

</div>

Your advise will just reach users who follow this mailing list. New users will see the 1.0 download button on [julialang.org](http://julialang.org) and go try to download the 1.0 version without reading the fine prints below the download link, only to get frustrated and post on discourse.

Should your advise be made clearer in the [julialang.org](http://julialang.org) main page?

---

<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:** [August 15, 2018, 10:26am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/15 "2018-08-15T10:26:54Z")

</div>

And a few bug fixes that didn’t make it into 0.7.

---

<div class="post-metadata">

**Author:** ![jlapeyre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jlapeyre/32/4514_2.png) [@jlapeyre](https://discourse.julialang.org/u/jlapeyre)\
**Post date:** [August 15, 2018, 11:50am UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/16 "2018-08-15T11:50:34Z")

</div>

I guess the consequences depend on how many popular packages are not yet upgraded for 1.0. I just ran tests for StatsBase, Distributions, DataFrames, and several other key packages (on a recent 1.1 development branch) and they all passed. If this is indicative of the general state, then this is not a big problem for users. If a new user is adventurous, and wants to try packages immediately, and runs into a problem, it can be fixed by filing an issue (as suggested clearly on the download page.) or asking on a forum. I read the landing page and download page carefully. Almost every new user will try 1.0. But, I think the current language there will give the best experience for largest number of users.

---

<div class="post-metadata">

**Author:** ![mzaffalon](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mzaffalon/32/214168_2.png) [@mzaffalon](https://discourse.julialang.org/u/mzaffalon)\
**Post date:** [August 15, 2018, 1:48pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/17 "2018-08-15T13:48:50Z")

</div>

There were multiple postings about IJulia; PyCall also prevents SymPy (and PyPlot at a certain point?) to work, and these are all packages I use regularly. In any case, at this rate, they all are going to be working in the next days…

---

<div class="post-metadata">

**Author:** ![jlapeyre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jlapeyre/32/4514_2.png) [@jlapeyre](https://discourse.julialang.org/u/jlapeyre)\
**Post date:** [August 15, 2018, 2:02pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/18 "2018-08-15T14:02:34Z")

</div>

> [@jlapeyre](#):
>
> If this is indicative of the general state

I guess the answer is “No, it’s not !”. IJulia especially is very important.

---

<div class="post-metadata">

**Author:** ![ExpandingMan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/expandingman/32/866_2.png) [@ExpandingMan](https://discourse.julialang.org/u/ExpandingMan)\
**Post date:** [August 15, 2018, 2:48pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/19 "2018-08-15T14:48:07Z")

</div>

> [@StefanKarpinski](#):
>
> Yes. After this process, it has occurred to me that it might have been better to release 1.0 with deprecations and then delete them in 1.1 but that’s not what we did, but that occurred to me only after the fact, so ¯\_(ツ)\_/¯

It would have been _even simpler_ to just wait a month to release 1.0. I think you guys got a little over-excited there. 😆

No worries though, I think the overall the state of things is quite good. In a month I’m sure everything will be very smooth and whatever frustrations or confusions there were will be forgotten. Julia 1.0 is a thing of beauty, thanks to everyone for all their hard work.

---

<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:** [August 15, 2018, 2:56pm UTC](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321/20 "2018-08-15T14:56:48Z")

</div>

> [@ExpandingMan](#):
>
> It would have been _even simpler_ to just wait a month to release 1.0. I think you guys got a little over-excited there.

That is not true at all in my opinion. There were multiple upgradathon days spread out over many weeks and the interest was quite lackluster. And then when the thing actually releases, people start upgrading like crazy. It seems that the lesson here is to release Julia when Julia is ready to be released. The ecosystem will follow quickly.

[Next page](https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading/13321.md?page=2)
