Summary
As part of #212 (PyMC 6 / ArviZ 1 upgrade + conda removal), the pymc-marketing dependency was dropped because no released version supports PyMC 6 / ArviZ 1 (pymc-marketing currently pins pymc<6 and arviz<1). The two transform kernels pathmc used — geometric adstock and logistic saturation — are now vendored as plain pytensor implementations in pathmc/transforms.py (_geometric_adstock, _logistic_saturation).
Once pymc-marketing ships PyMC 6 / ArviZ 1 support, decide whether to delegate the built-in transforms back to pymc_marketing.mmm.transformers or keep the vendored kernels.
Upstream tracking: pymc-labs/pymc-marketing#2486 (compatibility issue) and pymc-labs/pymc-marketing#2616 (migration PR). Expected upstream ETA: end of July 2026.
Proposed work
- Watch for a pymc-marketing release with
pymc>=6 support.
- Evaluate whether delegating buys anything beyond the vendored ~30 lines (e.g. additional adstock/saturation variants worth exposing through the transform registry).
- If re-adopting: restore the dependency in
pyproject.toml, reinstate the xtensor bridging helpers, and remove the vendored kernels. If not: close this issue and keep the vendored implementations as the permanent home.
- Either way, verify numerical equivalence on the transform gate tests (
tests/test_transforms_*.py) and refresh any affected docs freeze caches.
Notes
This is not a release blocker for 0.1.0 — the vendored kernels are tested and behaviorally equivalent (truncated-at-l_max geometric adstock, same logistic saturation formula).
Summary
As part of #212 (PyMC 6 / ArviZ 1 upgrade + conda removal), the
pymc-marketingdependency was dropped because no released version supports PyMC 6 / ArviZ 1 (pymc-marketingcurrently pinspymc<6andarviz<1). The two transform kernels pathmc used — geometric adstock and logistic saturation — are now vendored as plain pytensor implementations inpathmc/transforms.py(_geometric_adstock,_logistic_saturation).Once pymc-marketing ships PyMC 6 / ArviZ 1 support, decide whether to delegate the built-in transforms back to
pymc_marketing.mmm.transformersor keep the vendored kernels.Upstream tracking: pymc-labs/pymc-marketing#2486 (compatibility issue) and pymc-labs/pymc-marketing#2616 (migration PR). Expected upstream ETA: end of July 2026.
Proposed work
pymc>=6support.pyproject.toml, reinstate the xtensor bridging helpers, and remove the vendored kernels. If not: close this issue and keep the vendored implementations as the permanent home.tests/test_transforms_*.py) and refresh any affected docs freeze caches.Notes
This is not a release blocker for 0.1.0 — the vendored kernels are tested and behaviorally equivalent (truncated-at-
l_maxgeometric adstock, same logistic saturation formula).