Skip to content

v6.0.0

Compare
Choose a tag to compare
@streamich streamich released this 09 Dec 22:22
· 2067 commits to master since this release

6.0.0 (2021-12-09)

Bug Fixes

  • json-expression: 馃悰 correct equals operator (f108051)
  • json-pack: 馃悰 encode large number correctly (3cbb8a1)
  • json-random: 馃悰 improve random type generation (9e3b552)
  • json-type-codegen: 馃悰 use correct check for const (aa05f8b)
  • json-type-validator: 馃悰 correctly check boolean and number consts (75ec6b3)
  • json-type-validator: 馃悰 correctly validate "null" (fc48bfd)
  • json-type-validator: 馃悰 correctly validate number and string consts (404aafb)
  • json-type-validator: 馃悰 correctly validate string constants (f9dd247)
  • json-type-validator: 馃悰 don't check expra fields in empty objects (6d839a9)
  • json-type-validator: 馃悰 handle correctly boolean constants (5709d82)
  • json-type-validator: 馃悰 make "or" clause work again (d71dd68)
  • reactive-rpc: 馃悰 complete single message req calls immediately (81b1f69)
  • reactive-rpc: 馃悰 correct TypeScript errors (5893334)
  • reactive-rpc: 馃悰 support polymorphic stream functions (c2827a3)
  • reactive-rpc: 馃悰 use correct static method when reading streaming c (dc57dc9)
  • 馃悰 import hasOwnProperty() from shared location (61533a5)

Features

  • json-expression: 馃幐 add "between" operator support to evaluator (f082456)
  • json-expression: 馃幐 add "between" operators (1403dfd)
  • json-expression: 馃幐 add "cat" expression (561a639)
  • json-expression: 馃幐 add "cat" operation (9146080)
  • json-expression: 馃幐 add "defined" expression (d2e9ec1)
  • json-expression: 馃幐 add "if" operation (31aeb41)
  • json-expression: 馃幐 add "in" expression (be2e4e8)
  • json-expression: 馃幐 add "min" and "max" expressiosn (cf9be64)
  • json-expression: 馃幐 add "starts" expression (f99caa7)
  • json-expression: 馃幐 add "substr" operation (fcd6855)
  • json-expression: 馃幐 add "type" expression (b57f7d3)
  • json-expression: 馃幐 add context (e78ebbe)
  • json-expression: 馃幐 add math operations (7b9cb4b)
  • json-expression: 馃幐 add not equals operator (a07aaef)
  • json-expression: 馃幐 add number comparison expressions (ae1be14)
  • json-expression: 馃幐 add support for "contains" and "ends" expr (4cd5a74)
  • json-expression: 馃幐 add type conversion expressions (df461e7)
  • json-expression: 馃幐 improve "in" operator (c0852d1)
  • json-expression: 馃幐 improve context types (8423c38)
  • json-pack: 馃幐 expose integer encoding methods (bfb5ac9)
  • json-type: 馃幐 add optimizatoin annotations (ed50eed)
  • json-type: 馃幐 add validator properties (c3cbdc0)
  • json-type: 馃幐 improve types and builder (feba569)
  • json-type-serializer: 馃幐 add binary support for JSON serializer (dd34cb3)
  • json-type-serializer: 馃幐 add fast path for integer encoding (ca838d3)
  • json-type-serializer: 馃幐 add support for "any" type (2699daf)
  • json-type-serializer: 馃幐 add support for "enum" type (1755f81)
  • json-type-serializer: 馃幐 add support for "or" type (c4208db)
  • json-type-serializer: 馃幐 add support for "ref" types (ea9659f)
  • json-type-serializer: 馃幐 export JSON serializer (48ab1a0)
  • json-type-serializer: 馃幐 implement inital "str" serialization (cb37930)
  • json-type-serializer: 馃幐 improve "arr" and add "obj" serialization (836fd7f)
  • json-type-serializer: 馃幐 link in serialize method (e64704f)
  • json-type-validator: 馃幐 add ability to provide custom validator (df5543a)
  • json-type-validator: 馃幐 improve custom validators to allow throwin (a42475f)
  • util: 馃幐 add ability to name code-generated function (6863bba)
  • util: 馃幐 add asString() method (ffe6c9f)
  • util: 馃幐 add base64 encoder (2d0656c)
  • util: 馃幐 implement Codegen class (a9ab412)
  • util: 馃幐 improve asString() method (f7f0798)
  • util: 馃幐 improve Codegen API (336881f)
  • util: 馃幐 start codegen switch implementation (7333c95)
  • 馃幐 add "and" expression (7ddf2d0)
  • json-brand: 馃幐 add global type definition (8237fc4)
  • json-brand: 馃幐 vendor JSON brand library (84297f8)
  • json-expression: 馃幐 add "ends" expression (cc5f6d3)
  • json-expression: 馃幐 add "in" operand (cf7f6a0)
  • json-expression: 馃幐 add "matches" expression (abf53f9)
  • json-expression: 馃幐 add "min" and "max" expressions (7518a39)
  • json-expression: 馃幐 add "mod" expression (f920239)
  • json-expression: 馃幐 add "substr" expression (43d2272)
  • json-expression: 馃幐 add codege support for "ne" expression (4e04425)
  • json-expression: 馃幐 add default value for get expression (1042267)
  • json-expression: 馃幐 add ends() and contains() helpers (843222e)
  • json-expression: 馃幐 add equality comparators (babf9b8)
  • json-expression: 馃幐 add rounding expressions (8e7451c)
  • json-expression: 馃幐 add support for "not" expression (ae9c3bf)
  • json-expression: 馃幐 begin codegen implementation (9e6ea71)
  • json-expression: 馃幐 bring evaluator to feature parity (e5b3c5d)
  • json-expression: 馃幐 implement "and" expression (8cdc133)
  • json-expression: 馃幐 implement "bool" expression (5af82fb)
  • json-expression: 馃幐 implement "contains" expression (1501d4a)
  • json-expression: 馃幐 implement "defined" expression (abcb625)
  • json-expression: 馃幐 implement "if" expression (6675495)
  • json-expression: 馃幐 implement "int" expression (d2d52f6)
  • json-expression: 馃幐 implement "num" expression (7fc6aac)
  • json-expression: 馃幐 implement "or" expression (5dccfce)
  • json-expression: 馃幐 implement "str" expression (afab884)
  • json-expression: 馃幐 implement "type" expression (be8aaeb)
  • json-expression: 馃幐 implement arithmetic operands (7db93be)
  • json-expression: 馃幐 implement codegen for "get" expression (02bd3f8)
  • json-expression: 馃幐 implement codegen for "start" expression (68f2c8a)
  • json-expression: 馃幐 improve operand count error messages (5b3fc51)
  • json-pointer: 馃幐 implement get() method (81691de)
  • json-pointer: 馃幐 use .hasOwnProperty() from prototype (fd59781)
  • json-random: 馃幐 add methods to generate specific type (2ce945d)
  • json-random: 馃幐 implement random generator according to json-type (e84665c)
  • json-random: 馃幐 respect integer types (63dec85)
  • json-type: 馃幐 add "enum" type (2c48b6e)
  • json-type: 馃幐 add "or" type and move to new file (08d3767)
  • json-type: 馃幐 add "ref" type (63dd6c5)
  • json-type: 馃幐 add basic json-type to TypeScript output (709defe)
  • json-type: 馃幐 add comment props (1a27b99)
  • json-type: 馃幐 add unknownFields property (3b3208b)
  • json-type: 馃幐 export types (df04b58)
  • json-type: 馃幐 group types better (bd17d1d)
  • json-type: 馃幐 implement recursive references for full validator (f7c6f6d)
  • json-type: 馃幐 implement recursive type refs (68c5f71)
  • json-type: 馃幐 improve builder to easily add type names (0e558cf)
  • json-type: 馃幐 improve type definitions (a00e814)
  • json-type: 馃幐 improve types (5884bd4)
  • json-type: 馃幐 simplify object field creation (b428984)
  • json-type: 馃幐 support JSON serialization (6a7a14e)
  • json-type-codegen: 馃幐 add ability to disable errors (81c8eab)
  • json-type-codegen: 馃幐 add ability to skip object check (7c8c6e5)
  • json-type-codegen: 馃幐 allow skipping extra field check (dbd1e52)
  • json-type-codegen: 馃幐 implement different types of error reporting (dbe01d9)
  • json-type-codegen: 馃幐 implement object and one-of validation (ded2193)
  • json-type-codegen: 馃幐 implement validation for arrays (66d1d27)
  • json-type-codegen: 馃幐 implement validation for basic types (0dc0851)
  • json-type-codegen: 馃幐 improve error reporting (0775887)
  • json-type-codegen: 馃幐 support unknown fields in serializ (f8588ff)
  • json-type-codegen: 馃幐 use boolean error reporting by default (ff00ea6)
  • json-type-schema: 馃幐 add ability to generate defs (bb4c4f9)
  • json-type-schema: 馃幐 implement json-type to JSON Schema converter (0e50d9c)
  • json-type-serializer: 馃幐 add support for recursive refs to JSON (88aabe0)
  • json-type-serializer: 馃幐 support partial serializer as ref (3b5dc4b)
  • json-type-system: 馃幐 add ability to convert json-type to JSON Sch (6b72273)
  • json-type-system: 馃幐 add ability to export the whole type system (0275958)
  • json-type-system: 馃幐 add MessagePack serializer (5fde08b)
  • json-type-system: 馃幐 add namespaces support (1917b04)
  • json-type-system: 馃幐 add support for array and numbers (30c8719)
  • json-type-system: 馃幐 add support for TypeScript type literals (79eb181)
  • json-type-system: 馃幐 add support for unknown fields (ddadc3c)
  • json-type-system: 馃幐 add TypeScript comments for interface decls (907afab)
  • json-type-system: 馃幐 add TypeScript comments support for propertie (a58b564)
  • json-type-system: 馃幐 do not re-declare already declared types (47aabf2)
  • json-type-system: 馃幐 emit TypeScript text for all AST nodes (2b7bc19)
  • json-type-system: 馃幐 enable auto-completion for types (b832832)
  • json-type-system: 馃幐 export TypeScript declarations (5387174)
  • json-type-system: 馃幐 start TypeScript AST to text converter fn (fe4ccce)
  • json-type-system: 馃幐 support comments for type declarations (7752860)
  • json-type-system: 馃幐 support custom validators and fix full valid (de6fad5)
  • json-type-system: 馃幐 support TypeScript module nesting (7f66df3)
  • json-type-validator: 馃幐 add support for "any" type (d3821ba)
  • json-type-validator: 馃幐 add support for "enum" type (7185e61)
  • json-type-validator: 馃幐 add support for integers (ee5a445)
  • json-type-validator: 馃幐 add support for minLength and maxLength (f1639ea)
  • json-type-validator: 馃幐 add support for refs (703572e)
  • json-type-validator: 馃幐 allow object keys of "any" type (3494d60)
  • json-type-validator: 馃幐 implement "or" type in loop with consts (92e5da6)
  • json-type-validator: 馃幐 improve "ref" type validation errors (b7cd720)
  • json-type-validator: 馃幐 improve public interface (4c9861f)
  • json-type-validator: 馃幐 support validation of different int types (952335a)
  • reactive-rpc: 馃幐 add ability for binary messages to encode msgpack (1aa0094)
  • reactive-rpc: 馃幐 add binary msgpack message encoder (eba7b9b)
  • reactive-rpc: 馃幐 add compacted json_string message encoder (b0dcefe)
  • reactive-rpc: 馃幐 add polymorphic rpc methor return types (5092490)
  • reactive-rpc: 馃幐 construct JSON messages in JSON server (497dea5)
  • reactive-rpc: 馃幐 dont wrap in array a single message (f3dbec4)
  • reactive-rpc: 馃幐 implement JSON messages (244dc1b)
  • reactive-rpc: 馃幐 implement polymorphic ApiCaller methods (db2f0c6)
  • reactive-rpc: 馃幐 implement RpcServerJson and RpcServerMsgPack (900e4d9)
  • reactive-rpc: 馃幐 improve RPC method wrappers (49ab49b)
  • reactive-rpc: 馃幐 remove timeout tracking feature (75c47d7)
  • reactive-rpc: 馃幐 start json message implementation (2aada7c)
  • reactive-rpc: 馃幐 support static polymorphic calls in RpcServer (3f0f8d6)
  • reactive-rpc: 馃幐 use binary RpcServer in ws compact binary mode (4399322)
  • reactive-rpc: 馃幐 use RpcServerMsgPack in binary WebSocket server (18f46c5)
  • reactive-rpc: 馃幐 use shared encoder and decoder (12a5771)
  • reactive-rpc: 馃幐 use specialized encoders in ws compact rpc (36dd21a)
  • util: 馃幐 allow to provide codegen params at last step (756c525)
  • util: 馃幐 improve code-generation types (f3be5fd)
  • util: 馃幐 vendor word wrap utility (16e1ac0)
  • 馃幐 add binary type to json-type (fb48c45)
  • 馃幐 add code generation for array (d3db9eb)
  • 馃幐 add compilation for basic types (df1044b)
  • 馃幐 add convenience getters to json-type builder (fcc3197)
  • 馃幐 add initial typing setup (e1be097)
  • 馃幐 add support for optional fields in objects (30453ff)
  • 馃幐 begin implementation of schema MessagePack serializer (c65e3c8)
  • 馃幐 implement boolean expressions (e8f6ba9)
  • 馃幐 improve JSON types (b5ee20e)
  • 馃幐 improve JSON types and add builder (a68d676)
  • 馃幐 improve json-type MessagePack encoding (ddfab64)
  • 馃幐 start json-expression implementation (3d441f5)

Performance Improvements

  • json-expression: 鈿★笍 add benchmark (08a0eaa)
  • json-pointer: 鈿★笍 use hasOwnProperty() literal (f26a1d6)
  • json-type-codegen: 鈿★笍 add benchmark (10093a9)
  • json-type-codegen: 鈿★笍 emit octets in chunks (4d0e260)
  • json-type-codegen: 鈿★笍 emit octets on optional object keys (d616407)
  • json-type-codegen: 鈿★笍 improve json-type validator performance (455df96)
  • json-type-codegen: 鈿★笍 improve optional object field check (758b461)
  • json-type-codegen: 鈿★笍 optimize case for simple primitives (416373a)
  • json-type-codegen: 鈿★笍 write directly to Uint8Array (94eedcb)
  • json-type-serializer: 鈿★笍 add MsgPack optimization for ASCII enc (0c99c55)
  • json-type-serializer: 鈿★笍 add support for "noJsonEscape" (8f75ca3)
  • json-type-system: 鈿★笍 remove unused argument (cb3a218)
  • util: 鈿★笍 generate 64 x 64 table in Base64 encoding (43447e2)
  • util: 鈿★笍 make word wrap return a list of lines (0e07b32)
  • util: 鈿★笍 optimize base64 encoder (5f685c6)
  • util: 鈿★笍 optimize base64 encoder performance (ea64208)

BREAKING CHANGES

  • reactive-rpc: 馃Ж Streaming Reactive-RPC do not track inactivity timeout anymore.