|
| 1 | +--- |
| 2 | +title: Turing.jl Newsletter 14 |
| 3 | +description: The fortnightly newsletter for the Turing.jl probabilistic programming language |
| 4 | +categories: |
| 5 | + - Newsletter |
| 6 | +author: |
| 7 | + - name: The TuringLang team |
| 8 | + url: /team/ |
| 9 | +date: 2025-10-24 |
| 10 | +--- |
| 11 | + |
| 12 | +**Turing v0.41, DynamicPPL 0.38** |
| 13 | + |
| 14 | +The big news item this week is that we've just released new (twinned) versions of Turing + DynamicPPL! |
| 15 | +Many of the changes are under the hood: you might see better performance on some functions like `predict` for example. |
| 16 | + |
| 17 | +The main breaking change comes with the `initial_params` keyword argument: previously this was supplied as a vector (or vector of vectors for multiple chains). |
| 18 | +The problem with this is that the meaning of this vector depended on DynamicPPL internals, in a way that users shouldn't be exposed to. |
| 19 | +Now, it should be an `AbstractInitStrategy` (or vector thereof). |
| 20 | +Essentially, instead of saying "what are the parameters are", you now specify "how do I get parameters". |
| 21 | +This will give you more ways to initialise parameters, and also clearer code. |
| 22 | + |
| 23 | +Docs for the new version are [already live](https://turinglang.org/docs)! In the meantime, you can read more details in our [release notes](https://github.com/TuringLang/Turing.jl/releases/tag/v0.41.0). |
| 24 | + |
| 25 | +**ProductNamedTupleDistribution** |
| 26 | + |
| 27 | +...can (mostly) be used in Turing now! |
| 28 | +You'll need to upgrade to v0.41. |
| 29 | +I say mostly because there is a fairly niche edge case, where `product_distribution` of `Array` inside `product_distribution` of `NamedTuple` will fail. |
| 30 | +If you run into this, please feel free to open an issue! |
| 31 | + |
| 32 | +**Particle samplers in Julia 1.12** |
| 33 | + |
| 34 | +Particle samplers were broken by changes in Julia 1.12's internals. |
| 35 | +Over the past few months several fixes have been introduced and you should be able to use these again now! |
| 36 | +You will need to make sure to upgrade Libtask.jl to 0.9.6, which was [just released today](https://github.com/TuringLang/Libtask.jl/releases/tag/v0.9.6). |
0 commit comments