Skip to content

Instantly share code, notes, and snippets.

@WardBrian
Last active December 3, 2024 20:28
Show Gist options
  • Save WardBrian/3d65482ca6fe2d91cd29689342538c91 to your computer and use it in GitHub Desktop.
Save WardBrian/3d65482ca6fe2d91cd29689342538c91 to your computer and use it in GitHub Desktop.
Release Notes 2.36
- No longer force fix_param when model has no parameters. (#1288)
- Updated stansummary to use split, rank-normalized Rhat and ESS. (#1301)
- Fixed stansummary crashing if it is run on a csv file without any `__` columns (#1283)
- Fixed stansummary not rebuilding when a dependent file changes (#1283)
- Removed support for adding makefile variables in `~/.config/stan/make.local`. Use the `make/local` file in the CmdStan directory instead. (#1282, #1284)
- Windows: Don't try to copy tbb.dll if TBB_TARGETS is undefined. (#1285)
Breaking changes:
- Removed deprecated `_log()` probability functions. (#2995)
- Moved constraint transforms to their own folder. (#3039)
- Updated arena_matrix to use move semantics. (#2928)
- Un-vendored a great many unused boost libraries. (#3129)
- C++17 is now required.
Other changes:
- Added `sum_to_zero_constrain`, `sum_to_zero_free`, and `check_sum_to_zero`. (#3101)
- Added beta_neg_binomial_lpmf. Allows modeling heavy-tail count data. (#3108)
- Added beta_neg_binomial_lccdf. (#3114, #3118)
- Added beta_neg_binomial_lcdf. (#3116)
- Added beta_neg_binomial_cdf. (#3120)
- Added beta_neg_binomial_rng. (#3126)
- Added overloads for tuples of bounds to `lub_free` and `lub_constrain`. (#3087)
- Added error checking functions for row/column stochastic matrices. (#3095)
- Added constructor to vari for passing initial values and adjoints. (#3089)
- Improved efficiency of `finite_diff_gradient_auto`. (#3096)
- Functions concerned with the number of entries in a container (`size`, `cols`, `rows`, ...) now consistently use `long int` as their return type. (#3086)
- Removed support for adding makefile variables in `~/.config/stan/make.local`. Use the `make/local` file in the Math directory instead. (#3090)
- Fixed an indexing bug inside gp_matern32_cov. (#3084)
- Fixed the new `wiener_lpdf` overloads evaluating their expression template arguments more than once. (#3112)
- Fixed some failures to compile calls to `pow` when using libc++ 19. (#3110)
- Updated templated complex functions in the Stan math library to be better candidates than the standard library functions during ADL. (#3122)
- Fixed a warning about a mismatched struct/class declaration from clang 18. (#3091)
- Fixed compilation of `fabs` with Apple Clang 15. (#3093)
- Fix Eigen issue [2852](https://gitlab.com/libeigen/eigen/-/issues/2852) so that Eigen's kronecker product type works with `value_type_t`. (#3124)
- Added de/serialization for the `stochastic_row_matrix` and `stochastic_column_matrix` types. (#3298, #3304)
- Added de/serialization for the `sum_to_zero_vector` type. (#3308)
- Relaxed restrictions on HMC to allow running when a model has no parameters. (#3071, #3303)
- Updated `rvalue()` functions that use `multi_index` to return an Eigen expression of multi indexing instead of eagerly creating a new matrix from the indices. (#3250)
- Improved error messages when user-specified initializations fail. (#3291)
- Fixed progress output formatting being inconsistent for the non-adaptive samplers. (#3296)
- Improved parsing of Stan CSV files to allow for getting MCMC sample from fixed_param and samples with saved warmup draws and to be able to correctly get ADVI sample. (#3311)
- Improved parsing of Stan CSV files when they contain nan or infinite values. (#3318)
- Added a new `stan::mcmc::chainset` object, exposing split-Rhat, split-ESS and Monte Carlo standard error diagnostics. This replaces the `chains<>` object. (#3312, #3313)
- Fixed a header include order issue that caused compilation with `-DSTAN_MODEL_FVAR_VAR` to fail for certain models. (#3294)
- Removed support for adding makefile variables in `~/.config/stan/make.local`. Use the `make/local` file in the Stan directory instead. (#3295)
- Removed code following the last round of syntax deprecations that is currently scheduled. The final one (use of `real` values in conditionals) is now a type error and can no longer be automatically canonicalized. (#1420)
- Added the `jacobian +=` statement, an analogue of `target +=` but which can be conditionally disabled by Stan's algorithms when a unadjusted estimate is required. (#1435, #1437, #1471)
- Added `stochastic_row_matrix` and `stochastic_column_matrix` transforms for matrix types. (#1442)
- Added the `sum_to_zero_vector` transform for vector types. (#1443)
- Added distribution: beta_neg_binomial, with corresponding lpdf, cdf, lcdf, lccdf, and rng functions. (#1452, #1459, #1467)
- Added all-vector signatures to the newer versions of `wiener_lpdf`. (#1451)
- `stanc.js` can now accept models which contain `#include` statements. A fourth argument is available on the javascript stanc function which must be either `undefined` or a object mapping included file names to Stan source code as strings. (#1433)
- Enabled OpenCL support for the `binomial_logit` and `binomial_logit_glm` distributions. (#1368)
- Fixed an issue where certain overloads of distributions could lead to the `~` statement producing uncompilable C++. (#1466, #1474)
- Fixed an issue where `operator/` was not generating the correct C++ for complex linear algebra types. (#1421)
- Fixed an issue where certain variable names would end up conflicting with system-specific macros in the generated C++. (#1429)
- Fixed an issue where void functions were not given the same checks as returning functions, leading to uncompilable C++ in some cases. (#1471)
- Updated parameter code generation to use `auto` so that the parameter types for matrices can be Eigen maps. (#1441)
- Rolled back js_of_ocaml to 5.4.0 for compatibility with QuickJS. (#1427)
- Added builds of `stanc.js` with pretty-printing and debug info. (#1440)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment