Itinera

Languages

Itinera has one specification and an implementation in each language. Every implementation claims a tier of the specification and a list of capabilities, and it may claim a tier only when every conformance case of that tier, and of the tiers before it, passes. What each one claims comes from its conformance manifest, never from this page alone.

Language Version Tier Capabilities Book
Rust 0.1.0-rc.1, in preparation, not published yet Tier 1 Synchronous and asynchronous executors The Rust book
TypeScript Planned Not yet Not yet Not yet
The JVM (Kotlin, with support for Java) Planned Not yet Not yet Not yet

A tier is a level of meaning: tier 1 is a single workflow, with its steps, policies, retries, rescue steps, services and events. A capability is how a workflow runs, such as a synchronous or an asynchronous executor. The roadmap lists the tiers, and the specification says what each means.

Rust

Rust 0.1.0-rc.1 is in preparation, and not on its package registry yet. It will claim tier 1, with synchronous and asynchronous executors.

Planned languages

TypeScript comes next, then the JVM, with Kotlin first and support for Java. Each follows the same specification and runs the same conformance cases, so a workflow means the same in every language. A new language starts with a proposal, like any other change; Contribute says how.