Releases: nicklockwood/ShapeScript
Releases Β· nicklockwood/ShapeScript
1.6.3
- iOS Viewer now supports editing
.shape
files directly inside the app - Added
Edit > Select Shape
andClear Selection
menus in macOS viewer - Added selection hotkeys and VoiceOver support for macOS viewer
- Fixed selection being cleared whenever geometry is refreshed
- Fixed dynamic dark mode updates on iOS viewer
- Fixed iOS split view bounds crash
- Fixed bug where camera hotkeys failed after reload
- Fixed error overlay translucency
- Fixed various member type bugs
1.6.2
- Improved info panel display
- Fixed twisted extrusion offset
- Fixed roundrect detail level (previously 4x higher than intended)
- Fixed incorrect output when intersecting groups of meshes
- Empty scenes are no longer hidden if they contain debug geometry
- Scene now conforms to Equatable protocol
- Fixed misleading error message for excess color arguments
- Fixed spurious forward declaration error for options that shadow global define
- Added automatic casting of hex strings to colors (useful for JSON data)
- Made polygon members available on all geometries, not just manually-created meshes
- Excluded source location from Geometry equality comparisons
- Fixed vector member access on tuples containing string elements
- Fixed vector member access on nested numeric tuples
- Fixed color member access on tuples and strings
- Fixed polygon member lookup on meshes
- Fixed handling of blocks with optional children (e.g. polygon)
- Improved symbol lookup performance
- Bumped Euclid to version 0.6.8
1.6.1
- Added twist option to extrude command
- Fixed inconsistent view menu options when switching between open documents
- Bumped Euclid to version 0.6.7
1.6.0
- Added hull command for creating convex hulls from points, paths or other meshes
- Added mesh command for manually creating meshes from individual polygons
- Added axisAligned property for controlling extrusion along paths
- Added support for importing plain text files as a string and JSON files as a tuple
- Added modulo operator for calculating remainder of division
- Significantly overhauled type system to support lists, unions and objects
- Improved static analysis, allowing type errors to be caught earlier
- Improved handling of background property scope
- The min and max functions are now variadic (accept any number of arguments)
- Added split(), join() and trim() functions for working with strings
- Added automatic conversion of strings to numbers or boolean values where applicable
- Added string.lines, .words and .characters members
- Added tuple.count, .last, .allButFirst and .allButLast members
- Fixed member lookup on numeric literals
- Fixed bug where material of imported shapes could not be overridden
- Background and texture can now be cleared by setting them to an empty string
- Logging geometry values to console now produces more useful output
- Added proper logging for bounds and point values
- Added fileTimedOut and circularImport errors
- Refactored and improved error handling
- Renamed ImportError to ProgramError
- Raised minimum Euclid version to 0.6.6
- Added Spirals example
1.5.14
- Added support for C-style block comments using /* ... */ syntax
- Fixed bug where source file could incorrectly be inferred as UTF-7, causing parsing errors
- Fixed issue where error messages would sometimes suggest the same identifier you already used
- Improved script execution performance by making source location lookup lazy
- Bumped Euclid to version 0.6.6
1.5.13
- Fixed crash when importing external .shape files
- When error occurs in imported file, Cmd-E now opens that file instead of the main file
- Bumped Euclid to version 0.6.5
1.5.12
- Bumped Euclid to version 0.6.4 (includes fixes for single-point path crash and path extrusions)
- Fixed parsing ambiguity in tuple expressions where identifier is followed by opening paren
- Improved bounds accuracy for circle-based shapes
1.5.11
- Fixed source code view on iOS
- Fixed loading of external iCloud assets when file has not been downloaded
- ShapeScript now monitors changes to external textures, fonts and imports on iOS
- Original topology for imported models is now preserved, instead of being triangulated
- Improved error messaging for file imports
- Bumped Euclid to version 0.6.2
1.5.10
- Improved documentation for strings and trigonometry functions
- Fixed empty bounds returned for lathe, fill, extrude and loft shapes
- Fixed runtime warning about postscript font names
- Fixed range bug in error formatting logic
- Fixed inconsistent handling of functions that return tuples
- Fixed inconsistent member lookup handling
- Bumped Euclid to version 0.6.0
- Fixed Linux build warnings
1.5.9
- Fixed getting started link in Welcome modal
- Removed bad suggestions from editors list
- Added iOS target for ShapeScript Viewer