p.enthalabs

OpenAI: Migrating to HTTPX2

github.com · Read Story HN original

Comments

nb: operating system TLS trust store is used now (instead of certifi)
what's `nb` ?
Thank you! :)
This could be a breaking change (for some corporate network environments).
There seems to be a bunch of downsides mentioned...

But what are the upsides of this change?

It's like that time I started a primary school and then closed it because I hated that the overwhelming majority of employees were women.
This has happened in many packages contributed to by this person. Mkdocs e.g
Did this move improve the ratio of gender representation in the software development community?
That’s fair, good for the maintainer to consider his personal values with regards to projects he wants to spend his time on
Wow, finally...
Anthropic made the same change a few weeks after OpenAI did: https://github.com/anthropics/anthropic-sdk-python/releases/...

The problem with httpx as a dependency is that it's currently working towards a 1.0 release which will be full of breaking changes.

The httpx2 project is essentially a fork that promises not to break the existing API, which makes it a more stable dependency to build against.

I wrote a pretty long comment about my concerns for the breaking 1.0 version last year - https://github.com/encode/httpx/discussions/3344#discussionc... - in that comment I recommended the HTTPX project release their 1.0 as a package called httpx2 instead, but a year later we now have an httpx2 (released by a different maintainer) that keeps the old API.

The Python community loves confusing versioning.

I mean, obviously Python 2.7 is newer than Python 3.1

I remember swearing I would never migrate to python3 but here we are, I migrated without even feeling it or realizing when (But I do remember django played a big role).

Isn't that whole point of semantic release?

Minors and hotfixes allow you to release a new version for an older release (like if you released 3.7 but you found a bug present in 3.4, you can release 3.4.1 which would be newer than 3.7), making it possible to have multiple supported versions at the same time.

That isn't confusing at all, if you know how maintained stable releases work.

Happens with the Linux kernel as well.

Tangibly related, did you know that odd versions of node don't get LTS, I found it odd at first
httpx2 is sponsored by Pydantic and has involvement from the new maintainer of Starlette, so it's off to a very strong start.
The issue with httpx is that it has an obnoxious and toxic maintainer.