Repository navigation
Coflux 0.9.0
Server
Enhancements:
- Adds authentication to worker connections and blob/log endpoints.
- Adds support for project-level tokens and Studio authentication.
- Introduces epochs for managing data retention.
- Supports conditional retries on tasks.
- Supports cancelling executions across workspaces.
- Returns API version in the discover endpoint for client compatibility validation.
- Automatically stops idle orchestration servers to reduce resource usage.
- Workspaces are auto-created on first worker connection.
Fixes:
- Fixes idempotency key handling for duplicate run submissions.
- Fixes manifest hashing for consistent change detection.
- Fixes result delivery for suspended executions.
- Makes argument waiting recursive for deeply nested dependencies.
Changes:
- Removes the bundled frontend (use Coflux Studio instead).
- Replaces sensors and checkpoints with recurrent targets.
- Renames 'spaces' back to 'workspaces'.
- Removes namespaces in favour of a simplified project model.
- Reworks ID generation for shorter, URL-friendly identifiers.
CLI
First release of the Go CLI, replacing the previous Python-based CLI.
Enhancements:
- Rewritten in Go for faster startup and standalone distribution (no Python dependency).
- Adds
submit,runs inspect,runs result,runs rerun,runs cancelandlogscommands. - Adds
manifests inspect,manifests discoverandmanifests registercommands. - Adds
assets inspect,assets downloadandblobs getcommands. - Adds
workspaces list,workspaces create,workspaces pauseandworkspaces resumecommands. - Adds
tokens list,tokens createandtokens revokecommands. - Supports real-time log streaming with
logs --follow. - Supports JSON output (
--output json) across all commands. - Workers automatically create workspaces on first connection.
- Workers gracefully handle server restarts and reconnect automatically.
- Supports authenticated connections to the server (token-based and Studio auth).
- Validates API version compatibility with the server.
- Validates protocol version compatibility with language adapters.
Python Adapter
Enhancements:
- Communicates with the new Go CLI over JSON Lines (replacing the previous all-in-one Python package).
- Adds support for conditional retries (
@task(retries=Retries(3, when=TransientError))). - Supports serialisation of additional types (datetime, UUID, Decimal, bytes, frozenset, etc.).
- Spawns a fresh process for each execution, improving isolation and memory management.
- Improved error reconstruction for remote exceptions.
- Reports protocol version during worker handshake for compatibility validation.
Changes:
- The
cofluxpackage is now a pure Python SDK — the CLI is a separate Go binary. - Replaces 'sensors' and 'checkpoints' with recurrent targets.
- Renames 'spaces' back to 'workspaces'.