Skip to content

Commit dc99e6f

Browse files
author
Nicusor Serban
committed
Add release notes
1 parent d5c25b6 commit dc99e6f

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

RELEASE-NOTES.txt

+34
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,40 @@
11
STANC3 RELEASE NOTES
22
======================================================================
33

4+
v2.33.0 (5 September 2023)
5+
======================================================================
6+
7+
- Added tuple types to the language (#1100)
8+
- The following deprecations have been turned into errors this version:
9+
- The old array syntax, e.g. `int arr[5];`. Use `array[5] int arr;` instead.
10+
- Distribution functions ending in `_log`. Use either `_lpdf` or `_lpmf`.
11+
- The functions `binomial_coefficient_log`, `multiply_log`, and `cov_exp_quad`. Use `lchoose`, `lmultiply`, and `gp_exp_quad_cov` respectively.
12+
- The `if_else` function. Use the ternary operator `cond ? true_value : false_value`
13+
- Use of CDFs with a `,` between the first and second argument. Use a `|`.
14+
- Comments beginning with `#`. Use `//`.
15+
- Use of `<-` for assignment. Use `=`.
16+
- The `increment_log_prob` function. Use the `target +=` statement.
17+
- The `get_lp()` function. Use `target()`.
18+
- The use of nested multi-indices on the left hand side of an assignment statement.
19+
For this version, these can all be automatically updated with the `--canonicalize=deprecations` argument to the autoformatter. This is not guaranteed to work for versions _following_ this one.
20+
Additionally, the following identifiers are now reserved words: `array`, `offset`, `multiplier`, `lower`, and `upper`.
21+
(#1287)
22+
- Exposed vectorized signatures for `log_sum_exp` (#1344)
23+
- Exposed new functions `qr`, `qr_thin`, `eigendecompose_sym`, `eigendecompose`, `complex_schur_decompose`, `svd`, and `csr_extract`. (#1346)
24+
- Added a `log_prob_impl` specialization specifically for reverse mode to improve code generation (#1327)
25+
- Fixed an issue where returning array literals could produce the wrong types in C++. (#1335)
26+
- Fixed an issue with leading zeroes in real literals like `0E0` (#1336)
27+
- Fixed a bug with type promotion in the arguments to user-defined distributions generating bad C++. (#1338)
28+
- Fixed optimization logic for deducing whether mixes of scalars, data matrices, and autodiff matrices can be promoted to SoA (#1347)
29+
- Fixed an issue with the partial evaluator crashing on statements containing a mod-by-zero. (#1351)
30+
- `--filename-in-msg` now also affects the name of the file shown in runtime exceptions. Useful for interfaces which use mangled or temporary names during compilation. (#1339)
31+
- Improved error message provided when the wrong return type is returned from a function.
32+
Return statements now follow the same type promotion rules as assignment and function argument passing.
33+
The typechecker now allows infinite loops (`while (1)` without an internal `break`) to be the end of a returning function. Previously, an (unreachable) return statement was needed following the loop.
34+
(#1341)
35+
- Improved error messages for unsupported type in reduce_sum (#1332)
36+
- Improved error messages when using a reserved word as a variable name. (#1343)
37+
438
v2.32.1 (2 May 2023)
539
======================================================================
640

0 commit comments

Comments
 (0)