diff --git a/.github/workflows/version_check.jl b/.github/workflows/version_check.jl index 555c5758b..35e70bc42 100644 --- a/.github/workflows/version_check.jl +++ b/.github/workflows/version_check.jl @@ -1,6 +1,6 @@ # Set up a temporary environment just to run this script using Pkg -Pkg.activate(temp=true) +Pkg.activate(temp = true) Pkg.add(["YAML", "TOML", "JSON", "HTTP"]) import YAML import TOML @@ -18,7 +18,10 @@ end function major_minor_patch_match(vs...) first = vs[1] - all(v.:major == first.:major && v.:minor == first.:minor && v.:patch == first.:patch for v in vs) + all( + v.:major == first.:major && v.:minor == first.:minor && v.:patch == first.:patch for + v in vs + ) end """ @@ -34,7 +37,10 @@ function update_project_toml(filename, target_version::VersionNumber) open(filename, "w") do io for line in lines if occursin(r"^Turing\s*=\s*\"\d+\.\d+\"\s*$", line) - println(io, "Turing = \"$(target_version.:major).$(target_version.:minor)\"") + println( + io, + "Turing = \"$(target_version.:major).$(target_version.:minor)\"", + ) else println(io, line) end @@ -54,7 +60,10 @@ function update_quarto_yml(filename, target_version::VersionNumber) for line in lines m = match(r"^(\s+)- text:\s*\"v\d+\.\d+\"\s*$", line) if m !== nothing - println(io, "$(m[1])- text: \"v$(target_version.:major).$(target_version.:minor)\"") + println( + io, + "$(m[1])- text: \"v$(target_version.:major).$(target_version.:minor)\"", + ) else println(io, line) end @@ -108,7 +117,7 @@ if ENV["TARGET_IS_MAIN"] == "true" old_env = Pkg.project().path Pkg.activate(".") try - Pkg.add(name="Turing", version=latest_version) + Pkg.add(name = "Turing", version = latest_version) catch e # If the Manifest couldn't be updated, the error will be shown later println(e) @@ -118,14 +127,20 @@ if ENV["TARGET_IS_MAIN"] == "true" manifest_toml = TOML.parsefile(MANIFEST_TOML_PATH) manifest_version = VersionNumber(manifest_toml["deps"]["Turing"][1]["version"]) if !major_minor_patch_match(latest_version, manifest_version) - push!(errors, "Failed to update $(MANIFEST_TOML_PATH) to match latest Turing.jl version") + push!( + errors, + "Failed to update $(MANIFEST_TOML_PATH) to match latest Turing.jl version", + ) end end if isempty(errors) println("All good") else - error("The following errors occurred during version checking: \n", join(errors, "\n")) + error( + "The following errors occurred during version checking: \n", + join(errors, "\n"), + ) end else @@ -135,10 +150,12 @@ else # work as it would involve paging through the list of releases). Instead, # we just check that the minor versions match. if !major_minor_match(quarto_version, project_version, manifest_version) - error("The minor versions of Turing.jl in _quarto.yml, Project.toml, and Manifest.toml are inconsistent: - - _quarto.yml: $quarto_version_str - - Project.toml: $project_version_str - - Manifest.toml: $manifest_version - ") + error( + "The minor versions of Turing.jl in _quarto.yml, Project.toml, and Manifest.toml are inconsistent: + - _quarto.yml: $quarto_version_str + - Project.toml: $project_version_str + - Manifest.toml: $manifest_version + ", + ) end end diff --git a/Manifest.toml b/Manifest.toml index e41cb809e..a33939262 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -5,9 +5,9 @@ manifest_format = "2.0" project_hash = "296b7e06e398e8898b40f44ed92b4d60c484484c" [[deps.ADTypes]] -git-tree-sha1 = "be7ae030256b8ef14a441726c4c37766b90b93a3" +git-tree-sha1 = "7927b9af540ee964cc5d1b73293f1eb0b761a3a1" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "1.15.0" +version = "1.16.0" weakdeps = ["ChainRulesCore", "ConstructionBase", "EnzymeCore"] [deps.ADTypes.extensions] @@ -33,10 +33,10 @@ uuid = "99985d1d-32ba-4be9-9821-2ec096f28918" version = "0.5.24" [[deps.AbstractMCMC]] -deps = ["BangBang", "ConsoleProgressMonitor", "Distributed", "FillArrays", "LogDensityProblems", "Logging", "LoggingExtras", "ProgressLogging", "Random", "StatsBase", "TerminalLoggers", "Transducers"] -git-tree-sha1 = "fdf711adc3fab05756e391ff92c38645b8e6847a" +deps = ["BangBang", "ConsoleProgressMonitor", "Distributed", "FillArrays", "LogDensityProblems", "Logging", "LoggingExtras", "ProgressLogging", "Random", "StatsBase", "TerminalLoggers", "Transducers", "UUIDs"] +git-tree-sha1 = "e4b6a25ba2e033c74ea11720daacafbc2ab50a7e" uuid = "80f14c24-f653-4e6a-9b94-39d6b0f70001" -version = "5.6.3" +version = "5.7.2" [[deps.AbstractPPL]] deps = ["AbstractMCMC", "Accessors", "DensityInterface", "JSON", "Random", "StatsBase"] @@ -118,9 +118,9 @@ weakdeps = ["DiffResults", "ForwardDiff", "MCMCChains", "StructArrays"] [[deps.AdvancedPS]] deps = ["AbstractMCMC", "Distributions", "Random", "Random123", "Requires", "SSMProblems", "StatsFuns"] -git-tree-sha1 = "31ba83dcaa79c29ad7205770b701950a94882b0b" +git-tree-sha1 = "5d34d826ece67ce790d4a7f3f97d837e52aba7f8" uuid = "576499cb-2369-40b2-a588-c64705576edc" -version = "0.6.2" +version = "0.7.0" weakdeps = ["Libtask"] [deps.AdvancedPS.extensions] @@ -208,10 +208,10 @@ version = "7.19.0" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" [[deps.ArrayLayouts]] -deps = ["FillArrays", "LinearAlgebra"] -git-tree-sha1 = "4e25216b8fea1908a0ce0f5d87368587899f75be" +deps = ["FillArrays", "LinearAlgebra", "StaticArrays"] +git-tree-sha1 = "120e392af69350960b1d3b89d41dcc1d66543858" uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" -version = "1.11.1" +version = "1.11.2" weakdeps = ["SparseArrays"] [deps.ArrayLayouts.extensions] @@ -344,9 +344,9 @@ version = "1.8.0" [[deps.BoundaryValueDiffEqCore]] deps = ["ADTypes", "Adapt", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearAlgebra", "Logging", "NonlinearSolveFirstOrder", "PreallocationTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings"] -git-tree-sha1 = "9b302ba0af3e17e8d468ae95af13415016be8ab0" +git-tree-sha1 = "b7b4d8cc80f116eab2eb6124dba58ea7aef31b85" uuid = "56b672f2-a5fe-4263-ab2d-da677488eb3a" -version = "1.11.0" +version = "1.11.1" [[deps.BoundaryValueDiffEqFIRK]] deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] @@ -545,9 +545,9 @@ version = "1.0.0" [[deps.Compat]] deps = ["TOML", "UUIDs"] -git-tree-sha1 = "3a3dfb30697e96a440e4149c8c51bf32f818c0f3" +git-tree-sha1 = "0037835448781bb46feb39866934e243886d756a" uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.17.0" +version = "4.18.0" weakdeps = ["Dates", "LinearAlgebra"] [deps.Compat.extensions] @@ -560,9 +560,9 @@ version = "1.1.1+0" [[deps.ComponentArrays]] deps = ["Adapt", "ArrayInterface", "ChainRulesCore", "ConstructionBase", "Functors", "LinearAlgebra", "StaticArrayInterface", "StaticArraysCore"] -git-tree-sha1 = "03aaee628bc8bb682570d70b16d8102b8220ff5a" +git-tree-sha1 = "d8b02e2226568644b6758b2d113fe5b08884eec0" uuid = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66" -version = "0.15.28" +version = "0.15.29" [deps.ComponentArrays.extensions] ComponentArraysGPUArraysExt = "GPUArrays" @@ -685,9 +685,9 @@ version = "0.1.2" [[deps.DelayDiffEq]] deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "LinearAlgebra", "Logging", "OrdinaryDiffEq", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqRosenbrock", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SimpleUnPack", "SymbolicIndexingInterface"] -git-tree-sha1 = "8b416f6b1f9ef8df4c13dd0fe6c191752722b36f" +git-tree-sha1 = "5ed2cc538b174dc2531cec319f294d5feb6b118c" uuid = "bcd4f6db-9728-5f36-b5f7-82caef46ccdb" -version = "5.53.1" +version = "5.54.0" [[deps.DelimitedFiles]] deps = ["Mmap"] @@ -703,9 +703,9 @@ version = "0.4.0" [[deps.DiffEqBase]] deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "FastPower", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "Setfield", "Static", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "TruncatedStacktraces"] -git-tree-sha1 = "e9b34e0eb3443492f396c97e7fed08630752a4f2" +git-tree-sha1 = "f069ea960f7a92ef5287a1b9831317dfdc19e1cc" uuid = "2b5f629d-d688-5b77-993f-72d75c75574e" -version = "6.177.2" +version = "6.179.0" [deps.DiffEqBase.extensions] DiffEqBaseCUDAExt = "CUDA" @@ -777,9 +777,9 @@ version = "7.16.1" [[deps.DifferentiationInterface]] deps = ["ADTypes", "LinearAlgebra"] -git-tree-sha1 = "c092fd1dd0d94e609cd0d29e13897b2825c804bb" +git-tree-sha1 = "f620da805b82bec64ab4d5f881c7592c82dbc08a" uuid = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63" -version = "0.7.2" +version = "0.7.3" [deps.DifferentiationInterface.extensions] DifferentiationInterfaceChainRulesCoreExt = "ChainRulesCore" @@ -929,9 +929,9 @@ version = "1.0.5" [[deps.Enzyme]] deps = ["CEnum", "EnzymeCore", "Enzyme_jll", "GPUCompiler", "InteractiveUtils", "LLVM", "Libdl", "LinearAlgebra", "ObjectFile", "PrecompileTools", "Preferences", "Printf", "Random", "SparseArrays"] -git-tree-sha1 = "6d85ffa95b11e51f82dd72efea1f88b88d7ec444" +git-tree-sha1 = "1a644ed9b0681542c8f40ba8223ac41bc0f03920" uuid = "7da242da-08ed-463a-9acd-ee780be4f1d9" -version = "0.13.59" +version = "0.13.64" [deps.Enzyme.extensions] EnzymeBFloat16sExt = "BFloat16s" @@ -960,9 +960,9 @@ weakdeps = ["Adapt"] [[deps.Enzyme_jll]] deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "7ea609b06402406450cd8c73bc6adbbb1f7fffc0" +git-tree-sha1 = "7940ea94d7bdc18cf15ec0bf1466aef973d3191e" uuid = "7cc45869-7501-5eee-bdea-0790c847d4ef" -version = "0.0.185+0" +version = "0.0.187+0" [[deps.EpollShim_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -1004,15 +1004,15 @@ version = "0.10.14" [[deps.FFMPEG]] deps = ["FFMPEG_jll"] -git-tree-sha1 = "53ebe7511fa11d33bec688a9178fac4e49eeee00" +git-tree-sha1 = "83dc665d0312b41367b7263e8a4d172eac1897f4" uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" -version = "0.4.2" +version = "0.4.4" [[deps.FFMPEG_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "JLLWrappers", "LAME_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "PCRE2_jll", "Zlib_jll", "libaom_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] -git-tree-sha1 = "466d45dc38e15794ec7d5d63ec03d776a9aff36e" +git-tree-sha1 = "3a948313e7a41eb1db7a1e733e6335f17b4ab3c4" uuid = "b22a6f82-2f65-5046-a5b2-351ab43fb4e5" -version = "4.4.4+1" +version = "7.1.1+0" [[deps.FFTW]] deps = ["AbstractFFTs", "FFTW_jll", "LinearAlgebra", "MKL_jll", "Preferences", "Reexport"] @@ -1147,9 +1147,9 @@ version = "0.8.5" [[deps.Flux]] deps = ["Adapt", "ChainRulesCore", "Compat", "EnzymeCore", "Functors", "LinearAlgebra", "MLCore", "MLDataDevices", "MLUtils", "MacroTools", "NNlib", "OneHotArrays", "Optimisers", "Preferences", "ProgressLogging", "Random", "Reexport", "Setfield", "SparseArrays", "SpecialFunctions", "Statistics", "Zygote"] -git-tree-sha1 = "2c35003ec8dafabdc48549102208b1b15552cb33" +git-tree-sha1 = "d0751ca4c9762d9033534057274235dfef86aaf9" uuid = "587475ba-b771-5e3f-ad9e-33799f191a9c" -version = "0.16.4" +version = "0.16.5" [deps.Flux.extensions] FluxAMDGPUExt = "AMDGPU" @@ -1392,9 +1392,9 @@ version = "1.4.4" [[deps.IntelOpenMP_jll]] deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl"] -git-tree-sha1 = "0f14a5456bdc6b9731a5682f439a672750a09e48" +git-tree-sha1 = "ec1debd61c300961f98064cfb21287613ad7f303" uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0" -version = "2025.0.4+0" +version = "2025.2.0+0" [[deps.InteractiveUtils]] deps = ["Markdown"] @@ -1460,9 +1460,9 @@ version = "0.1.11" [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "a007feb38b422fbdab534406aeca1b86823cb4d6" +git-tree-sha1 = "0533e564aae234aff59ab625543145446d8b6ec2" uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.7.0" +version = "1.7.1" [[deps.JSON]] deps = ["Dates", "Mmap", "Parsers", "Unicode"] @@ -1497,9 +1497,9 @@ weakdeps = ["FastBroadcast"] [[deps.KernelAbstractions]] deps = ["Adapt", "Atomix", "InteractiveUtils", "MacroTools", "PrecompileTools", "Requires", "StaticArrays", "UUIDs"] -git-tree-sha1 = "38a03910123867c11af988e8718d12c98bf6a234" +git-tree-sha1 = "83c617e9e9b02306a7acab79e05ec10253db7c87" uuid = "63c18a36-062a-441e-b654-da1e3ab1ce7c" -version = "0.9.37" +version = "0.9.38" weakdeps = ["EnzymeCore", "LinearAlgebra", "SparseArrays"] [deps.KernelAbstractions.extensions] @@ -1567,15 +1567,6 @@ git-tree-sha1 = "eb62a3deb62fc6d8822c0c4bef73e4412419c5d8" uuid = "1d63c593-3942-5779-bab2-d838dc0a180e" version = "18.1.8+0" -[[deps.LRUCache]] -git-tree-sha1 = "5519b95a490ff5fe629c4a7aa3b3dfc9160498b3" -uuid = "8ac3fa9e-de4c-5943-b1dc-09c6b5f20637" -version = "1.6.2" -weakdeps = ["Serialization"] - - [deps.LRUCache.extensions] - SerializationExt = ["Serialization"] - [[deps.LZO_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] git-tree-sha1 = "1c602b1127f4751facb671441ca72715cc95938a" @@ -1619,9 +1610,9 @@ version = "0.1.17" [[deps.LazyArrays]] deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "MacroTools", "SparseArrays"] -git-tree-sha1 = "866ce84b15e54d758c11946aacd4e5df0e60b7a3" +git-tree-sha1 = "76627adb8c542c6b73f68d4bfd0aa71c9893a079" uuid = "5078a376-72f3-5289-bfd5-ec5146d43c02" -version = "2.6.1" +version = "2.6.2" [deps.LazyArrays.extensions] LazyArraysBandedMatricesExt = "BandedMatrices" @@ -1654,9 +1645,9 @@ version = "0.3.0" [[deps.LeftChildRightSiblingTrees]] deps = ["AbstractTrees"] -git-tree-sha1 = "fb6803dafae4a5d62ea5cab204b1e657d9737e7f" +git-tree-sha1 = "95ba48564903b43b2462318aa243ee79d81135ff" uuid = "1d6d02ad-be62-4b6b-8a6d-2f90e265016e" -version = "0.2.0" +version = "0.2.1" [[deps.LevyArea]] deps = ["LinearAlgebra", "Random", "SpecialFunctions"] @@ -1724,10 +1715,10 @@ uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" version = "2.41.0+0" [[deps.Libtask]] -deps = ["FunctionWrappers", "LRUCache", "LinearAlgebra", "Statistics"] -git-tree-sha1 = "902ece54b0cb5c5413a8a15db0ad2aa2ec4172d2" +deps = ["MistyClosures", "Test"] +git-tree-sha1 = "6a9b56c32b39c6e45f8265cfd3ce971c3a8f7b75" uuid = "6f1fad26-d15e-5dc8-ae53-837a1d7b8c9f" -version = "0.8.8" +version = "0.9.4" [[deps.Libtiff_jll]] deps = ["Artifacts", "JLLWrappers", "JpegTurbo_jll", "LERC_jll", "Libdl", "XZ_jll", "Zlib_jll", "Zstd_jll"] @@ -1764,9 +1755,9 @@ version = "1.11.0" [[deps.LinearSolve]] deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "GPUArraysCore", "InteractiveUtils", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "StaticArraysCore", "UnPack"] -git-tree-sha1 = "062c11f1d84ffc80d00fddaa515f7e37e8e9f9d5" +git-tree-sha1 = "22e90c33c5297d6162ee54e2383584849379aa53" uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" -version = "3.18.2" +version = "3.23.0" [deps.LinearSolve.extensions] LinearSolveBandedMatricesExt = "BandedMatrices" @@ -1931,9 +1922,9 @@ version = "1.2.6" [[deps.LuxLib]] deps = ["ArrayInterface", "CPUSummary", "ChainRulesCore", "Compat", "DispatchDoctor", "EnzymeCore", "FastClosures", "ForwardDiff", "Functors", "KernelAbstractions", "LinearAlgebra", "LuxCore", "MLDataDevices", "Markdown", "NNlib", "Polyester", "Preferences", "Random", "Reexport", "Static", "StaticArraysCore", "Statistics"] -git-tree-sha1 = "a3c5d3485c6cdf0c13d81678b9c82a6f4e5e4eca" +git-tree-sha1 = "bf64921ca8182e3ee34a56b05b9f1ed568141a13" uuid = "82251201-b29d-42c6-8e01-566dec8acb11" -version = "1.10.0" +version = "1.10.1" [deps.LuxLib.extensions] LuxLibAppleAccelerateExt = "AppleAccelerate" @@ -1981,9 +1972,9 @@ version = "0.3.14" [[deps.MKL_jll]] deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] -git-tree-sha1 = "5de60bc6cb3899cd318d80d627560fae2e2d99ae" +git-tree-sha1 = "282cadc186e7b2ae0eeadbd7a4dffed4196ae2aa" uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7" -version = "2025.0.1+1" +version = "2025.2.0+0" [[deps.MLCore]] deps = ["DataAPI", "SimpleTraits", "Tables"] @@ -1993,9 +1984,9 @@ version = "1.0.0" [[deps.MLDataDevices]] deps = ["Adapt", "Compat", "Functors", "Preferences", "Random"] -git-tree-sha1 = "209390b236bb04b289c708054fe1df06a4b314b5" +git-tree-sha1 = "0ad0d8f83ddf28a7eba28ed94d0d68015ce645b7" uuid = "7e8f7934-dd98-4c1a-8fe8-92b47a384d40" -version = "1.11.0" +version = "1.11.1" [deps.MLDataDevices.extensions] MLDataDevicesAMDGPUExt = "AMDGPU" @@ -2050,10 +2041,10 @@ uuid = "cc2ba9b6-d476-5e6d-8eaf-a92d5412d41d" version = "0.5.4" [[deps.MLJModelInterface]] -deps = ["REPL", "Random", "ScientificTypesBase", "StatisticalTraits"] -git-tree-sha1 = "66626f80d5807921045d539b4f7153b1d47c5f8a" +deps = ["InteractiveUtils", "REPL", "Random", "ScientificTypesBase", "StatisticalTraits"] +git-tree-sha1 = "ccaa3f7938890ee8042cc970ba275115428bd592" uuid = "e80e1ace-859a-464e-9ed9-23947d8ae3ea" -version = "1.11.1" +version = "1.12.0" [[deps.MLLabelUtils]] deps = ["LearnBase", "MappedArrays", "StatsBase"] @@ -2193,9 +2184,9 @@ version = "0.8.1" [[deps.Mooncake]] deps = ["ADTypes", "ChainRules", "ChainRulesCore", "DiffRules", "DispatchDoctor", "ExprTools", "FunctionWrappers", "GPUArraysCore", "Graphs", "InteractiveUtils", "LinearAlgebra", "MistyClosures", "Random", "Test"] -git-tree-sha1 = "005e57fd321b90e9ae47c7cbb5dbdfff78651623" +git-tree-sha1 = "88bb6e5054ba4a341c8fb7047af859720669628d" uuid = "da2b9cff-9c12-43a0-ae48-6db2b0edb7d6" -version = "0.4.138" +version = "0.4.142" [deps.Mooncake.extensions] MooncakeAllocCheckExt = "AllocCheck" @@ -2248,9 +2239,9 @@ version = "7.10.0" [[deps.NLopt]] deps = ["CEnum", "NLopt_jll"] -git-tree-sha1 = "de3a001641c8b9fb52b96082327f5f99ae302fcc" +git-tree-sha1 = "624785b15005a0e0f4e462b27ee745dbe5941863" uuid = "76087f3c-5699-56af-9a33-bf431cd00edd" -version = "1.2.0" +version = "1.2.1" [deps.NLopt.extensions] NLoptMathOptInterfaceExt = ["MathOptInterface"] @@ -2272,9 +2263,9 @@ version = "4.5.1" [[deps.NNlib]] deps = ["Adapt", "Atomix", "ChainRulesCore", "GPUArraysCore", "KernelAbstractions", "LinearAlgebra", "Random", "ScopedValues", "Statistics"] -git-tree-sha1 = "4abc63cdd8dd9dd925d8e879cda280bedc8013ca" +git-tree-sha1 = "eb6eb10b675236cee09a81da369f94f16d77dc2f" uuid = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" -version = "0.9.30" +version = "0.9.31" [deps.NNlib.extensions] NNlibAMDGPUExt = "AMDGPU" @@ -2329,9 +2320,9 @@ version = "1.2.0" [[deps.NonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "NonlinearSolveBase", "NonlinearSolveFirstOrder", "NonlinearSolveQuasiNewton", "NonlinearSolveSpectralMethods", "PrecompileTools", "Preferences", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseMatrixColorings", "StaticArraysCore", "SymbolicIndexingInterface"] -git-tree-sha1 = "aeb6fb02e63b4d4f90337ed90ce54ceb4c0efe77" +git-tree-sha1 = "d2ec18c1e4eccbb70b64be2435fc3b06fbcdc0a1" uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec" -version = "4.9.0" +version = "4.10.0" [deps.NonlinearSolve.extensions] NonlinearSolveFastLevenbergMarquardtExt = "FastLevenbergMarquardt" @@ -2361,9 +2352,9 @@ version = "4.9.0" [[deps.NonlinearSolveBase]] deps = ["ADTypes", "Adapt", "ArrayInterface", "CommonSolve", "Compat", "ConcreteStructs", "DifferentiationInterface", "EnzymeCore", "FastClosures", "LinearAlgebra", "Markdown", "MaybeInplace", "Preferences", "Printf", "RecursiveArrayTools", "SciMLBase", "SciMLJacobianOperators", "SciMLOperators", "StaticArraysCore", "SymbolicIndexingInterface", "TimerOutputs"] -git-tree-sha1 = "404d71dd057759f4d590191a643113485c4a482a" +git-tree-sha1 = "ee395563ae6ffaecbdf86d430440fddc779253a4" uuid = "be0214bd-f91f-a760-ac4e-3421ce2b2da0" -version = "1.12.0" +version = "1.13.0" weakdeps = ["BandedMatrices", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearSolve", "SparseArrays", "SparseMatrixColorings"] [deps.NonlinearSolveBase.extensions] @@ -2377,15 +2368,15 @@ weakdeps = ["BandedMatrices", "DiffEqBase", "ForwardDiff", "LineSearch", "Linear [[deps.NonlinearSolveFirstOrder]] deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLJacobianOperators", "Setfield", "StaticArraysCore"] -git-tree-sha1 = "9c8cd0a986518ba317af263549b48e34ac8f776d" +git-tree-sha1 = "65101a20b135616a13625ae6f84b052ef5780363" uuid = "5959db7a-ea39-4486-b5fe-2dd0bf03d60d" -version = "1.5.0" +version = "1.6.0" [[deps.NonlinearSolveQuasiNewton]] deps = ["ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLOperators", "StaticArraysCore"] -git-tree-sha1 = "e3888bdbab6e0bfadbc3164ef4595e40e7b7e954" +git-tree-sha1 = "3e04c917d4e3cd48b2a5091b6f76c720bb3f7362" uuid = "9a2c21bd-3a47-402d-9113-8faf9a0ee114" -version = "1.6.0" +version = "1.7.0" weakdeps = ["ForwardDiff"] [deps.NonlinearSolveQuasiNewton.extensions] @@ -2503,9 +2494,9 @@ version = "4.4.0" [[deps.OptimizationBase]] deps = ["ADTypes", "ArrayInterface", "DifferentiationInterface", "DocStringExtensions", "FastClosures", "LinearAlgebra", "PDMats", "Reexport", "Requires", "SciMLBase", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings"] -git-tree-sha1 = "d42ca664e1fd78cdbe4186d4773d4fa51e1a0e78" +git-tree-sha1 = "474b2fa6de9288d34b8ad42c9c500088132621a7" uuid = "bca83a33-5cc9-4baa-983d-23429ab6bcbb" -version = "2.8.0" +version = "2.10.0" [deps.OptimizationBase.extensions] OptimizationEnzymeExt = "Enzyme" @@ -2554,9 +2545,9 @@ version = "1.8.1" [[deps.OrdinaryDiffEq]] deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqAdamsBashforthMoulton", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqExplicitRK", "OrdinaryDiffEqExponentialRK", "OrdinaryDiffEqExtrapolation", "OrdinaryDiffEqFIRK", "OrdinaryDiffEqFeagin", "OrdinaryDiffEqFunctionMap", "OrdinaryDiffEqHighOrderRK", "OrdinaryDiffEqIMEXMultistep", "OrdinaryDiffEqLinear", "OrdinaryDiffEqLowOrderRK", "OrdinaryDiffEqLowStorageRK", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqNordsieck", "OrdinaryDiffEqPDIRK", "OrdinaryDiffEqPRK", "OrdinaryDiffEqQPRK", "OrdinaryDiffEqRKN", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqSSPRK", "OrdinaryDiffEqStabilizedIRK", "OrdinaryDiffEqStabilizedRK", "OrdinaryDiffEqSymplecticRK", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "Static", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "1c2b2df870944e0dc01454fd87479847c55fa26c" +git-tree-sha1 = "55c21fdb4626037cdbcb04fec3afa192345a24de" uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" -version = "6.98.0" +version = "6.101.0" [[deps.OrdinaryDiffEqAdamsBashforthMoulton]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqLowOrderRK", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2566,9 +2557,9 @@ version = "1.2.0" [[deps.OrdinaryDiffEqBDF]] deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqSDIRK", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "9124a686af119063bb4d3a8f87044a8f312fcad9" +git-tree-sha1 = "b0bbc6541ea4a27974bd67e0a10b26211cb95e58" uuid = "6ad6398a-0878-4a85-9266-38940aa047c8" -version = "1.6.0" +version = "1.7.0" [[deps.OrdinaryDiffEqCore]] deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "FastBroadcast", "FastClosures", "FastPower", "FillArrays", "FunctionWrappersWrappers", "InteractiveUtils", "LinearAlgebra", "Logging", "MacroTools", "MuladdMacro", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleUnPack", "Static", "StaticArrayInterface", "StaticArraysCore", "SymbolicIndexingInterface", "TruncatedStacktraces"] @@ -2589,9 +2580,9 @@ version = "1.5.0" [[deps.OrdinaryDiffEqDifferentiation]] deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "ConstructionBase", "DiffEqBase", "DifferentiationInterface", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqCore", "SciMLBase", "SciMLOperators", "SparseArrays", "SparseMatrixColorings", "StaticArrayInterface", "StaticArrays"] -git-tree-sha1 = "efecf0c4cc44e16251b0e718f08b0876b2a82b80" +git-tree-sha1 = "382a4bf7795eee0298221c37099db770be524bab" uuid = "4302a76b-040a-498a-8c04-15b101fed76b" -version = "1.10.0" +version = "1.10.1" [[deps.OrdinaryDiffEqExplicitRK]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "TruncatedStacktraces"] @@ -2600,10 +2591,10 @@ uuid = "9286f039-9fbf-40e8-bf65-aa933bdc4db0" version = "1.1.0" [[deps.OrdinaryDiffEqExponentialRK]] -deps = ["ADTypes", "DiffEqBase", "ExponentialUtilities", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqVerner", "RecursiveArrayTools", "Reexport", "SciMLBase"] -git-tree-sha1 = "8d2ab84d7fabdfde995e5f567361f238069497f5" +deps = ["ADTypes", "DiffEqBase", "ExponentialUtilities", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "RecursiveArrayTools", "Reexport", "SciMLBase"] +git-tree-sha1 = "585f73f10a1b444654d739853a9328d1bb7fce6b" uuid = "e0540318-69ee-4070-8777-9e2de6de23de" -version = "1.4.0" +version = "1.5.0" [[deps.OrdinaryDiffEqExtrapolation]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FastPower", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "RecursiveArrayTools", "Reexport"] @@ -2613,9 +2604,9 @@ version = "1.5.0" [[deps.OrdinaryDiffEqFIRK]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FastGaussQuadrature", "FastPower", "LinearAlgebra", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Polyester", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] -git-tree-sha1 = "0da8ec3491821262a3d2828e6370e76b51a770a3" +git-tree-sha1 = "d7cbd84ba96a91e765fc20d2c3b3b1702c15eeed" uuid = "5960d6e9-dd7a-4743-88e7-cf307b64f125" -version = "1.12.0" +version = "1.13.0" [[deps.OrdinaryDiffEqFeagin]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2625,21 +2616,21 @@ version = "1.1.0" [[deps.OrdinaryDiffEqFunctionMap]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] -git-tree-sha1 = "925a91583d1ab84f1f0fea121be1abf1179c5926" +git-tree-sha1 = "a4cb67794464352b69331c903cfa91a40e9a79ac" uuid = "d3585ca7-f5d3-4ba6-8057-292ed1abd90f" -version = "1.1.1" +version = "1.2.0" [[deps.OrdinaryDiffEqHighOrderRK]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "Static"] -git-tree-sha1 = "103e017ff186ac39d731904045781c9bacfca2b0" +git-tree-sha1 = "3466ac9ba5121c700a17e1d5ba42757405d636d4" uuid = "d28bc4f8-55e1-4f49-af69-84c1a99f0f58" -version = "1.1.0" +version = "1.2.0" [[deps.OrdinaryDiffEqIMEXMultistep]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Reexport"] -git-tree-sha1 = "095bab73a3ff185e9ef971fc42ecc93c7824e589" +git-tree-sha1 = "f2e7decd8b8b92a13e9d48f87780fdfecbc85708" uuid = "9f002381-b378-40b7-97a6-27a27c83f129" -version = "1.3.0" +version = "1.4.0" [[deps.OrdinaryDiffEqLinear]] deps = ["DiffEqBase", "ExponentialUtilities", "LinearAlgebra", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] @@ -2649,9 +2640,9 @@ version = "1.3.0" [[deps.OrdinaryDiffEqLowOrderRK]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] -git-tree-sha1 = "d4bb32e09d6b68ce2eb45fb81001eab46f60717a" +git-tree-sha1 = "2b7a3ef765c5e3e9d8eee6031da143a0b1c0805c" uuid = "1344f307-1e59-4825-a18e-ace9aa3fa4c6" -version = "1.2.0" +version = "1.3.0" [[deps.OrdinaryDiffEqLowStorageRK]] deps = ["Adapt", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] @@ -2661,9 +2652,9 @@ version = "1.3.0" [[deps.OrdinaryDiffEqNonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "PreallocationTools", "RecursiveArrayTools", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "StaticArrays"] -git-tree-sha1 = "ffdb0f5207b0e30f8b1edf99b3b9546d9c48ccaf" +git-tree-sha1 = "e98aa2f8da8386bc26daeb7c9b161bc351ea6a77" uuid = "127b3ac7-2247-4354-8eb6-78cf4e7c58e8" -version = "1.10.0" +version = "1.11.0" [[deps.OrdinaryDiffEqNordsieck]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2691,21 +2682,21 @@ version = "1.1.0" [[deps.OrdinaryDiffEqRKN]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] -git-tree-sha1 = "41c09d9c20877546490f907d8dffdd52690dd65f" +git-tree-sha1 = "6548bff67665b13a60abfb33e95fcf7ae08d186d" uuid = "af6ede74-add8-4cfd-b1df-9a4dbb109d7a" -version = "1.1.0" +version = "1.2.0" [[deps.OrdinaryDiffEqRosenbrock]] deps = ["ADTypes", "DiffEqBase", "DifferentiationInterface", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static"] -git-tree-sha1 = "1ce0096d920e95773220e818f29bf4b37ea2bb78" +git-tree-sha1 = "a2f83c9b6e977c8dc5f37e0b448ad64f17c3a9c1" uuid = "43230ef6-c299-4910-a778-202eb28ce4ce" -version = "1.11.0" +version = "1.12.0" [[deps.OrdinaryDiffEqSDIRK]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLBase", "TruncatedStacktraces"] -git-tree-sha1 = "b3a7e3a2f355d837c823b435630f035aef446b45" +git-tree-sha1 = "62327171ae40737b7874d4bdf70e0a213d60086a" uuid = "2d112036-d095-4a1e-ab9a-08536f3ecdbf" -version = "1.3.0" +version = "1.4.0" [[deps.OrdinaryDiffEqSSPRK]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] @@ -2721,27 +2712,27 @@ version = "1.3.0" [[deps.OrdinaryDiffEqStabilizedRK]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "StaticArrays"] -git-tree-sha1 = "1b0d894c880e25f7d0b022d7257638cf8ce5b311" +git-tree-sha1 = "8b54bcaf8634548bd13c0bd9a0522f15e5438b67" uuid = "358294b1-0aab-51c3-aafe-ad5ab194a2ad" -version = "1.1.0" +version = "1.2.0" [[deps.OrdinaryDiffEqSymplecticRK]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] -git-tree-sha1 = "a13d59a2d6cfb6a3332a7782638ca6e1cb6ca688" +git-tree-sha1 = "0d3e0527149d7ece68850c51de67e99bc4477b1b" uuid = "fa646aed-7ef9-47eb-84c4-9443fc8cbfa8" -version = "1.3.0" +version = "1.4.0" [[deps.OrdinaryDiffEqTsit5]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] -git-tree-sha1 = "96552f7d4619fabab4038a29ed37dd55e9eb513a" +git-tree-sha1 = "d0b069075f4a5e54b29e412419e5a733a83e6240" uuid = "b1df2697-797e-41e3-8120-5422d3b24e4a" -version = "1.1.0" +version = "1.2.0" [[deps.OrdinaryDiffEqVerner]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] -git-tree-sha1 = "08f2d3be30874b6e2e937a06b501fb9811f7d8bd" +git-tree-sha1 = "91f0a004785791c8c538d34a67c19cf3f7776e85" uuid = "79d7bb75-1356-48c1-b8c0-6832512096c2" -version = "1.2.0" +version = "1.3.0" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] @@ -2807,9 +2798,9 @@ version = "1.4.3" [[deps.Plots]] deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "PrecompileTools", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "TOML", "UUIDs", "UnicodeFun", "UnitfulLatexify", "Unzip"] -git-tree-sha1 = "55818b50883d7141bd98cdf5fc2f4ced96ee075f" +git-tree-sha1 = "3db9167c618b290a05d4345ca70de6d95304a32a" uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -version = "1.40.16" +version = "1.40.17" [deps.Plots.extensions] FileIOExt = "FileIO" @@ -2857,9 +2848,9 @@ version = "0.2.4" [[deps.PreallocationTools]] deps = ["Adapt", "ArrayInterface", "ForwardDiff"] -git-tree-sha1 = "7a5e02659e293b25a4bfaeeb6cd268acd0742eba" +git-tree-sha1 = "2cc315bb7f6e4d59081bad744cdb911d6374fc7f" uuid = "d236fae5-4411-538c-8e31-a6e3d9e00b46" -version = "0.4.28" +version = "0.4.29" weakdeps = ["ReverseDiff", "SparseConnectivityTracer"] [deps.PreallocationTools.extensions] @@ -3014,9 +3005,9 @@ version = "0.6.12" [[deps.RecursiveArrayTools]] deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "efc718978d97745c58e69c5115a35c51a080e45e" +git-tree-sha1 = "f8726bd5a8b7f5f5d3f6c0ce4793454a599b5243" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" -version = "3.34.1" +version = "3.36.0" [deps.RecursiveArrayTools.extensions] RecursiveArrayToolsFastBroadcastExt = "FastBroadcast" @@ -3126,9 +3117,9 @@ version = "0.5.0" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "Moshi", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface"] -git-tree-sha1 = "e6a28a9a2dd9bc3ed46391fa0e6c35839bde4028" +git-tree-sha1 = "30be59ab5e15ce31771455b726c47e164e627270" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.103.0" +version = "2.106.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -3153,15 +3144,15 @@ version = "2.103.0" [[deps.SciMLJacobianOperators]] deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "ConstructionBase", "DifferentiationInterface", "FastClosures", "LinearAlgebra", "SciMLBase", "SciMLOperators"] -git-tree-sha1 = "7da1216346ad79499d08d7e2a3dbf297dc80c829" +git-tree-sha1 = "3414071e3458f3065de7fa5aed55283b236b4907" uuid = "19f34311-ddf3-4b8b-af20-060888a46c0e" -version = "0.1.6" +version = "0.1.8" [[deps.SciMLOperators]] deps = ["Accessors", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "MacroTools"] -git-tree-sha1 = "3249fe77f322fe539e935ecb388c8290cd38a3fc" +git-tree-sha1 = "7d3a1519dc4d433a6b20035eaff20bde8be77c66" uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" -version = "1.3.1" +version = "1.4.0" weakdeps = ["SparseArrays", "StaticArraysCore"] [deps.SciMLOperators.extensions] @@ -3170,9 +3161,9 @@ weakdeps = ["SparseArrays", "StaticArraysCore"] [[deps.SciMLSensitivity]] deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "ChainRulesCore", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "Distributions", "Enzyme", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionProperties", "FunctionWrappersWrappers", "Functors", "GPUArraysCore", "LinearAlgebra", "LinearSolve", "Markdown", "OrdinaryDiffEqCore", "PreallocationTools", "QuadGK", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "ReverseDiff", "SciMLBase", "SciMLJacobianOperators", "SciMLStructures", "StaticArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tracker", "Zygote"] -git-tree-sha1 = "f4af350e4b1e7200a2143a4fb16362133f2ef288" +git-tree-sha1 = "a5d3e3ccedbce9c0c07b4ffa60787b58bdc6d360" uuid = "1ed8b502-d754-442c-8d5d-10ac956f44a1" -version = "7.87.0" +version = "7.88.0" weakdeps = ["Mooncake"] [deps.SciMLSensitivity.extensions] @@ -3191,9 +3182,9 @@ version = "3.0.0" [[deps.ScopedValues]] deps = ["HashArrayMappedTries", "Logging"] -git-tree-sha1 = "1147f140b4c8ddab224c94efa9569fc23d63ab44" +git-tree-sha1 = "7f44eef6b1d284465fafc66baf4d9bdcc239a15b" uuid = "7e506255-f358-4e82-b7e4-beb19740aa63" -version = "1.3.0" +version = "1.4.0" [[deps.Scratch]] deps = ["Dates"] @@ -3245,9 +3236,9 @@ version = "1.2.0" [[deps.SimpleNonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "Setfield", "StaticArraysCore"] -git-tree-sha1 = "7aaa5fe4617271b64fce0466d187f2a72edbd81a" +git-tree-sha1 = "09d986e27a606f172c5b6cffbd8b8b2f10bf1c75" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "2.5.0" +version = "2.7.0" weakdeps = ["ChainRulesCore", "DiffEqBase", "ReverseDiff", "Tracker"] [deps.SimpleNonlinearSolve.extensions] @@ -3284,24 +3275,17 @@ version = "1.11.0" [[deps.SparseConnectivityTracer]] deps = ["ADTypes", "DocStringExtensions", "FillArrays", "LinearAlgebra", "Random", "SparseArrays"] -git-tree-sha1 = "182990067a09adf950274f97f38f68c76f81d2d0" +git-tree-sha1 = "7bd2b8981cc57adcf5cf1add282aba2713a7058f" uuid = "9f842d2f-2579-4b1d-911e-f412cf18a3f5" -version = "0.6.21" +version = "1.0.0" +weakdeps = ["LogExpFunctions", "NNlib", "NaNMath", "SpecialFunctions"] [deps.SparseConnectivityTracer.extensions] - SparseConnectivityTracerDataInterpolationsExt = "DataInterpolations" SparseConnectivityTracerLogExpFunctionsExt = "LogExpFunctions" SparseConnectivityTracerNNlibExt = "NNlib" SparseConnectivityTracerNaNMathExt = "NaNMath" SparseConnectivityTracerSpecialFunctionsExt = "SpecialFunctions" - [deps.SparseConnectivityTracer.weakdeps] - DataInterpolations = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" - LogExpFunctions = "2ab3a3ac-af41-5b50-aa03-7779005ae688" - NNlib = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" - NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" - SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" - [[deps.SparseInverseSubset]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] git-tree-sha1 = "52962839426b75b3021296f7df242e40ecfc0852" @@ -3365,9 +3349,9 @@ weakdeps = ["OffsetArrays", "StaticArrays"] [[deps.StaticArrays]] deps = ["LinearAlgebra", "PrecompileTools", "Random", "StaticArraysCore"] -git-tree-sha1 = "0feb6b9031bd5c51f9072393eb5ab3efd31bf9e4" +git-tree-sha1 = "cbea8a6bd7bed51b1619658dec70035e07b8502f" uuid = "90137ffa-7385-5640-81b9-e52037218182" -version = "1.9.13" +version = "1.9.14" weakdeps = ["ChainRulesCore", "Statistics"] [deps.StaticArrays.extensions] @@ -3438,9 +3422,9 @@ version = "2.5.0" [[deps.StochasticDiffEq]] deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DiffEqNoiseProcess", "DocStringExtensions", "FastPower", "FiniteDiff", "ForwardDiff", "JumpProcesses", "LevyArea", "LinearAlgebra", "Logging", "MuladdMacro", "NLsolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SparseArrays", "StaticArrays", "UnPack"] -git-tree-sha1 = "2992af2739fdcf5862b12dcf53a5f6e3e4acd358" +git-tree-sha1 = "c3a55a2a1e180e249a0550d30a58c700487aa7ef" uuid = "789caeaf-c7a9-5a7d-9973-96adeb23e2a0" -version = "6.80.0" +version = "6.81.0" [[deps.StrideArraysCore]] deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] @@ -3520,9 +3504,9 @@ version = "5.2.3+0" [[deps.SymbolicIndexingInterface]] deps = ["Accessors", "ArrayInterface", "PrettyTables", "RuntimeGeneratedFunctions", "StaticArraysCore"] -git-tree-sha1 = "658f6d01bfe68d6bf47915bf5d868228138c7d71" +git-tree-sha1 = "59ca6eddaaa9849e7de9fd1153b6faf0b1db7b80" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.41" +version = "0.3.42" [[deps.TOML]] deps = ["Dates"] @@ -3589,9 +3573,9 @@ version = "0.5.5" [[deps.TimeZones]] deps = ["Artifacts", "Dates", "Downloads", "InlineStrings", "Mocking", "Printf", "Scratch", "TZJData", "Unicode", "p7zip_jll"] -git-tree-sha1 = "2c705e96825b66c4a3f25031a683c06518256dd3" +git-tree-sha1 = "1f9a3f379a2ce2a213a0f606895567a08a1a2d08" uuid = "f269a46b-ccf7-5d73-abea-4c690281aa53" -version = "1.21.3" +version = "1.22.0" weakdeps = ["RecipesBase"] [deps.TimeZones.extensions] @@ -3677,9 +3661,9 @@ version = "1.6.0" [[deps.Turing]] deps = ["ADTypes", "AbstractMCMC", "AbstractPPL", "Accessors", "AdvancedHMC", "AdvancedMH", "AdvancedPS", "AdvancedVI", "BangBang", "Bijectors", "Compat", "DataStructures", "Distributions", "DistributionsAD", "DocStringExtensions", "DynamicPPL", "EllipticalSliceSampling", "ForwardDiff", "Libtask", "LinearAlgebra", "LogDensityProblems", "MCMCChains", "NamedArrays", "Optimization", "OptimizationOptimJL", "OrderedCollections", "Printf", "Random", "Reexport", "SciMLBase", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "ed8145c83b824e67a94b5bbe5be231991deda154" +git-tree-sha1 = "3d7516378d649109b1cdced7662d2039e1376512" uuid = "fce5fe82-541a-59a6-adf8-730c64b5f9a0" -version = "0.39.4" +version = "0.39.8" weakdeps = ["DynamicHMC", "Optim"] [deps.Turing.extensions] @@ -3764,9 +3748,9 @@ version = "1.4.2" [[deps.WeightInitializers]] deps = ["ArgCheck", "ConcreteStructs", "GPUArraysCore", "LinearAlgebra", "Random", "SpecialFunctions", "Statistics"] -git-tree-sha1 = "57db7a10930d4ccc9e4ee3d9122748f845e645cf" +git-tree-sha1 = "dd2e8eb0120c12eed3446cedee395ca7ac42a5db" uuid = "d49dbf32-c5c2-4618-8acc-27bb2598ef2d" -version = "1.1.3" +version = "1.1.4" [deps.WeightInitializers.extensions] WeightInitializersAMDGPUExt = ["AMDGPU", "GPUArrays"] @@ -4002,15 +3986,15 @@ version = "1.1.3+0" [[deps.libaom_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "522c1df09d05a71785765d19c9524661234738e9" +git-tree-sha1 = "4bba74fa59ab0755167ad24f98800fe5d727175b" uuid = "a4ae2306-e953-59d6-aa16-d00cac43593b" -version = "3.11.0+0" +version = "3.12.1+0" [[deps.libass_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "e17c115d55c5fbb7e52ebedb427a0dca79d4484e" +git-tree-sha1 = "125eedcb0a4a0bba65b657251ce1d27c8714e9d6" uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" -version = "0.15.2+0" +version = "0.17.4+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] @@ -4076,16 +4060,16 @@ uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" version = "17.4.0+2" [[deps.x264_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "4fea590b89e6ec504593146bf8b988b2c00922b2" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "14cc7083fc6dff3cc44f2bc435ee96d06ed79aa7" uuid = "1270edf5-f2f9-52d2-97e9-ab00b5d0237a" -version = "2021.5.5+0" +version = "10164.0.1+0" [[deps.x265_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "ee567a171cce03570d77ad3a43e90218e38937a9" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "e7b67590c14d487e734dcb925924c5dc43ec85f3" uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" -version = "3.5.0+0" +version = "4.1.0+0" [[deps.xkbcommon_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] diff --git a/_quarto.yml b/_quarto.yml index 288cf5259..42586788c 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -24,6 +24,8 @@ website: text: Get Started - href: tutorials/coin-flipping/ text: Tutorials + - href: faq/ + text: FAQ - href: https://turinglang.org/library/ text: Libraries - href: https://turinglang.org/news/ diff --git a/faq/index.qmd b/faq/index.qmd new file mode 100644 index 000000000..99c2aefac --- /dev/null +++ b/faq/index.qmd @@ -0,0 +1,141 @@ +--- +title: "Frequently Asked Questions" +description: "Common questions and answers about using Turing.jl" +--- + +## Why is this variable being treated as random instead of observed? + +This is a common source of confusion. In Turing.jl, you can only condition or fix expressions that explicitly appear on the left-hand side (LHS) of a `~` statement. + +For example, if your model contains: +```julia +x ~ filldist(Normal(), 2) +``` + +You cannot directly condition on `x[2]` using `condition(model, @varname(x[2]) => 1.0)` because `x[2]` never appears on the LHS of a `~` statement. Only `x` as a whole appears there. + +However, there is an important exception: when you use the broadcasting operator `.~` with a univariate distribution, each element is treated as being separately drawn from that distribution, allowing you to condition on individual elements: + +```julia +@model function f1() + x = Vector{Float64}(undef, 3) + x .~ Normal() # Each element is a separate draw +end + +m1 = f1() | (@varname(x[1]) => 1.0) +sample(m1, NUTS(), 100) # This works! +``` + +In contrast, you cannot condition on parts of a multivariate distribution because it represents a single distribution over the entire vector: + +```julia +@model function f2() + x = Vector{Float64}(undef, 3) + x ~ MvNormal(zeros(3), I) # Single multivariate distribution +end + +m2 = f2() | (@varname(x[1]) => 1.0) +sample(m2, NUTS(), 100) # This doesn't work! +``` + +The key insight is that `filldist` creates a single distribution (not N independent distributions), which is why you cannot condition on individual elements. The distinction is not just about what appears on the LHS of `~`, but whether you're dealing with separate distributions (`.~` with univariate) or a single distribution over multiple values (`~` with multivariate or `filldist`). + +To understand more about how Turing determines whether a variable is treated as random or observed, see: +- [Core Functionality]({{< meta core-functionality >}}) - basic explanation of the `~` notation and conditioning + + +## Can I use parallelism / threads in my model? + +Yes, but with important caveats! There are two types of parallelism to consider: + +### 1. Parallel Sampling (Multiple Chains) +Turing.jl fully supports sampling multiple chains in parallel: +- **Multithreaded sampling**: Use `MCMCThreads()` to run one chain per thread +- **Distributed sampling**: Use `MCMCDistributed()` for distributed computing + +See the [Core Functionality guide]({{< meta core-functionality >}}/#sampling-multiple-chains) for examples. + +### 2. Threading Within Models +Using threads inside your model (e.g., `Threads.@threads`) requires more care: + +```julia +@model function f(y) + x = Vector{Float64}(undef, length(y)) + Threads.@threads for i in eachindex(y) + x[i] ~ Normal() # UNSAFE: `assume` statements in @threads can crash! + y[i] ~ Normal(x[i]) # `observe` statements are okay + end +end +``` + +**Important limitations:** +- **Observe statements**: Generally safe to use in threaded loops +- **Assume statements** (sampling statements): Often crash unpredictably or produce incorrect results +- **AD backend compatibility**: Many AD backends don't support threading. Check the [multithreaded column in ADTests](https://turinglang.org/ADTests/) for compatibility + +For safe parallelism within models, consider vectorized operations instead of explicit threading. + +## How do I check the type stability of my Turing model? + +Type stability is crucial for performance. Check out: +- [Performance Tips]({{< meta usage-performance-tips >}}) - includes specific advice on type stability +- Use `DynamicPPL.DebugUtils.model_warntype` to check type stability of your model + +## How do I debug my Turing model? + +For debugging both statistical and syntactical issues: +- [Troubleshooting Guide]({{< meta usage-troubleshooting >}}) - common errors and their solutions +- For more advanced debugging, DynamicPPL provides [the `DynamicPPL.DebugUtils` module](https://turinglang.org/DynamicPPL.jl/stable/api/#Debugging-Utilities) for inspecting model internals + +## What are the main differences between Turing and Stan syntax? + +Key syntactic differences include: + +- **Parameter blocks**: Stan requires explicit `data`, `parameters`, and `model` blocks. In Turing, everything is defined within the `@model` macro +- **Variable declarations**: Stan requires upfront type declarations in parameter blocks. Turing infers types from the sampling statements +- **Transformed data**: Stan has a `transformed data` block for preprocessing. In Turing, data transformations should be done before defining the model +- **Generated quantities**: Stan has a `generated quantities` block. In Turing, use the approach described in [Tracking Extra Quantities]({{< meta usage-tracking-extra-quantities >}}) + +Example comparison: +```stan +// Stan +data { + int N; + vector[N] y; +} +parameters { + real mu; + real sigma; +} +model { + mu ~ normal(0, 1); + sigma ~ normal(0, 1); + y ~ normal(mu, sigma); +} +``` + +```julia +# Turing +@model function my_model(y) + mu ~ Normal(0, 1) + sigma ~ truncated(Normal(0, 1); lower=0) + y ~ Normal(mu, sigma) +end +``` + +## Which automatic differentiation backend should I use? + +The choice of AD backend can significantly impact performance. See: +- [Automatic Differentiation Guide]({{< meta usage-automatic-differentiation >}}) - comprehensive comparison of ForwardDiff, Mooncake, ReverseDiff, and other backends +- [Performance Tips]({{< meta usage-performance-tips >}}#choose-your-ad-backend) - quick guide on choosing backends +- [AD Backend Benchmarks](https://turinglang.org/ADTests/) - performance comparisons across various models + +## I changed one line of my model and now it's so much slower; why? + +Small changes can have big performance impacts. Common culprits include: +- Type instability introduced by the change +- Switching from vectorized to scalar operations (or vice versa) +- Inadvertently causing AD backend incompatibilities +- Breaking assumptions that allowed compiler optimizations + +See our [Performance Tips]({{< meta usage-performance-tips >}}) and [Troubleshooting Guide]({{< meta usage-troubleshooting >}}) for debugging performance regressions. \ No newline at end of file