Skip to content

Update Turing requirement from 0.45, 0.46 to 0.45, 0.46, 0.47 in /docs in the all-julia-packages group across 1 directory - #69

Merged
yebai merged 1 commit into
mainfrom
dependabot/julia/docs/all-julia-packages-f925fca2dd
Aug 28, 2026
Merged

Update Turing requirement from 0.45, 0.46 to 0.45, 0.46, 0.47 in /docs in the all-julia-packages group across 1 directory#69
yebai merged 1 commit into
mainfrom
dependabot/julia/docs/all-julia-packages-f925fca2dd

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 28, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on Turing to permit the latest version.
Updates Turing to 0.47.1

Release notes

Sourced from Turing's releases.

v0.47.1

Turing v0.47.1

Diff since v0.47.0

setprogress! is now a re-export of AbstractMCMC.setprogress!, so Turing.setprogress!(false) keeps working and there is a single progress logging switch instead of two. The internal Turing.PROGRESS flag is gone, its state lives in AbstractMCMC.PROGRESS.

Changelog

Sourced from Turing's changelog.

0.47.1

setprogress! is now a re-export of AbstractMCMC.setprogress!, so Turing.setprogress!(false) keeps working and there is a single progress logging switch instead of two. The internal Turing.PROGRESS flag is gone, its state lives in AbstractMCMC.PROGRESS.

0.47.0

Breaking changes

Particle MCMC (SMC and PG)

SMC and PG / CSMC have been reimplemented natively and no longer depend on AdvancedPS.

Resampling schemes are now types rather than functions: StratifiedResampler(), SystematicResampler(), and MultinomialResampler() (in Turing.Inference), optionally wrapped in ESSThresholdResampler(threshold, scheme) to resample only when the effective sample size falls below threshold * nparticles. For example SMC(Turing.Inference.SystematicResampler()), SMC(0.5), or PG(10, Turing.Inference.MultinomialResampler(), 0.5). The old function-based API (resample_systematic, AdvancedPS.ResampleWithESSThreshold, ...) is gone.

The default scheme is now stratified rather than systematic: it stays consistent as the number of particles grows, which systematic does not. The selected scheme applies to unconditional sweeps only; PG / CSMC draw a conditional sweep's ancestors from the categorical over the weights. Exact draws may therefore differ from previous releases, but remain statistically consistent (the same target distribution).

Chain statistics have changed: chain[:logevidence] is now chain[:log_normalizing_constant], and SMC's per-particle weight is gone, since the returned particles are now equal-weight.

SMC no longer has a sampler state, because it runs one sweep rather than an MCMC loop: save_state and initial_state are now warned about and ignored, so loadstate has nothing to return for an SMC chain. PG / CSMC are unaffected.

The rewrite also brings:

  • Reproducibility. Internal seeds are derived through a counter-based (Philox) generator, so a fixed user seed gives the same draws on every Julia version and platform. Previously, results could drift between Julia versions even under a StableRNG (TuringLang/Turing.jl#2781).
  • Parallelism within a sweep. SMC(; multithreaded=true) / PG(n; multithreaded=true) spread that sweep's particles across threads without changing the results; start Julia with multiple threads (e.g. julia -t auto) for this to take effect. It is independent of MCMCThreads() / MCMCDistributed(), which parallelise whole chains and work with SMC/PG as with any other sampler.
  • Equal-weight draws. SMC resamples once at the end of the sweep, so mean(chain[...]) and other summaries need no weighting.
  • A degeneracy diagnostic. SMC chains carry ess_per_step, the effective sample size after each filtering step; one entry per likelihood term, so an @addlogprob! adds one alongside the observations. MCMCChains exposes the entries as ess_per_step[1], ess_per_step[2], and so on.
  • For SMC, exp(log_normalizing_constant) is an unbiased estimator of the marginal likelihood p(y) under the usual particle-filter assumptions. For PG / CSMC it is biased and must not be used for model comparison (see the PG docstring).

0.46.1

Fixed a bug, present since v0.41.0, that biased PG / CSMC posteriors, whether sampled on their own or as a Gibbs component.

0.46.0

Breaking changes

DynamicPPL 0.42

Turing.jl v0.46 brings with it all the underlying changes in DynamicPPL 0.42. Most notably, gradient preparation and evaluation now go through AbstractPPL's prepare / value_and_gradient!! interface. This is an internal change and does not affect sampling results. Please see the DynamicPPL changelog for full details, and the AdvancedVI section below for the user-facing changes in this release.

AdvancedVI 0.7

Turing.jl v0.46 also brings in the changes in AdvancedVI 0.7.

... (truncated)

Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Updates the requirements on [Turing](https://github.com/TuringLang/Turing.jl) to permit the latest version.

Updates `Turing` to 0.47.1
- [Release notes](https://github.com/TuringLang/Turing.jl/releases)
- [Changelog](https://github.com/TuringLang/Turing.jl/blob/main/HISTORY.md)
- [Commits](https://github.com/TuringLang/Turing.jl/commits/v0.47.1)

---
updated-dependencies:
- dependency-name: Turing
  dependency-version: 0.47.1
  dependency-type: direct:production
  dependency-group: all-julia-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file julia Pull requests that update julia code labels Aug 28, 2026
@github-actions

Copy link
Copy Markdown
Contributor

SliceSampling.jl documentation for PR #69 is available at:
https://TuringLang.github.io/SliceSampling.jl/previews/PR69/

@yebai
yebai merged commit c49dfb6 into main Aug 28, 2026
9 checks passed
@yebai
yebai deleted the dependabot/julia/docs/all-julia-packages-f925fca2dd branch August 28, 2026 18:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file julia Pull requests that update julia code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant