logoalt Hacker News

Why I forked httpx

185 pointsby roywasheretoday at 8:05 AM137 commentsview on HN

Comments

Kwpolskatoday at 9:18 AM

What is it about Python that makes developers love fragmentation so much? Sending HTTP requests is a basic capability in the modern world, the standard library should include a friendly, fully-featured, battle-tested, async-ready client. But not in Python, stdlib only has the ugly urllib.request, and everyone is using third party stuff like requests or httpx, which aren't always well maintained. (See also: packaging)

show 12 replies
mesahmtoday at 8:44 AM

the http landscape is rather scary lately in Python. instead of forking join forces... See Niquests https://github.com/jawah/niquests

I am trying to resolve what you've seen. For years of hard work.

show 4 replies
ayhanfuattoday at 8:49 AM

More related drama: The Slow Collapse of MkDocs (https://fpgmaas.com/blog/collapse-of-mkdocs/)

show 1 reply
swiftcodertoday at 8:30 AM

Somehow I confused httpx with htmlx

show 3 replies
joouhatoday at 12:47 PM

This sounds like an ideal use case for modshim [0]

One of its intended use cases is bridging contribution gaps: while contributing upstream is ideal, maintainers may be slow to merge contributions for various reasons. Forking in response creates a permanent schism and a significant maintenance burden for what might be a small change. Modshim would allow you to create a new Python package containing only the fixes for your bugbears, while automatically inheriting the rest from upstream httpx.

[0] https://github.com/joouha/modshim

show 1 reply
sdovan1today at 8:48 AM

I guess the Discussion on Hacker News href should be "https://news.ycombinator.com/item?id=47514603" instead of "news.ycombinator.com/item?id=47514603"

nathelltoday at 9:05 AM

Congratulations on forking!

Always remember that open-source is an author’s gift to the world, and the author doesn’t owe anything to anyone. Thus, if you need a feature that for whatever reason can’t or won’t go upstream, forking is just about the only viable option. Fingers crossed!

show 1 reply
mettamagetoday at 9:11 AM

> Visitor 4209 since we started counting

Loved that little detail, reminds me of the old interwebs :)

show 1 reply
glaucontoday at 9:22 AM

Good line from the blog post ...

"So what is the plan now?" - "Move a little faster and not break things"

zeeshana07xtoday at 9:44 AM

The lack of a well-maintained async HTTP client in Python's stdlib has been a pain point for a while. Makes sense someone eventually took it into their own hands

show 1 reply
localuser13today at 9:43 AM

I'm not a lawyer, but are there any potential trademark issues? AFAIK in general you HAVE to change the name to something clearly different. I consider it morally OK, and it's probably fine, but HTTPXYZ is cutting it close. It's too late for a rebrand, but IMO open-source people often ignore this topic a bit too much.

show 4 replies
cachiustoday at 10:08 AM

Another abandoned project hurting users: https://github.com/benweet/stackedit

Spivaktoday at 10:11 AM

Do you see yourself taking over httpcore as well as it's likely to have the same maintainership problem? It would certainly instill more confidence that this is a serious fork.

This certainly wouldn't be the first time an author of a popular library got a little too distracted on the sequel to their library that the current users are left to languish a bit.

ciestoday at 8:47 AM

Hi Michiel!

Just a small headsup: clicking on the Leiden Python link in your About Me page give not the expected results.

And a small nitpick: it's "Michiel's" in English (where it's "Michiels" in Dutch).

Thanks for devoting time to opensource... <3

globular-toasttoday at 8:42 AM

It's a shame, httpx has so much potential to be the default Python http library. It's crazy that there isn't one really. I contributed some patches to the project some years ago now and it was a nice and friendly process. I was expecting a v1 release imminently. It looks like the author is having some issues which seem to afflict so many in this field for some reason. I notice they've changed their name since I last interacted with the project...

leontlovelesstoday at 12:04 PM

[dead]

maltyxxxtoday at 11:40 AM

[dead]

federicodepontetoday at 10:30 AM

[dead]

paseantetoday at 9:01 AM

[dead]

bustahtoday at 12:50 PM

[dead]

eats_indigotoday at 9:41 AM

smells like supply chain attack

show 1 reply