All notable changes to com.synthigy/sdk (Clojars). Follows
semver. Pre-1.0: breaking changes can land on minor bumps.
client_credentials mint naming no audience resolves to the identity-only
OIDC audience, which /data, /schema, /history, /logs and
subscriptions all reject — so every user had to set SYNTHIGY_AUDIENCE to a
constant they could not look up, since the server does not advertise it in
discovery. The failure was a bare 401 that said nothing about audiences.
This SDK is the client for the platform API, so that is what it now mints
for. Minting for a different API stays a per-call argument. The environment
variable remains as an escape hatch.watch-sql-template — the ad-hoc twin of the watch-<name> a codegen'd
@watch sql-template already emits. JavaScript and Python have had
watchSqlTemplate / watch_sql_template since 0.1.0; in Clojure the only
route was the ^:no-doc watch-xsql with a hand-built op map, so anyone not
using codegen had no documented path. :entities is required and the call
says so plainly: a template has no root entity to infer the watch interest
from. Present on both the JVM and ClojureScript clients.synthigy.gen pulled in
org.clojure/data.json for a single call — writing the schema snapshot
indented — and Babashka cannot load that library, so bb gen failed on
require. babashka/json was not a substitute: it silently ignores both
:pretty and :indent. The generator now uses Cheshire, which Babashka
bundles, with its pretty printer tuned so output stays byte-identical to
JSON.stringify(x, null, 2) — the same artifact the JS and Go generators
write. Cheshire replaces data.json in the dependency list rather than joining
it.First public release.
/data client for JVM Clojure, Babashka and browser ClojureScript —
one synthigy.client namespace, same verbs on every target./history API, record subscriptions and the watch family.synthigy.gen — typed codegen from an .xsql operations document plus the
IAM-filtered schema, with a drift gate (-T:gen-check).Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |