Files
ports/math/py-arviz-base/files/patch-src_arviz__base_____init____.py
2026-10-04 04:07:15 +00:00

52 lines
1.5 KiB
Python

-- Defer the numpyro converter imports until they are actually accessed, so that
-- importing arviz_base does not require jax/jaxlib. jaxlib is not available
-- as a usable package in FreeBSD Ports, and these converters are optional.
--- src/arviz_base/__init__.py.orig 2026-06-12 15:47:52 UTC
+++ src/arviz_base/__init__.py
@@ -13,14 +13,26 @@ from arviz_base.io_emcee import from_emcee
from arviz_base.io_cmdstanpy import from_cmdstanpy
from arviz_base.io_dict import from_dict
from arviz_base.io_emcee import from_emcee
-from arviz_base.io_numpyro import (
- from_numpyro,
- from_numpyro_svi,
- NumPyroInferenceAdapter,
- SVIAdapter,
- MCMCAdapter,
-)
from arviz_base.io_pystan import from_pystan
+
+
+def __getattr__(name):
+ if name in {
+ "from_numpyro",
+ "from_numpyro_svi",
+ "NumPyroInferenceAdapter",
+ "SVIAdapter",
+ "MCMCAdapter",
+ }:
+ from arviz_base.io_numpyro import (
+ from_numpyro,
+ from_numpyro_svi,
+ NumPyroInferenceAdapter,
+ SVIAdapter,
+ MCMCAdapter,
+ )
+ return locals()[name]
+ raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
from arviz_base.rcparams import rc_context, rcParams
from arviz_base.reorg import (
extract,
@@ -54,11 +66,6 @@ __all__ = [
"from_cmdstanpy",
"from_dict",
"from_emcee",
- "from_numpyro",
- "from_numpyro_svi",
- "NumPyroInferenceAdapter",
- "SVIAdapter",
- "MCMCAdapter",
# labels submodule
"labels",
# rcparams