Skip to content

v2026.4.13.3

Choose a tag to compare

@Jammy2211 Jammy2211 released this 13 Apr 08:35
· 18 commits to main since this release

PyAutoGalaxy v2026.4.13.3

What's New

Breaking Changes

  • refactor: rename env vars to PYAUTO_* prefix (#343)
    • One env var rename. Quantity visualizer now controlled by PYAUTO_SKIP_VISUALIZATION instead of PYAUTOFIT_TEST_MODE. See full details below.
  • fix: give each basis independent ell_comps in mge_model_from (#342)
      • New parameter: centre_per_basis: bool = False on mge_model_from — when True, each basis gets independent centre priors
      • Behaviour change: mge_model_from with gaussian_per_basis > 1 now produces independent ell_comps per basis (was previously tied). Calls with gaussian_per_basis=1 are unchanged.
  • refactor: merge PYAUTO_DISABLE_CRITICAL_CAUSTICS into PYAUTO_FAST_PLOTS (#340)
    • Environment variable only — no Python API changes. PYAUTO_DISABLE_CRITICAL_CAUSTICS is retired; set PYAUTO_FAST_PLOTS=1 instead to skip both tight_layout() and critical-curve/caustic overlay computation. Callers that only set PYAUTO_DISABLE_CRITICAL_CAUSTICS will no longer skip overlays — they must migrate to PYAUTO_FAST_PLOTS=1.
    • Paired PyAutoBuild PR removes the retired flag from the release workflow, default env vars, and docs. A follow-up workspace sweep will remove it from the autofit/autogalaxy/autolens workspace env_vars.yaml, run_scripts.sh, and CLAUDE.md files.
  • feat: reinstate title_prefix on all matplotlib subplot panel titles (#333)
  • refactor: remove integral-based deflection/potential methods from mass profiles (#324)
    • The following methods are removed from mass profile classes:
      • deflections_2d_via_integral_from — removed from Gaussian, Sersic, SersicGradient, NFW, gNFW, gNFWSph
      • deflection_func — removed from Gaussian, Sersic, SersicGradient, NFW, gNFW

New Features

  • docs: update Python version to 3.12-3.13 (#346)
  • perf: defer matplotlib imports and lazy-load plot submodule (#330)
  • perf: cache cosmology distances and cap MGE gaussians for smoke tests (#329)
  • feat: PYAUTO_DISABLE_CRITICAL_CAUSTICS env var to skip curve computation (#325)

Bug Fixes

  • fix: re-export subplot_interferometer_dataset from autogalaxy.plot (#337)
  • Fix cosmology distance cache breaking JAX JIT tracing (#334)
  • fix: correct stale module paths in docs API (#319)

Internal

  • build: add Python 3.13 to CI matrix (#345)
  • build: raise astropy cap, update JAX Partial imports for 0.5+ compat (#344)
  • Retire main_build: check out PyAutoFit main in CI (#338)
  • Expose dataset_util via autogalaxy.util.dataset (#336)
  • Remove Copilot dispatch workflow (#335)
  • perf: remove unused astropy.modeling import from convert.py (#331)
  • perf: skip savefig in _save_subplot when PYAUTO_FAST_PLOTS=1 (#328)
  • refactor: import is_test_mode from autoconf (#327)
  • feat: use tight_layout wrapper for PYAUTO_FAST_PLOTS support (#326)
  • perf: reduce unit test runtime from 82s to 28s (#322)
  • Use centralized is_test_mode() from PyAutoFit (#320)
  • Add ReadTheDocs config with Python 3.12 (#318)
  • Drop Python 3.9-3.11, add 3.13 (#317)

Upstream Changes

PyAutoFit

  • refactor: replace search YAML config with explicit Python defaults (#1202)
  • fix: guard interpolator and grid search against edge cases (#1201)
  • docs: update Python version to 3.12-3.13 (#1199)
  • build: add Python 3.13 support (#1198)
  • build: raise scipy cap, relax threadpoolctl and SQLAlchemy pins (#1197)
  • fix: bump scipy cap to <=1.15.2 (#1196)
  • refactor: separate PYAUTOFIT_TEST_MODE into distinct PYAUTO_* env vars (#1195)

PyAutoArray

  • fix: guard zoom_array against non-autoarray mask objects (#270)
  • build: add Python 3.13 to CI matrix (#268)
  • build: raise caps on scipy, astropy, scikit-image, scikit-learn (#267)
  • fix: bump scipy cap to <=1.15.2 (#266)
  • refactor: rename env vars to PYAUTO_* prefix (#265)
  • Guarantee GaussianKernel regularization matrix is PD (#264)
  • refactor: clamp brightest_coordinate_in_region_from to array bounds (#263)
  • fix: add _mappings_sizes_weights_split to InterpolatorRectangular (#262)
  • Add should_simulate utility for auto-simulation with small datasets (#261)
  • feat: add title_prefix support to subplot_imaging_dataset (#260)
  • perf: defer scipy imports to reduce import time (#259)
  • perf: skip radial bins computation when PYAUTO_WORKSPACE_SMALL_DATASETS=1 (#258)
  • perf: force over_sample_size=2 when PYAUTO_WORKSPACE_SMALL_DATASETS=1 (#257)
  • fix: import is_test_mode from autoconf instead of autofit (#256)
  • perf: skip savefig rendering in PYAUTO_FAST_PLOTS mode (#255)
  • feat: add tight_layout wrapper with PYAUTO_FAST_PLOTS env var (#254)
  • feat: PYAUTO_WORKSPACE_SMALL_DATASETS env var for fast smoke tests (#253)
  • perf: speed up unit tests 63% by removing JAX from triangle tests (#252)
  • Use centralized is_test_mode() from PyAutoFit (#250)
  • Drop Python 3.9-3.11, add 3.13 (#249)

Full changelog: 2026.4.5.3...2026.4.13.3