diff --git a/HISTORY.md b/HISTORY.md index 0f22721d9..55010c533 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,9 @@ # DynamicPPL Changelog +## 0.37.3 + +Prevents inlining of `DynamicPPL.istrans` with Enzyme, which allows Enzyme to differentiate models where `VarName`s have the same symbol but different types. + ## 0.37.2 Make the `resume_from` keyword work for multiple-chain (parallel) sampling as well. diff --git a/Project.toml b/Project.toml index 5f11cba3f..024aef5c3 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "DynamicPPL" uuid = "366bfd00-2699-11ea-058f-f148b4cae6d8" -version = "0.37.2" +version = "0.37.3" [deps] ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b" @@ -23,7 +23,6 @@ MacroTools = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7" Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" -Requires = "ae029012-a4dd-5104-9daa-d747884805df" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" @@ -71,7 +70,6 @@ Mooncake = "0.4.147" OrderedCollections = "1" Printf = "1.10" Random = "1.6" -Requires = "1" Statistics = "1" Test = "1.6" julia = "1.10.8" diff --git a/ext/DynamicPPLEnzymeCoreExt.jl b/ext/DynamicPPLEnzymeCoreExt.jl index ceb3f4981..d592e76b3 100644 --- a/ext/DynamicPPLEnzymeCoreExt.jl +++ b/ext/DynamicPPLEnzymeCoreExt.jl @@ -12,7 +12,6 @@ end # Mark istrans as having 0 derivative. The `nothing` return value is not significant, Enzyme # only checks whether such a method exists, and never runs it. -@inline EnzymeCore.EnzymeRules.inactive_noinl(::typeof(DynamicPPL.istrans), args...) = - nothing +@inline EnzymeCore.EnzymeRules.inactive(::typeof(DynamicPPL.istrans), args...) = nothing end diff --git a/src/DynamicPPL.jl b/src/DynamicPPL.jl index b400e83dd..5c8233915 100644 --- a/src/DynamicPPL.jl +++ b/src/DynamicPPL.jl @@ -199,10 +199,6 @@ include("test_utils.jl") include("experimental.jl") include("deprecated.jl") -if !isdefined(Base, :get_extension) - using Requires -end - # Better error message if users forget to load JET if isdefined(Base.Experimental, :register_error_hint) function __init__()