If you build with Claude, you know the anthropic package for Python. Since August 20 it sits at version 1.0 – and that’s not just cosmetic numbering. A few things change enough that you’ll want to look closely before you update.
httpx2 instead of httpx
The most interesting part is the one you normally never see. The HTTP layer moves from httpx to httpx2 – a maintained, API-compatible fork that now lives at Pydantic. For most people this passes quietly: you build custom http_client, Timeout, and transport objects from httpx2 now, while the DefaultHttpxClient helpers stay exactly as they were.
One tripwire remains, though. If you use tracing or mocking libraries that patch httpx from the outside, you need to call httpx2.alias_httpx() once at startup. Otherwise those tools grab at nothing. Exactly the kind of detail you go hunting for when the first test turns red – and you’re glad you read it beforehand.
What gets dropped
Version 1.0 clears the closet. The old Text Completions API is gone – if you still build on it, you have to migrate first. The temperature, top_p, and top_k parameters disappear from the Messages methods, and so does the client-side compaction_control in the tool runner.
On the async client there’s a small but important change: .with_raw_response results now need an await response.parse() before you get anything back. And AnthropicBedrock raises an error when no AWS region is set, instead of quietly falling back to us-east-1. Sounds strict, but it’s more honest – a wrongly guessed data center has explained more than one surprise bill and more than one latency spike.
On top of that comes the hard line: Python 3.10 is now the minimum. If you’re still on 3.9 or older, there’s no update without an upgrade first.
My take
A major release that mostly cleans up is exactly what you want from an SDK you wire into your code every day. No new shine, just less legacy weight and clearer errors instead of silent assumptions.
The move to httpx2 is the part I noted down. An API-compatible fork under Pydantic’s roof – that smells like a bet on where the Python world is heading with HTTP handling. For you it means: read the migration guide, run your tests once, done. And then you’ve got a foundation that holds up for a good while again.
Sources: