Where the name "Wheel" comes from?

For the last 6 months my work revolved around topics related to Python packaging, PEP-427, build systems and the like. Soon I’ll have to share the knowledge to other members of my team.

It just dawned on me, that I have no idea where the name for the packaging format - “Wheel” - comes from and what it’s supposed to mean. Is it a noun? A verb? I won’t be able to sleep peacefully until I get to know the answer :wink:.

There’s nothing in the the PEP about it. The mailing list isn’t of much help here - the only mention of the rationale behind the name being, quote, “because newegg was taken”.

Anyone able to shed some light on this?

1 Like

The langue is named after the Monty Python show, and as such much naming is taken from there. PyPi in its initial state was named cheese shop, as the famous part in the show Monty Python- Cheese Shop - YouTube. Because initially it only hosted links to the packages, so it was empty like that shop. And within a cheese shop what do you store? Wheels of cheese. Hence the name wheels. More about this has been presented within @dustin talk - https://youtu.be/AQsZsgJ30AE?t=886.


I wasn’t using Python at the time PyPI had the previous name, now it seems obvious. Thanks!

1 Like

It’s a bit of inside joke, so needs explaining but @dustin covered it nicely in that talk.

PyPI used to be called a cheeseshop, in reference to a Monty Python sketch (where the cheeseshop has no cheese). The joke was that PyPI was initially like that - it had nothing in it back then. :slight_smile:

Based off that, wheel is a reference to wheels of cheese.

1 Like

Also the current iteration of pypi.org is called Warehouse, reflecting the fact that all cheese are not only expected but required to be stored on PyPI.

1 Like

Not much call for it in these parts.


And I always thought the name referred to “reinventing the wheel” :grinning_face_with_smiling_eyes: – as a humorous take on coming up with yet another packaging format.

Perhaps it’s a reference to maybe the greatest transportation/distribution invention of ancient history.


By comparison, eggs have more advanced functionality that’s actually undesirable when unarchiving a ZIP is all that root needs to do (wheels do not run setup.py [as root or otherwise]: that’s like trying to roll on eggs)

Let me just get all of my eggs in my basket here

Python has a long Monty Python cultural history. PyPI (the Python
Package Index) is often called the cheese shop (from the famous skit)
and a “wheel” is a “wheel of cheese”.

Cameron Simpson cs@cskk.id.au

In my PyGotham 2018 presentation of 18 short plays about programming in
Python Credits and References for "Python Grab Bag: A Set of Short Plays" , the section
“A Play Entirely Full of Monty Python References”
https://youtu.be/Tf6r55JMsNA?t=967 demonstrated the difficulty of
explaining the format name “wheel” to people who are wholly unfamiliar
with Monty Python and who do not routinely eat European-style cheese.


I named it in an entirely logical way. Python software is cheese :cheese:. The format contains Python software. What is a container for cheese? A wheel. This followed tentative names that were worse.

It has nothing to do with the technical features. You are encouraged to enjoy the double meaning if you find it more fun.