What's new in 4.0.1 (2026-10-16)
This patch release is based on v4.0.0 and backports the actor transport authentication integration from #5696.
Security
- Require Xoscar 0.12.0 or later in the Python package and CPU image dependencies. Xoscar 0.12.0 introduces opt-in HMAC-SHA256 authentication of actor messages before Python object deserialization, mitigating the issue described in CVE-2026-49950.
- Pass the deployment's
XOSCAR_AUTH_KEYthrough the standalone and distributed Docker Compose configurations, including all supervisor and worker services. - Add deployment guidance and translations for all nine existing documentation locales, plus integration coverage for local/distributed communication, authentication rejection, and model-subprocess recovery.
Actor transport authentication is disabled unless a nonempty XOSCAR_AUTH_KEY is configured. Upgrading alone does not enable this protection. HTTP API authentication does not protect actor ports.
Upgrade and enable authentication
-
Upgrade every Xinference server to 4.0.1, or use the corresponding updated container image. Ensure any direct Xoscar actor clients also use Xoscar 0.12.0 or later.
-
Generate one random secret per deployment, for example by running the following command once, and distribute it through your secret-management system:
python -c "import secrets; print(secrets.token_hex(32))" -
Set the same generated value before starting
xinference-local,xinference-supervisor, everyxinference-worker, and any direct actor clients:export XOSCAR_AUTH_KEY='<same-random-deployment-secret>'
For the supplied Compose configurations, set this value in
.envor export it before running Compose. Child processes, including model virtual environments, inherit the key. HTTP/REST clients do not need this secret. -
Coordinate a restart of all actor peers. Keyed and unkeyed peers cannot communicate; enabling or rotating the key requires a coordinated rollout, with no automatic downgrade or mixed-mode rolling upgrade.
Deployment administrators must continue restricting actor ports to intended cluster peers. Anyone holding the shared key is a trusted peer with Python execution privileges. Authentication does not encrypt traffic or prevent replay of captured messages. Authenticated GPU transfers stage device buffers in host memory for hashing, adding CPU and host-memory overhead.
See the Xinference environment configuration and Xoscar actor transport authentication documentation for details.
Full Changelog: v4.0.0...v4.0.1