Repository navigation
Releases
Releases · jerily/topenapi
topenapi 0.2.0
Add typed Tcl variable binding:
$validator bind $request {
user_id {params id}
page {query page}
email {body user email}
}- Validate, convert schema values, and select fields before assigning local variables.
- Bind nested objects, arrays, form fields, and upload metadata without copying upload contents.
- Parse JSON bodies once and expose the prepared values through the new
topenapi_prepare_requestC API. - Preserve Tcl stubs support for shared builds and static embedding on Tcl 8.6 and Tcl 9.
The README documents missing fields, nulls, schema unions, and Tcl write-trace behavior. A runnable binding example and additional C and Tcl tests are included.
topenapi 0.1.0
Initial release of topenapi: inline OpenAPI request validation for Tcl and C.
- Tcl 8.6 and 9.x commands, reusable parsed operations, and a standalone C API.
- Tcl stubs for shared builds and static archives for embedding.
- Native C adapter for twebserver request dictionaries, including repeated parameters, cookies, forms and base64 bodies.
- Upload metadata and source keys without copying file contents or raw multipart bodies; metadata and binary upload schemas are supported.
- CMake builds, installed-package checks, CI, documentation and examples.
Validated with Tcl 8.6/9.1 shared and static builds, C/Tcl tests, ASan/UBSan/LeakSanitizer, and the real twebserver multipart parser. See README for the supported schema subset and upload parser limitations.
The source archive is accompanied by SHA256SUMS.