⚠️ v2026.5.8.2 is a no-op re-release of v2026.5.8.1 — same code, second release dispatched the same day to validate updated release-pipeline gates. The full set of changes shipped on 2026-05-08 follows.
PyAutoFit v2026.5.8.2
What's New
Breaking Changes
- feat: add BlackJAXNUTS first-class non-linear search (#1256)
- Visualizer.visualize_combined: accept quick_update kwarg (#1254)
- Tiny additive signature change on a single method.
Visualizer.visualize_combinednow declaresquick_update: bool = Falseso callers may pass it (the factor-graph dispatch always does). Default no-op behaviour is preserved; subclasses that already override the method without**kwargsget unblocked. See full details below.
- Tiny additive signature change on a single method.
- Fix AnalysisFactor.visualize_combined dispatch in FactorGraph (#1253)
- Support fixed Array elements through the EP fitting pipeline (#1250)
- Add EPAnalysisFactor for cavity-message injection (#1248)
- Added
af.EPAnalysisFactor— anAnalysisFactorsubclass with aset_cavity_dist(cavity_dist)hook that the EP optimiser invokes before every fit, attaching the cavityMeanFieldtoanalysis._cavity_mean_fieldso the user'slog_likelihood_functioncan read per-variable cavity messages (.mean,.sigma) at evaluation time. No symbols removed, renamed, or behaviour-changed for existing factors. See full details below.
- Added
Bug Fixes
- fix: populate NUTS samples_info keys under test-mode bypass (#1260)
Internal
- fix: stop passing dataset=None to fit_cls when sensitivity Job is complete (#1259)
- refactor: replace os.path with pathlib (#1258)
- Refresh cached SearchUpdater when AbstractSearch.paths is reassigned (#1252)
- docs: update workspace prose refs from README.rst to README.md (#1251)
- docs: convert remaining prose .rst to MyST .md (pass 2) (#1249)
- test: delete jax-using unit tests (moved to autofit_workspace_test) (#1247)
- docs: convert prose .rst files to MyST .md (#1246)
Full changelog: 2026.5.1.4...2026.5.8.2