Releases: cs01/ChadScript
Releases · cs01/ChadScript
Latest Build
Automated release from main branch. Download native binaries and target SDKs below.
v0.2.0-beta
What's Changed
- update docs by @cs01 in #72
- fix json.stringify for inline object literals with booleans and numbers by @cs01 in #73
- json stringify with mixed-type variables and type assertions by @cs01 in #74
- add ast-dump subcommand and parser parity tests by @cs01 in #76
- HTTP Usability: Router + improved exec by @cs01 in #71
- error on getter/setter methods in class declarations by @cs01 in #77
- add semantic pass to validate inline type assertion field order by @cs01 in #78
- add chadscript/* stdlib module resolution (router, argparse, http-utils) by @cs01 in #79
- JSON.stringify Runtime Error Prevention by @cs01 in #80
- Worktree staged singing lighthouse by @cs01 in #81
- consolidate http apis into chadscript/http module by @cs01 in #84
- Router and JSON auto-serialization fixes by @cs01 in #82
- add Router to chadscript/http, fix routing bugs, restructure docs by @cs01 in #86
- add generic class and function support by @cs01 in #83
- Worktree docs update by @cs01 in #87
- Json array support by @cs01 in #90
- Type keyword support by @cs01 in #89
- fix examples: http-server and websocket by @cs01 in #91
- Disallow var by @cs01 in #92
- add named type assertion checker to catch wrong-indexed subset types by @cs01 in #88
- readme: accuracy fixes + timeval platform fix + float i64 promotion fix by @cs01 in #95
- binary http body: bodyBytes(), Buffer.from base64, serveFile, remove body size limit by @cs01 in #94
- sqlite: getRow(), parameterized query types/docs, fix interface method_call alloc by @cs01 in #96
- Benchmarks by @cs01 in #97
- req.queryString: expose query string from http requests by @cs01 in #100
- remove router.compile dead code, fix http docs, add uint8array doc, f… by @cs01 in #101
- crypto.hmacSha256: add hmac-sha256 signing primitive by @cs01 in #102
- c.json(): accept any value, auto-serialize objects/arrays by @cs01 in #103
- json stringify: nested interfaces, llvm-type resolution, member_access dispatch by @cs01 in #99
- add console.error and console.warn (stderr output) by @cs01 in #105
- docs: consolidate http-server and embed pages, promote router-first by @cs01 in #106
- Ci test fix by @cs01 in #98
- add url and urlsearchparams classes with c bridge by @cs01 in #107
- Feat/btoa uri pbkdf2 by @cs01 in #104
- escape analysis for automatic stack allocation of local objects by @cs01 in #109
- fix: replace inline anonymous type assertions with named ast types in… by @cs01 in #110
- feat: conditional srand48/cs_time_ms startup calls + usesGC infrastructure by @cs01 in #108
- refactor: discriminated union narrowing in closure-analyzer by @cs01 in #111
- refactor: extract named-object dispatch into sub-module by @cs01 in #113
- fix: use getAllInterfaceFields to include inherited fields in interface codegen by @cs01 in #114
- fix: use getAllInterfaceFields in control-flow.ts for inherited fields by @cs01 in #115
- fix: annotate let x = -1 with : number to prevent native compiler mistype by @cs01 in #116
- fix: getAllInterfaceFields in remaining codegen sites + fneg type tracking by @cs01 in #118
- fix: track terminator status after fully-terminating if/else in generateBlock by @cs01 in #120
- fix: use getAllInterfaceFields in variable-allocator interface field lookups by @cs01 in #119
- fix: replace slice(0, -1) with slice(0, len-1) across codegen by @cs01 in #117
- fix: use ctx.getAllInterfaceFields in class-dispatch for inherited interface fields by @cs01 in #121
- fix: use getAllInterfaceFields for function interface parameter metadata by @cs01 in #122
- fix: use getAllInterfaceFields in type-resolver for inherited interface fields by @cs01 in #123
- fix: use getAllInterfaceFields in findInterfaceByDiscriminant for inherited discriminant fields by @cs01 in #125
- fix: use getAllInterfaceFields in getUnionCommonFields for inherited interface fields by @cs01 in #124
- refactor: extract if-chains from dispatchNamedObject to prevent if-drop bug by @cs01 in #126
- refactor: extract string and array dispatch chains from generate() by @cs01 in #127
- fix: replace remaining inline type assertions with named types by @cs01 in #128
- refactor: extract expression dispatch chains from orchestrator by @cs01 in #129
- fix: use getAllInterfaceFields in type-inference getInterfaceProperty by @cs01 in #130
- fix: handle negative indices in array slice by @cs01 in #131
- fix: extract loadFieldValue if-chain to prevent if-drop bug by @cs01 in #132
- fix: split named-object-dispatch if-chains to prevent if-drop bug by @cs01 in #133
- fix: split infrastructure if-chains to prevent if-drop bug by @cs01 in #134
- fix: split type-inference and codegen if-chains for if-drop bug by @cs01 in #135
- fix: use getAllInterfaceFields for http handler return type by @cs01 in #136
- fix: split if-return chains in string-dispatch and type-system by @cs01 in #137
- fix: split discriminant and resolvedTypeToLlvm if-chains by @cs01 in #138
- fix: object destructuring from function calls by @cs01 in #139
- fix: index access on function call results by @cs01 in #140
- fix: annotate let x = -1 with : number type by @cs01 in #141
- fix: split long if-return chains to prevent if-drop bug by @cs01 in #142
- fix: split if-return chains in type-inference.ts by @cs01 in #143
- fix: propagate ?. optional chaining to method call nodes in native parser by @cs01 in #144
- fix: replace nested inline type assertions with named ast types by @cs01 in #145
- fix: replace silent 0.0 fallbacks with compile errors in member access by @cs01 in #146
- fix: remove 82 unnecessary as-unknown-as double casts in escape-analysis by @cs01 in #147
- fix: compile-time errors for silent map/set method dispatch fallthroughs by @cs01 in #148
- fix: replace catch-all else branches with explicit method checks in map/set dispatch by @cs01 in #149
- fix: remove unnecessary double casts in json, json-array, and variable-allocator by @cs01 in #150
- fix: add return before emitError to prevent dead code execution in native compiler by @cs01 in #151
- fix: split long if-return chains to prevent if-drop bug by @cs01 in #152
- fix: replace for-of on getAllInterfaceFields with index loops by @cs01 in #153
- fix: emit error instead of null for unsupported module method calls by @cs01 in #154
- fix: emit error instead of silent null for unknown class in new expression by @cs01 in #155
- fix: add null checks for getInterface() before getAllInterfaceFields() by @cs01 in #156
- fix: add missing return before emitError in 7 codegen locations by @cs01 in #157
- fix: split 35+ consecutive if-return chain in calls.ts by @cs01 in #158
- fix: split if-drop chains in type-inference.ts by @cs01 in #159
- fix: strict ty...
Latest Build
Automated release from main branch. Download native binaries and target SDKs below.
What's Changed
- installer updates by @cs01 in #1
- add --target-cpu flag and use x86-64 in ci to fix sigill on runners by @cs01 in #2
- Site and build fixes by @cs01 in #4
- add subcommand support to argparse and migrate chad-native.ts by @cs01 in #6
- Add cross compilation support by @cs01 in #5
- implement try/catch/finally via setjmp/longjmp by @cs01 in #7
- Argparse library improvements, cross-compilation support, and several compiler fixes. by @cs01 in #9
- fix inline struct field access and revert TryStatement flattening by @cs01 in #10
- add IR builder methods to BaseGenerator and IGeneratorContext by @cs01 in #12
- Add file embedding and multi-column SQLite support by @cs01 in #8
- Member ts decomposition by @cs01 in #13
- build docs on PRs and deploy only on main by @cs01 in #14
- Fix try catch tests by @cs01 in #15
- add string search example and benchmark by @cs01 in #18
- stale docs cleanup, semantic analyzer warning, and variable allocator refactoring by @cs01 in #11
- Fix set buffer overflow by @cs01 in #20
- remove chadc, consolidate to chad build / chad run by @cs01 in #16
- canonical type to llvm by @cs01 in #21
- bug fixes by @cs01 in #23
- handler registry by @cs01 in #22
- enable this.items[i].field pattern and refactor argparse by @cs01 in #24
- add prettier with pre-commit hook and ci check by @cs01 in #25
- interactive installer with y/n prompts by @cs01 in #26
- Picohttpparser by @cs01 in #27
- Node api compat by @cs01 in #28
- Codebase quality improvements + more node api compt by @cs01 in #29
- hackernews example: add typed Post interface, fix sql injection by @cs01 in #31
- Add os module by @cs01 in #30
- Test autodiscovery and os fix by @cs01 in #32
- Sqlite objects by @cs01 in #33
- Embed docs and test fixes by @cs01 in #34
- add do...while loop support by @cs01 in #35
- add http response/request headers, serveEmbedded, and header tests by @cs01 in #36
- Dx improvements by @cs01 in #37
- Refactor array submodules by @cs01 in #39
- Fix struct field access in standalone functions and migrate to IR builders by @cs01 in #40
- Fix struct field access and migrate ~1,800 emit calls to IR builders by @cs01 in #41
- Feat/binary data by @cs01 in #42
- add full cross-compilation support with target SDKs by @cs01 in #38
- add static methods and static fields support for classes by @cs01 in #43
- add export default and re-export support by @cs01 in #45
- add string enums, optional method calls, void expression, and spread … by @cs01 in #44
- Cli cleanup by @cs01 in #46
- fix module-scope variables defaulting to double instead of actual type by @cs01 in #48
- fix cross-function exception propagation by removing nounwind by @cs01 in #49
- replace silent type fallbacks with strict errors and warnings by @cs01 in #50
- Docs os page by @cs01 in #51
- Fix linker warnings and hn upvote by @cs01 in #52
- Fix nullable iface field gep by @cs01 in #53
- fix cross-compile datalayout by @cs01 in #54
- Update examples and fix ssa bug in serveEmbedded by @cs01 in #55
- fix native compiler cross-compile static linking and add CI coverage by @cs01 in #57
- fix websocket example with vitepress theme and add e2e test by @cs01 in #56
- Language hardening by @cs01 in #58
- Codebase simplification by @cs01 in #59
- Worktree target subcommand by @cs01 in #61
- jsx support by @cs01 in #60
- Misc improvements by @cs01 in #62
- Docs overhaul, compiler fixes, and new codegen features by @cs01 in #63
- Worktree i64 globals by @cs01 in #65
- Worktree semantic checks by @cs01 in #66
- fix duplicate parse_json codegen, update parallel example and docs by @cs01 in #67
- add example runner script and CI integration, update docs by @cs01 in #68
- fix set heap allocation and require explicit type args by @cs01 in #69
- add wsSend to connection by @cs01 in #70
New Contributors
Full Changelog: https://github.com/cs01/ChadScript/commits/v0.1.0-alpha