Skip to content

Releases

topenapi 0.2.0

Choose a tag to compare

@jerily jerily released this 05 Nov 09:58
83e2f77

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_request C 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

Choose a tag to compare

@jerily jerily released this 05 Nov 09:26
6bc02a3

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.