This is a major release that introduces several new features, significant API changes, and a large number of bug fixes and minor improvements. Notable changes include:
- Support for Stan as the sampling back-end (in addition to PyMC3), via the PyStan package.
- Dropped support for the `add_term` API; all model specification is now done via formulas.
- Expanded support for arbitrary random effects specifications; any formula now supported by patsy can be passed in as the left-hand side of a random effects specification (e.g., previously, '(a\*b)|c' would not have worked).
- Completely refactored `Results` classes that no longer depend on PyMC3, providing a completely generic representation of sampler results, independent of any back-end.
- Refactored plotting and summary methods implemented on the abstract MCMCResults classes rather than at the back-end level.
- _Much_ better compilation and sampling performance for models that include random effects with many levels. In many cases, performance should now be comparable to the most efficient native implementations of the models in the respective back-ends.
- All random effects priors now use the "non-centered" parameterization by default, significantly reducing bias for some models.
- Improved naming conventions that are more consistent with other packages (e.g., random effects now include the '|' operator in term names).
- Refactored `Term` class, including a separate subclass for `RandomTerm`s, and a number of other associated changes to the internal object model.
- Updated documentation and notebooks, including two new notebooks featuring well-developed examples (datasets included).
- Improved handling of NA values in continuous columns.
- Support for flat priors everywhere (by setting `auto_scale=False`).
- Numerous bug fixes and minor improvements