Skip to content

1.25.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 23:28

Release Notes

Added

  • llm/stream now applies resilience at stream-open. Streaming was bypassing the whole
    dispatch layer; it now runs through rate-limiting and provider fallback before the
    first token (a primary that fails to open the stream fails over to the next; once a token
    is delivered, a mid-stream failure surfaces and keeps the partial — failing over would
    re-emit it). Budgets can gate streams with llm/with-budget {... :on-stream :pre-gate}
    (off by default). The cache and mid-stream retry still don't apply to streams (use
    cassettes for deterministic stream replay).
    Verified live (OpenAI bad-model → fail over to Anthropic mid-llm/stream).
  • Per-call :timeout (ms) on llm/complete / llm/chat / llm/send. The option
    now reaches the HTTP layer as a per-request reqwest timeout for the network providers
    (Anthropic / OpenAI / Gemini) — previously parsed but ignored. (Local Ollama is excluded;
    streaming calls aren't capped, since a wall-clock timeout would kill a long legitimate stream.)

Fixed

  • OpenAI streaming dropped tool calls. stream_complete returned an empty tool_calls,
    discarding tool-call deltas — streaming agents on OpenAI were broken. It now accumulates the
    index-keyed id / function.name / function.arguments fragments and assembles them into
    the final response (verified live against the OpenAI API).
  • Gemini silent empty output. A thinking model with a small :max-tokens could spend the
    whole budget reasoning and return an empty string with finishReason: MAX_TOKENS (exit 0,
    no signal). It now raises an actionable error telling you to raise :max-tokens / lower
    :reasoning-effort (verified live; normal calls unaffected).

Install sema-lang 1.25.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/HelgeSverre/sema/releases/download/v1.25.0/sema-lang-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/HelgeSverre/sema/releases/download/v1.25.0/sema-lang-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install helgesverre/tap/sema-lang

Download sema-lang 1.25.0

File Platform Checksum
sema-lang-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
sema-lang-x86_64-apple-darwin.tar.xz Intel macOS checksum
sema-lang-x86_64-pc-windows-msvc.zip x64 Windows checksum
sema-lang-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
sema-lang-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum