# Work on deprecations/language changes in Julia development and Compat

**URL:** <https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962>\
**Category:** Internals & Design\
**Created:** [August 6, 2018, 9:22pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962 "2018-08-06T21:22:23Z")\
**Posts on this page:** 8\
**Page:** 1

<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 6, 2018, 9:22pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/1 "2018-08-06T21:22:23Z")

</div>

Just for my curiosity: How is actually Compat synchronised with language changes / deprecations in Julia? I followed twice today the recommendation in the deprecation warning (like replace this( with that( ) and later on learned, that Compat is actually not able to provide a backward compatible solution.

---

<div class="post-metadata">

**Author:** ![Tero\_Frondelius](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tero_frondelius/32/7629_2.png) [@Tero\_Frondelius](https://discourse.julialang.org/u/Tero_Frondelius)\
**Post date:** [August 6, 2018, 9:31pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/2 "2018-08-06T21:31:15Z")

</div>

This is open source. You can make the missing implementation to Compat.jl yourself. I am sure a lot of people are willing to help.

---

<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:** [August 6, 2018, 10:40pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/3 "2018-08-06T22:40:30Z")

</div>

There’s no automatic synchronization: all the changes are implemented by various developers updating Compat.jl. You can browse all the merged and pending changes here: [Pull requests · JuliaLang/Compat.jl · GitHub](https://github.com/JuliaLang/Compat.jl/pulls?utf8=%E2%9C%93&q=is%3Apr+)

---

<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 7, 2018, 10:35am UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/4 "2018-08-07T10:35:07Z")

</div>

I have marked your answer as the solution, because it’s technically and actually right. This is open source and everyone here is able to help and if needed her- or himself.

However, i’m actually really disappointed by the situation, as the people evolving or changing the language seem to have a different concept of responsibility for the existing ecosystem.

---

<div class="post-metadata">

**Author:** ![Tero\_Frondelius](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tero_frondelius/32/7629_2.png) [@Tero\_Frondelius](https://discourse.julialang.org/u/Tero_Frondelius)\
**Post date:** [August 7, 2018, 10:50am UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/5 "2018-08-07T10:50:02Z")

</div>

If you would ask more concrete question, you would get better answers. If you ask that how one should implement this exact depreciation to Compat.jl I believe people are eager to help. I feel frustrated a lot times with open source but I remind myself: this is somebody’s hobby. It’s not like I am paying anything to him or her to fix my problem.

---

<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 7, 2018, 11:42am UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/6 "2018-08-07T11:42:25Z")

</div>

While in general I agree with the sentiment (it’s open source, just make a PR), some package in the Julia ecosystem are somewhat special in the sense that they require knowledge about Julia’s internals, or a decision about solving a particular problem that comes up. `Compat.jl` is one of these, and while I am sure that contributions are welcome, the initial investment for making one may not be trivial.

> [@lobingera](#):
>
> i’m actually really disappointed by the situation, as the people evolving or changing the language seem to have a different concept of responsibility for the existing ecosystem

Please keep in mind that it is summer in the northern hemisphere, and many people are on a vacation. Consider the upside: coming back well-rested from their holidays, everything should be fixed 😉

---

<div class="post-metadata">

**Author:** ![tobias.knopp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tobias.knopp/32/7551_2.png) [@tobias.knopp](https://discourse.julialang.org/u/tobias.knopp)\
**Post date:** [August 7, 2018, 12:37pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/7 "2018-08-07T12:37:44Z")

</div>

I am very thankful that Andreas is maintaining Cairo.jl being a core package of the Julia ecosystem.

The deprecation messages usually do not care about 0.6 and maintaining compatibility needs special attention.

My suggestion: make a stable 0.6 Release and Go with 0.7 only on master. This will make your life easier unless you are doing any feature development.

---

<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 7, 2018, 5:05pm UTC](https://discourse.julialang.org/t/work-on-deprecations-language-changes-in-julia-development-and-compat/12962/8 "2018-08-07T17:05:57Z")

</div>

Well technically JuliaGraphics is the maintainer and i just happen to be someone with commit rights. And i’m planning to stop this once we reached a stable 1.0 (and maybe the split into Cairo, CairoText, CairoPango). And be more a Cairo user, like i started.

For how to handle 0.6 and 0.7/1.0, i have somehow lost track what is recommended to depend on. The general story line was: Compat will enable to have backward compatible code. But this is already not the case. Compat right now transforms dev (0.7) into stable (0.6.4). In most cases.
