🚨 Breaking
pydantic-ai v1.95.0 (2026-05-12) — Agent(instrument=True) is deprecated. The new Instrumentation object is passed via a dedicated param.
# Before
agent = Agent('openai:gpt-4o', instrument=True)
# After
from pydantic_ai.instrumentation import Instrumentation
instrumentation = Instrumentation()
agent = Agent('openai:gpt-4o', instrumentation=instrumentation)
Source: https://github.com/pydantic/pydantic-ai/releases/tag/v1.95.0
langchain-core 1.4.0 (2026-05-11) — load() now requires valid_namespaces. Without it, untrusted manifests can execute arbitrary code. Security-critical — treat as a CVE-level patch.
# Before (insecure)
result = load(manifest)
# After
result = load(manifest, valid_namespaces=["langchain_core"])
Source: https://github.com/langchain-ai/langchain/releases/tag/langchain-core%3D%3D1.4.0
🗑️ Deprecations
crewAI 1.14.5a5 — CrewAgentExecutor deprecated; AgentExecutor is now the default for all Crew agents. No hard EOL date, but this is an alpha release track — removals ship fast.
# Before
from crewai.agents import CrewAgentExecutor
executor = CrewAgentExecutor(agent=my_agent)
# After
from crewai.agents import AgentExecutor
executor = AgentExecutor(agent=my_agent)
Source: https://github.com/crewAIInc/crewAI/releases/tag/1.14.5a5
💰 Pricing
No pricing changes in this batch.
🆕 New
Qdrant v1.18.0 — You can now add or delete named vectors on an existing collection without tearing it down. Also ships TurboQuant: claimed 8× compression with no recall penalty.
// No more drop-and-recreate for new embedding dimensions
await client.createVectorField("col", {
name: "img",
params: { size: 512, distance: "Cosine" }
});
Source: https://github.com/qdrant/qdrant/releases/tag/v1.18.0
lm-evaluation-harness v0.4.12 — tensor_parallel_size lands on the hf backend. Set it to your GPU count; no manual sharding glue required.
lm_eval.simple_evaluate(
model="hf",
model_args="pretrained=meta-llama/Llama-2-7b-hf,tensor_parallel_size=4",
tasks=["hellaswag"]
)
Source: https://github.com/EleutherAI/lm-evaluation-harness/releases/tag/v0.4.12
llama-stack v1.0.0 hits stable. Internal refactor only — no public Python API changes, safe drop-in upgrade.
💡 Tip of the Day
The langchain-core load() change is a silent regression: old code keeps running but is now exploitable via untrusted manifests. Do this now: grep -r "from langchain_core.load import load" across your services, then add valid_namespaces=["langchain_core"] to every call before your next deploy. One-liner fix, non-negotiable security boundary.