Release notes - 1.58
1.58.0
2024-11-13
Bug Fixes
- compiler: another use-case fix for ‘Cannot compile a When Block as no assignment type has been provided’ error (7efc779)
- compiler: fix bug where types are sometimes compiled with the wrong name (b3daa73)
- compiler: fix error thrown in expression types with when exception (ea0cfa1)
- compiler: fix expression compiler error (7a30834)
- compiler: fix generics resolution in varargs (821be90)
- compiler: fix grammar error preventing extension function following expression type (1f22d7a)
- compiler: fix out-of-bounds exception with varags and 0 params provided (8598e31)
- compiler: fix policies can’t declare docs (030b5ce)
- compiler: fix redeclaration of inline type causes stack overflow (a4a806b)
- compiler: fix type checks when an input is a lambda expression (ec48e08)
- compiler: fix types not checked correctly when using lambda type expression (ea28d43)
- compiler: return compilation error, not exception (cf36eda)
- compiler: Variable in constraint not resolved from given clause (66d937a)
- constraints: constraints on data in a projection should trigger search if the existing value does not satisfy the constraint (1e37c1f)
- constraints: fix bug where expression compiled as a constraint (5487763)
- core/params: standardize paramter handling of scopes and paths (foo.bar.baz). (751f106)
- core: a type is not scalar if it inhierts a non-scalar type (d94b27d)
- core: an expression type input thats referenced before its compiled was… (7538284)
- core: can’fix can’t use dot notation to access a property of an enum object (183cdb4)
- core: can’fix can’t use dot notation to access a property of an enum object (64c50fb)
- core: fix bug with variables not in scope when projecting an array (70df88c)
- core: fix error thrown when constructing an array of enums (c5b27b3)
- core: fix error when parsing date array (75599a0)
- core: fix exception in compiler when an invalid imported token is used in an expression (178b113)
- core: fix incorrect type checking of input to expression type (56b12b3)
- core: fix null pointer thrown when compiler error more appropraite (cee3fcf)
- core: fix parsing of simple array (f20adcf)
- core: fix traversal of method accessors (23ff059)
- core: fix type inferrence of generic variables for extension functions (2dbf94a)
- core: global scoped variables not passed along correctly (e772874)
- core: spread operator applied on streams (058c0b6)
- deps: bump commons-io (be11490)
- hocon: fix writing of
[@orbital](https://gitlab.com/orbital)
values in hocon (48f718a) - oas: oas-to-taxi now correctly generates enums (71d3da0)
- only show typeDoc in monaco hover when it’s available (4f410d5)
- openapi: fix error when producing an OAS for a query that returns void (d011b92)
- stdlib: fix mapping function not building objects (2fc02eb)
- stdlib: hasEnumNamed returning incorrect value when enum has value (6ba8fc5)
- stdlib: trim is an extension function (a600e75)
Features
- compiler: support spread operator on operation contracts (d1d7a6e)
- core: a parameter can have a default value referencing another parameter. (5f36648)
- core: enums may now have object values as well as primitive literals (c779171)
- core: languages may now have expressions, allowing definitions (49838b2)
- core: support constraints on expression type inputs (63a9aa1)
- linter: added linting warning if operation doesn’t specify contract (a1e0f98)
- stdlib: add Enum.hasEnumNamed() extension function (5a1ab5e)
- stdlib: add ExactlyOne() to stdLib (3333187)
- stdlib: add listOf() (20ccc07)
- stdlib: added .toRawType() and .intersection() (a875bc8)
- stdlib: added map function (f99f178)
- stdlib: made most stdlib functions extension functions to improve calling ergnomics (b2df758)