Breaking Change: CLI Now Subcommand-First
April 7, 2026 Breaking change in arize-phoenix 14.0.0 The Phoenix server CLI is now subcommand-first. Flags that previously preceded the subcommand must now follow it. Before:db migrate subcommand is unchanged. Pass --database-url directly to the subcommand that needs it, or rely on PHOENIX_SQL_DATABASE_URL:
--enable-websockets flag has been removed. Use phoenix serve --help or phoenix db migrate --help for full option listings.
Breaking Change: Legacy px.Client() Removed
April 7, 2026
Breaking change in arize-phoenix 14.0.0
phoenix.session.client.Client (accessed as px.Client()) has been removed. All client interactions now go through arize-phoenix-client.
endpoint parameter is now base_url. When omitted, the client falls back to environment variables or http://localhost:6006. The new client organizes methods under resource namespaces (.spans, .traces, .datasets, .experiments) instead of flat methods on the client object.
See the v14 migration guide for a full method-by-method mapping.
Breaking Change: /v1/evaluations Endpoint Removed
April 7, 2026
Breaking change in arize-phoenix 14.0.0
The POST /v1/evaluations and GET /v1/evaluations REST endpoints have been removed. Use the annotations API instead:
| Previous | Replacement |
|---|---|
POST /v1/evaluations (span evals) | POST /v1/span_annotations |
POST /v1/evaluations (trace evals) | POST /v1/trace_annotations |
POST /v1/evaluations (document evals) | POST /v1/document_annotations |
GET /v1/evaluations | client.spans.get_span_annotations(...) |
protobuf is no longer a direct dependency of the Phoenix server (it remains a transitive dependency via OpenTelemetry gRPC packages).
Breaking Change: Evals 1.0 Removed
April 7, 2026 Breaking change in arize-phoenix-evals 3.0.0, arize-phoenix-client 2.3.1+arize-phoenix-evals 3.0.0 removes the legacy evals 1.0 module and the legacy experiments module from the Phoenix server package.
Removed from arize-phoenix-evals:
- The entire
legacy/subpackage and itsmodels/wrappers MultimodalPrompt,PromptPartContentType, andPromptParttypes — all adapter methods now usePromptLike
arize-phoenix:
phoenix.experiments— the legacy experiment execution module (functions.py,tracing.py,evaluators/)phoenix.experiments.types— usephoenix.client.__generated__.v1.DatasetExampleinstead
phoenix-client experiments module (phoenix.client.experiments) is the replacement and has no dependency on arize-phoenix-evals.
