Image

Seth Michael Larson: Winning a bet about “six”, the Python 2 compatibility shim

Exactly five years ago todayAndrey Petrovand I made a bet about whether “six”, the compatibility shim for Python 2 and 3 APIs, would still be in the top 20 daily downloads on PyPI. I said it would, Andrey took the side against.

Well, today I can say that I've won the bet. When the bet was placed,sixwas #2 in terms of daily downloads andtodaysixis #14.Funnily enough,sixwas still exactly #14 back in 2023:

“six is top 14 after 3 years, 2 years left, sounds like [Andrey] is winning”
--Quentin Pradet(2023-07-09)

sixitself isn't a library that many use on its own, asat least 96% ofsixdownloadscome from Python 3 versions. Instead, this library is installed because other libraries depend on the library. Here are the top packages that still depend onsix:

These packages were found by queryingmy own dataset about PyPI:

Notice how a single popular library,python-dateutil, keepingsixas a dependency was enough to carry me to victory. Withoutpython-dateutilI likely would have lost this bet. I also wanted to note the "last uploaded" dates, as some of the libraries aren't uploaded frequently, potentially explaining why they still depend onsix.

“surely in 10 years, six won't be a thing. right? RIGHT?”
-- Andrey Petrov (2020-10-01)

We'll see! ;) Thanks toBenjamin Petersonfor creating and maintainingsix.


Thanks for keeping RSS alive! ♥

https://sethmlarson.dev/winning-a-bet-about-six-the-python-2-compatibility-shim?utm_campaign=rss