SDK compatibility
Each ✅ marks an SDK release whose features are all supported by that Trust Domain Server version.
The Python and TypeScript SDKs share a row because they gain server-dependent features together: the two versions on a row have the same server requirement.
A blank cell does not mean incompatible. Every SDK release runs safely against every server version listed — the client is backward compatible. A blank means one feature added in that SDK release stays inert until the server is upgraded, and the section below says which one.
| SDK version | Trust Domain Server | |||||
|---|---|---|---|---|---|---|
| Python | TypeScript | 0.39.0 | 0.38.0 | 0.37.0 | 0.36.1 | 0.36.0 |
| 1.1.0 | 0.7.0 | ✅ | ||||
| 1.0.5 | 0.6.0 | ✅ | ✅ | ✅ | ||
| 1.0.0–1.0.4 | 0.1.0–0.5.1 | ✅ | ✅ | ✅ | ✅ | ✅ |
The server versions listed are the same ones covered by the agent compatibility matrix, plus 0.39.0, which completes Realm support. See End of life for the full list of supported server releases.
What each row needs
Python 1.1.0 and TypeScript 0.7.0 — Serverless Realm support. Scoping
serverless issuance to a Realm by naming a serverless cluster, with the
DEFAKTO_CLUSTER_ID environment variable or the equivalent client option. See
Realm Support.
0.39.0 — the server release that completes Realm support. On an earlier
server, setting DEFAKTO_CLUSTER_ID has no effect: issuance falls back to the
trust-domain-scoped policy set, exactly as if the variable were unset.
Realm support must also be enabled for your trust domain. If you set
DEFAKTO_CLUSTER_ID on a server that supports it and still receive a
trust-domain-scoped SPIFFE ID, contact Defakto support to confirm it is enabled.
Python 1.0.5 and TypeScript 0.6.0 — OBO token exchange. Exchanging a user OIDC token for a Defakto JWT-SVID (RFC 8693). The endpoint arrived in server 0.37.0; on earlier servers the exchange call fails and the rest of the SDK is unaffected.
Python 1.0.0–1.0.4 and TypeScript 0.1.0–0.5.1 add no feature that depends on the server: parsers, attestors, provider integrations and client options only.
spiffe-defakto-java is consumed as a Gradle source dependency rather than a
published artifact, so it has no release version to pin. It carries the same
Realm support and the same server requirement as Python 1.1.0 and
TypeScript 0.7.0.