Skip to content

Releases: JuliaLang/Compat.jl

v3.46.0

22 Aug 01:46
5cbf275
Compare
Choose a tag to compare

Compat v3.46.0

Diff since v3.45.0

Closed issues:

  • Document what got dropped in 4.0 (#775)

Merged pull requests:

v4.2.0

21 Aug 17:38
dce2f96
Compare
Choose a tag to compare

Compat v4.2.0

Diff since v4.1.0

Closed issues:

  • Document what got dropped in 4.0 (#775)

Merged pull requests:

v3.45.0

03 Jun 08:18
952300c
Compare
Choose a tag to compare

Compat v3.45.0

Diff since v3.44.0

Merged pull requests:

v3.44.0

24 May 14:27
95ea27f
Compare
Choose a tag to compare

Compat v3.44.0

Diff since v3.43.0

Closed issues:

  • Compat for keepat! (#750)
  • too many dependencies (#764)

Merged pull requests:

v4.1.0

23 May 06:29
cad1700
Compare
Choose a tag to compare

Compat v4.1.0

Diff since v4.0.0

Closed issues:

  • Compat for keepat! (#750)

Merged pull requests:

v4.0.0

16 May 07:20
d91b01a
Compare
Choose a tag to compare

Compat v4.0.0

Diff since v3.43.0

Closed issues:

  • too many dependencies (#764)

Merged pull requests:

Instructions for supporting Compat 4.x

Change Compat = 3.x to Compat = 3.x, 4 in your Project.toml file, and see if everything
still works. In most cases, this is all that is needed. Please do not remove support for 3.x
unless you need a feature that is not present in 3.x, as it will make your package
incompatible with packages that do not support 4.x. Note that adding support for Compat 4.x
does not drop compatibility with Julia 1.0.

For a complete list of breaking changes in 4.0.0 and how to fix them, see below:

Removed aliases

Many deprecated aliases have been removed.

Replace Compat.x with Base.x for the following symbols:

invokelatest
MathConstants
Fix2
Sys
IteratorSize
IteratorEltype
notnothing
typename

Replace Compat.x with LinearAlgebra.x for the following symbols (you will also need to
add import LinearAlgebra if you don't already have it):

tr
opnorm
norm
dot
qr
rmul!

Other deprecated bindings that were removed include
Compat.(⋅) which should be replaced with LinearAlgebra.dot
Compat.AbstractDateTime which should be replaced with Dates.AbstractDateTime
Compat.isabstract which should be replaced with isabstracttype

Stdlibs

If you used Compat.Stdlib you should now import Stdlib and then use Stdlib.
This change is the primary reason for releasing 4.0.0, as it allows folks to depend on
Compat without bringing in every standard library.

Other functions

Compat.macros_have_sourceloc was previously defined as true
Compat.enable_debug(x::Bool) was previously defined as the identity function (with no side effects).
You should be able to safely remove all occurrences of either of these functions from your code.

Compat.parameter_upper_bound got removed in Compat v4.0. If you still need it, you can inline it as

Base.@pure function parameter_upper_bound(t::UnionAll, idx)
    return Base.rewrap_unionall((Base.unwrap_unionall(t)::DataType).parameters[idx], t)
end

or rewrite your code to use static parameters in dispatch.

v3.43.0

11 Apr 23:05
3ae185f
Compare
Choose a tag to compare

Compat v3.43.0

Diff since v3.42.0

Merged pull requests:

v3.42.0

07 Mar 08:23
fa274f7
Compare
Choose a tag to compare

Compat v3.42.0

Diff since v3.41.0

Merged pull requests:

v3.41.0

14 Dec 06:33
a2de107
Compare
Choose a tag to compare

Compat v3.41.0

Diff since v3.40.0

Merged pull requests:

v3.40.0

29 Oct 17:11
88f0817
Compare
Choose a tag to compare

Compat v3.40.0

Diff since v3.39.0

Closed issues:

  • @constprop conditionally defined, which sometimes breaks other packages (#760)

Merged pull requests: