Additioanl notes

This commit is contained in:
Sarah Jamie Lewis 2023-02-23 12:16:37 -08:00
parent 908bd631db
commit 7dd6b1032e
1 changed files with 5 additions and 5 deletions

View File

@ -1,6 +1,6 @@
---
title: Autogenerating Cwtch Bindings
description: ""
description: "In this development log we describe a first-cut of a workflow to automatically generate Cwtch C and Java bindings from a high-level specification."
slug: autobindings
tags: [cwtch, cwtch-stable, bindings, autobindings, libcwtch]
image: /img/devlog8_small.png
@ -66,11 +66,11 @@ Once aggregated and itemized the full set of bindings for Cwtch applications, pr
## Next Steps
Cwtch autobindings work today for all cwtch functionality with the exception of [application-level experiments](https://docs.cwtch.im/blog/cwtch-stable-api-design#application-experiments) (of which there is only one: Desktop Server Hosting). This functionality is only tangentially related to the rest of the Cwtch bindings, and necessarily introduces additional dependencies (e.g. on `cwtch-server`).
Cwtch autobindings work today, are API-compatible with the existing libCwtch-go implements, and can be fully integrated into an existing Cwtch application with minimal effort. However, there are a few areas which need to be addressed prior to a full rollout:
In the coming weeks we will allow optional application experiments to be enabled at compile time, to allow us to produce smaller bindings for platforms that cannot them, and to allow us to build new kinds of platform-targeted experiments that can take advantage of platform specific features.
Additionally, this first cut of autobindings is based on an unreleased version of the core cwtch library that implements much of the [Cwtch Stable API redesign](https://docs.cwtch.im/blog/cwtch-stable-api-design#clarifying-terminology). In a short while we will be merging these features into Cwtch, in preparation for Cwtch 1.11, and beyond.
* **[Application-level experiments](https://docs.cwtch.im/blog/cwtch-stable-api-design#application-experiments)** (of which there is only one: Desktop Server Hosting) are not currently support. This functionality is only tangentially related to the rest of the Cwtch bindings, and necessarily introduces additional dependencies (e.g. on `cwtch-server`). In the coming weeks we will allow optional application experiments to be enabled at compile time, to allow us to produce smaller bindings for platforms that cannot them, and to allow us to build new kinds of platform-targeted experiments that can take advantage of platform specific features.
* **Documentation generation**: since we now have a formal description of the bindings interface, we can easily generate documentation compatible with [docs.cwtch.im](https://cwtch.im). This is something that we would love to be able to do prior to a 1.0 release.
* **Cwtch API**: This first cut of autobindings is based on an unreleased version of the core cwtch library that implements much of the [Cwtch Stable API redesign](https://docs.cwtch.im/blog/cwtch-stable-api-design#clarifying-terminology). In a short while we will be merging these features into Cwtch, in preparation for Cwtch 1.11, and beyond.
## Help us go further!