Language Features:
- New modules
- assert() - stop script evaluation on failed constraints
- let() - scoped assignment
- New functions
- ord() - convert from character to Unicode code point
- echo()
- assert() - stop script evaluation on failed constraints
- Type testing functions: is_undef(), is_list(), is_num(), is_bool(), is_string()
- New special variable: $preview variable which is set to true in preview mode
- List comprehension updates
- Added if/else condition
- Added each keyword
- Added C-style for loop
- Now allows looping over characters of a string
- rotate_extrude(): Added angle parameter to
- import() now supports SVG, 3MF and AMF
- color() now supports hex color codes
- Removed glide() and subdiv() which were never implemented
Program Features:
- Customizer: Allow parametrizing design parameters with GUI customization
- Support for using 3D-Mouse / Joystick / Gamepad input devices for controlling the 3D view
- 3D Printing support: Purchase from a print service partner or print to Octoprint
- New export file formats: SVG, 3MF, AMF
- Quick-edit and preview of values using Alt-Arrows (Shift-Alt-Arrows on macOS)
- Added --view cmd-line parameter
- Play sound notification on render complete
- Line numbers and filenames are now shown for many errors and warnings
- Hardwarning preference: Stop on first warning
- Hardwarning and assert now shows a stack trace
- New warnings
- Module call parameterns don't match module declaration
- Argument value of of range
- Duplicate passed argument
- Children passed to module not accepting children
- Reference to inknown $special_variables
- Duplicate assigment
- New translations: Ukrainian, Polish