Releases: JairusSW/json-as
Releases · JairusSW/json-as
v1.3.2
Changes
- release: v1.3.2 (c23d691)
- rebuild benches (9b57246)
- feat: add fast_double_parser float path (ceecc17)
- fix: run windows transform build via wineconsole (9b3625c)
- chore: fix size calculation (efa68d3)
- chore: update benches (3b417a3)
- bench: add small-range charts and incremental runtime default (461328f)
- revert (e2817a5)
- perf: keep split-tuned swar string deserializer (104a081)
- bench: add swar string head2head and update throughput benches (887a5f0)
- chore: properly calculate bytes for json payloads and expand ranges (25e0055)
- chore: standardize benches to UTF-8 (wire format) instead of WTF-16 to calculate bytes/s (85d1b10)
- chore: normalize benches (6621dcb)
- bench: update (2293ef6)
- perf: streamline serializer delimiter writes (bf801e3)
- bench: fix calculations for large-file (1ba5962)
- chore: add more benches (efb5a39)
- push (613e5fa)
- laptop keeps crashing. switching to workstation (0fb686a)
- chore: update .gitignore (e1f7003)
- perf: huge gains (9aa57c9)
- refactor: clean up deserialization flow (b6b7a60)
- perf: optimize fast-path nested array deserialization (425836b)
- fix(transform): restore strict fast-path deserialization correctness (ff215ca)
- chore: ignore as-test artifacts except runners and snapshots (e21f0d1)
- test: update local repro harness for map key round-trip case (b58b1b5)
- docs: remove FAST_PATH_DESERIALIZE and track follow-ups in TODO (6cf0be2)
- chore: merge TODO files and document compatibility matrices (258c6ad)
- feat: support generic map key round-trips via quoted key encoding (714a66a)
- feat: expand fast-path and delegated array deserialization support (f546480)
- feat: extend fast-path deserialization coverage (add0e9a)
- chore: remove nocheck flag (d5783d9)
- fix: repair full benchmark suite (6e6083a)
- chore: capture current serializer, tooling, and fuzz work (096c613)
- remove npm from release (7bba414)
- ci: fix scropt issue (387efba)
- chore: link docs and update as-test (d038cab)
v1.3.1
Changes
- release:v1.3.1 (6168e4d)
- release: v1.3.1 (3e7debb)
- fix: stabilize transform state across repeated compilations (2409f19)
- fix: resolve stdlib base class inheritance in transform (5b9f8d2)
- fix: stabilize bs scoping and subclass serialization (1940467)
- docs: document built-in subclass overrides (31a43ce)
- test: expand custom serializer coverage (352f9e0)
- feat: support nullable custom JSON shape hints (2cc2b6e)
- feat: add JSON shape hints for custom serializers (d1ce1d9)
- feat: support explicit custom typed-array subclass overrides (615dc05)
- chore: remove stale swar string comment (a50972a)
- perf: pack unicode escape hex emission with swar (8c0e4ed)
v1.3.0
Changes
- chore: update changelog (c15775f)
- release: v1.3.0 (2017f4d)
- Update changelog for lint and project cleanup (7303a22)
- Fix linting and update project files (1a5639b)
- chore(deps): bump prettier in the minor-and-patch group (1c22616)
- fix: add typed array and ArrayBuffer helpers (da4147e)
- fix: finish subtype-aware StaticArray deserialization (27e23ae)
- Fix default-path runtime correctness (94a1203)
- test: cover tiny payload boundaries (63964af)
- test: expand feature and runtime coverage (197efd3)
- docs: update readme (d0cbd06)
- perf: remove hand-tuned bench (b2b3bf4)
- chore: remove old benches (bf27f08)
- build: move benchmark publishing to local workflow (87c5a62)
- revert: restore wasmtime installer workflow step (957166f)
- fix: restore simd dispatch in mode wrappers (e8ff136)
- fix: install wasmtime from github releases in ci (aa023d8)
- fix: preserve generated charts in benchmark docs publish (43ec4d2)
- fix: skip mode-specific benches in incompatible builds (43758dd)
- ci: fix workflows (95a2844)
- fix: keep non-SIMD bench builds free of SIMD code (86736d3)
- perf: use handwritten generic float deserialization (578da4d)
- perf: speed up float field deserialization (0c67ec5)
- refactor: centralize serialize and deserialize dispatch (5e8d4ee)
- perf: optimize integer array deserialization (1062250)
- perf: add SIMD fast-path string field deserialization (2ae4db7)
- perf: use fast path for benches (2750894)
- docs: add object (de)serialization throughput over payload size charts (0249817)
- chore: remove old benches (1cef076)
- refactor: split numeric deserializers and field parsers (205d103)
- perf: tune string deserialization paths (03c5c8a)
- Tune fast-path string deserialization and benches (4e69ea3)
- perf: medium.spec.ts should be doing more work (2e60318)
- HOLY FUCKKK ITS SO FAST (bcea316)
- lint: lint and format everything (97390b7)
- deps: update to as-test@1.0.1 (47a2ad0)
- bench: bool fields should also validate false (4de4474)
- perf: add updated hand-tuned benches (2d5897a)
- Gate and streamline generated deserialize paths (de6450d)
- chore: add more utils (c403c75)
- perf: optimize string scanning deserializer (3d71f6e)
- perf: ship first draft of optimized struct parsing (190e9dd)
- chore: lint (2e90daa)
- perf: faster deserialization codegen (5cfdbf8)
- perf: use faster hand tuned bench (afa1cb2)
- dev: prototype hot path code generation (ff19c97)
- tests: use wasmtime as runner instead of node (87706ac)
- tests: disable exception handling (3648c83)
- deps: remove try-as (cca496b)
- perf: work around gc by using raw heap for temporary buffer (db11302)
- psh (68dab28)
- psh (f91e3fa)
- push (ad4d34d)
- chore: remove extraneous files (c296fa5)
- chore: update tests (5a74029)
- ci: update test workflow (b9e3ac8)
- tests: switch over to as-test instead of minimal test harness (40fdecf)
- compat: add compatability between json-as and try-as (b6e1259)
- chore: remove unneeded dependencies (fdd773b)
- chore: format and update eslint (9855611)
- chore: update eslint and prettier (7877660)
v1.2.6
Changes
- release: v1.2.6 (7dbc362)
- chore: rebuild transform (6ba9226)
- chore: update changelog (09feca0)
- Add as contributor (09a4f06)
- fix missing closing bracket after merge from main (d85eea9)
- chore: update benches (ee72e41)
- tests: massively expand coverage across all spec files (ac7a5e0)
- Optimize token bench fast serialize/deserialize paths (701bf1a)
- chore: update benchmarks (30b3d3f)
- fix: properly cast type (3068cd0)
- chore: commit remaining repository changes (149b4bb)
- fix: resolve eslint issues for d8 benches and ts vars (0b6d0f6)
- chore: add more benches and script helpers (75b8575)
- fix: arbitrary nested arrays (deeb3bd)
- chore(ci): bump oven-sh/setup-bun from 1 to 2 (81e48ec)
- chore(deps): bump eslint from 9.39.2 to 10.0.0 (8eb5a80)
- patch: use safe mode for now during swar escape detection (521bd80)
- release: v1.2.5 (5ce06f0)
- chore(ci): bump actions/checkout from 3 to 6 (0400127)
v1.2.5
v1.2.4
Changes
- chore: add todo because i forget (8211e31)
- fix: allow Set to occur within an object and optimize object performance (bf8efba)
- chore: update staticarray (f328205)
- feat: add set serialization (a4f3b4c)
- chore: add basic support for Set and StaticArray (5b8d6b7)
- chore: conform to eslint rules (c05db7a)
- chore: correctness and minor issues (7ffd841)
- fix: entire transformer state should be reset after transformer is finished (c0cf9c7)
- chore: adhere to strict mode rules (aa2aa93)
- fix: remove debugging artifact within serialize_string_swar (e6a35e8)
- docs: make sure table of contents is collapsible (559a288)
- chore(ci): bump actions/setup-node from 2 to 6 (039de2c)
- docs: update readme (8dd538e)
- docs: update readme with architecture and contributing guide (89eecb7)
- perf: reduce cache size from 4096 to 1024 entries (d206cdf)
- perf: utilize an Exponential Moving Average factor for buffer resizing (c7e8608)
- chore: enable and configure ESLint (1773945)
- ci: add release.yml (913b3c2)
- docs: add contributing.md (c4451f4)
- docs: add in-depth architecture definition (2a2c1bb)
- fix(deserialize): syntax error within JSON.parse function (9d05045)
- chore: remove sponsors (c84cadb)
- chore: remove deprecation section in publish.sh (84c42b5)
- chore: add funding section (a7e5cc1)
- chore: add funding (c760a6d)
- chore: add sponsors files (0fdb779)
- chore: update license (d3f5d5f)
- fix: arena allocator should not allocate room when disabled (d56b66d)
- perf: small tweaks targeting cache prediction (e1525ab)
- perf: prefer non extensive surrogate checking unless nessecary (193bb38)
- docs: add js to benchmarks (18af41f)
- edit: change chart04 to deserialization (593a917)
- chore: re-add js bench (df9945b)
- release: v1.2.3 (ad54b8a)
- perf: add unicode-compliant naive, swar, and simd deserialization (30bf556)
- perf: cheat OOB by ensuring enough space. ~21% performance increase (8a9fe5a)
- tests: update (d3150e4)
- chore: semi-optimized wtf-16 compliant string serialization (836cc89)
- feat: handle wtf-16 string naive serialization (8bd83c4)
- feat: faster swar strings (11461bf)
- feat: jank ass surrogate handling (baf3132)
- feat: add support for surrogates and code units (61c0253)
- release: v1.2.2 (d7b2eb3)
- chore: update chart02 (550fdc8)
- chore: update benches (f36df90)
- feat: add full support for value'd boxes (731c837)
- test: add deserialization tests of nullable boxed values (6173636)
- docs: update readme (21ca003)
- feat: add support for boxed and reboxed
JSON.Value(cbfe1a9) - chore: update readme (fc750d1)
- feat: support deserialization of nullables in
JSON.Value(f92d292) - feat: support the serialization of null within
JSON.Value(c7000e0) - feat: add preliminary support for swar codepoint handling (fade463)
- perf: 6GB/s+ strings! (ded7897)
- ci: rebuild charts (569a35f)
- docs: create different charts (c8eea24)
- perf: rewrite SWAR id (4ef04dd)
- release: v1.2.2-beta.1 (2e6126e)
- chore: reduce package size 10x (99952cb)
- release: v1.2.1 (8f39ec7)
- chore: update chart link (2f31f83)
- release: v1.2.0 (e62c20a)
- docs: update readme (f3063b8)
- docs: add ability to re-run benchmarks (9e970bd)
- ci: add ability to re-run benchmarks (c86ae63)
- ci: change (bc950c9)
- chore: remove dump.txt (553d536)
- feat: implement faster SWAR for strings (67d4952)
- chore: remove extra logs (f16980a)
- release: v1.1.27 (52914c5)
- ci: update charts (9e0e7a5)
- docs: update readme (2cfdd5d)
- ci: do not upload artifact (7311007)
- ci: publish artifacts and push to docs (2be6f95)
- ci: add jsvu bin to path (c68e9f2)
- ci: install binaryen (6a85ad3)
- ci: fix typo in workflow (a93ddd2)
- ci: update benches (6c8f9c7)
- ci: add benchmarks (4a32a3e)
- feat: add proper blackboxing and benchmarking (a8a7c6c)
- release: v1.1.26 (05c18a0)
- chore: bump version (cf21f86)
- chore: update readme (c922f96)
- release: 1.1.25 (0cd3c02)
- feat: SWAR support all control codes (c43684d)
- feat: add SWAR string serialization (9f154ea)
- release: v1.1.24 (ef6f841)
- chore: update readme (3e1035f)
- feat: use moving average to define memory size (b6746a1)
- release: v1.1.23 (856b7cd)
- chore: update changelog (cf7bbdb)
- fix: #161 (1572a6e)
- release: 1.1.22 (cc7d2f0)
- fix: #159 (343ca0b)
- fix: do not strip null on return type (167aa92)
- release: v1.1.22 (8552f40)
- fix: #154 (9f3f730)
- chore(deps-dev): bump tinybench from 4.1.0 to 5.0.1 (0a5e6a8)
- release: v1.1.21 (d7321c2)
- chore: update readme logo (7c01fe6)
- chore: update README.md (b39cc1f)
- chore: update CHANGELOG.md (2b01d52)
- deps: update dependencies (0c5071a)
- tests: use installed ASC version (45005f4)
- docs: add tests for larger arbitrary objects (407b008)
- fix: resolve memory OOB issue within
serializeFloatfunction (99777f5) - update CHANGELOG.md (96221b0)
- fixing JSON.parse on classes with enums (b9b7457)
- perf: increase growth rate of bs (6469bc1)
- chore: update algorithms (85331e6)
- release: v1.1.20 (02a1fc1)
- fix: update SIMD block in internal serialization (d3408e6)
- feat: enable SIMD if available (b227485)
- push (fd3cd70)
- feat: spec-compliant SIMD string serialization (bac677f)
- chore(deps-dev): bump @types/node from 22.15.34 to 24.0.7 (8c36a50)
- release: v1.1.19 (441b041)
- fix: #150 (de2b993)
- perf: only initialize deterministically once if needed (b303cbe)
- release: v1.1.17 (f244fc7)
- chore: update changelog (caff4bb)
- chore: format (d662877)
- chore: format code (9307d94)
- chore: update dependencies (0020679)
- GH-148: Added comments to Src methods. Removed unused JSONTransform import. (f9e640b)
- GH-148: Deleted unused classes.ts. Replaced with functionality in Src in types.js. (eb90f58)
- GH-148: Handling of namespace and resolving extends within namespaces. Fix in package.json to allow setting of env variables in Windows. (51a323d)
- Added tests with deserialization and serialization of objects in namespaces. Updated run-test.sh to allow argument to run specific test. (5edc545)
- release: v1.1.16 (7be209e)
- feat: allow usage with readonly types (9bd6628)
- fix: #140 (1492f0c)
- fix: make imports cross-platform (5363184)
- fix: add support for windows (1e31421)
- fix: do not generate empty methods if schema is custom (c0261d3)
- chore: format and remove logs (894936f)
- fix: properly initiate generics (2cecda8)
- fix: also instantiate generics (180e083)
- release: 1.1.15-preview.3 (3cd69b4)
- fix: #142 (e359ba4)
- release: 1.1.15-preview.2 (abf5b57)
- fix: #137 (908614a)
- feat: add support for custom schemas as properties (c5b1909)
- chore: remove publish script (dfa8aef)
- chore: format code (cbbe0d7)
- release: v1.1.15-preview.1 (d068363)
- chore(deps-dev): bump assemblyscript from 0.27.37 to 0.28.1 (234c775)
- chore: format (eb5d4fb)
- chore: add publish script (d406701)
- release: v1.1.14-preview.1 (96c33f3)
- release: v1.1.14 (6939da1)
- chore: update readme (ec5aa11)
- chore: update readme (5571f31)
- fix: hotfix the schema resolver (fc0e4c1)
- release: v1.1.13 (028e491)
- fix: should check schema dependents (503f94a)
- tests: add test for schema resolver (4a5cae4)
- release: v1.1.12 (c2c458c)
- chore: update changelog (dd29162)
- chore: update readme (f003dba)
- tests: fix missing explicit type in JSON.parse (0d1e1ec)
- feat: add type alias resolving (4af3e64)
- chore: add linkers to tsconfig (17318b6)
- tests: add relevant tests for type aliases (adbd63a)
- tests: add proper tests for generics (0e34fb1)
- misc: update package.json (7549a0c)
- fix: remove extra log (cf7303b)
- fix: add support for numerical generics (a35e41f)
- feat: properly support class generics (0fa7395)
- fix: add warning on unknown type (e89df98)
- release: v1.1.11 (a9c6524)
- fix: remove extra logs (fdaa86c)
- chore: update readme (1d65399)
- chore: update changelog (bdaa311)
- fix: revert back to searching only top-level class declarations (850a3de)
- fix: add helpful error when class is missing an @JSON decorator (3a9a594)
- fix: check for nulls when searching AST for imported classes (070dee9)
- fix: dependent types must be visited first (52dea77)
- release: v1.1.10 (5f57909)
- docs: add debugging section (9820a5c)
- chore: further update readme (623c797)
- chore: update readme to 1.1.10 (8fa8a34)
- fix: make new deserialization accurate to the port (29049e6)
- chore: remove output (669e872)
- chore: use JSON_DEBUG level (d1fed79)
- fix: initialize struct on 2nd-layer deserialization (e580f9c)
- sync (a87f722)
- fix: only import once and add write option (8b3d8ec)
- fix: keep sources separate for proper typing (d90df7f)
- fix: properly hook up imports and types (21e7192)
- release: v1.1.9 (3e91b14)
- fix: should completely ignore structured types if they are not in the key list (6e5fca5)
- tests: add more relevant tests (c520931)
- chore: add back util (caf06a6)
- fix: should ignore keys of different types (3033966)
- tests: add relevant tests (dae5882)
- chore: update README and test file (7257705)
- feat: add large bench (7effd5a)
- fix: revert index.ts (a248d91)
- fix: code generator should continue if key is not found (3d4b3d7)
- chore: make strict parsing opt-in (b8cf0c1)
- feat: add a better testing framework (3c758bf)
- fix: calculate boolean offsets correctly (138f1b3)
- chore: uncomment test (86947ef)
- release: v1.1.8 (fdee868)
- chore: update readme (11f6bc5)
- chore: update changelog (b7ef916)
- fix: reset state if it has a custom serializer (011a885)
- fix: use custom bs only if neseccary (65a1bef)
- fix: grouping issues (1aee2e0)
- feat: allow internal usage of JSON methods (c1ff316)
- feat: add state management (6c81b86)
- release: v1.1.7 (b72c3d0)
- fix: bad logic in break signalling inside code generation (bf02447)
- release: v1.1.6 (5ce4b37)
- chore: update benchmarks (8901282)
- fix: should not break out of main loop (760392a)
- release: v1.1.5 (9a823f0)
- release: v1.1.3 (4c6cc90)
- feat: enforce strict key checking (c9d8db7)
- chore: update readme (d7b978e)
- chore: update ...