Monitor performance issues & errors in your code

Using cibuildwheel to manage the scikit-HEP packages

Episode #338, published Sun, Oct 17, 2021, recorded Thu, Oct 14, 2021

How do you build and maintain a complex suite of Python packages? Of course, you want to put them on PyPI. The best format there is as a wheel. This means that when developers use your code, it comes straight down and requires no local tooling to install and use.

But if you have compiled dependencies, such as C or FORTRAN, then you have a big challenge. How do you automatically compile and test against Linux, macOS (Intel and Apple Silicon), Windows, and so on? That's the problem cibuildwheel is solving.

On this episode, you'll meet Henry Schreiner. He is developing tools for the next era of the Large Hadron Collider (LHC) and is an admin of Scikit-HEP. Of course, cibuildwheel is central to this process.

Watch this episode on YouTube
Play on YouTube
Watch the live stream version

Links from the show

Henry on Twitter: @HenrySchreiner3
Henry's website: iscinumpy.gitlab.io

Large Hadron Collider (LHC): home.cern
cibuildwheel: github.com
plumbum package: plumbum.readthedocs.io
boost-histogram: github.com
vector: github.com
hepunits: github.com
awkward arrays: github.com
Numba: numba.pydata.org
uproot4: github.com
scikit-hep developer: scikit-hep.org
pypa: pypa.io
CLI11: github.com
pybind11: github.com
cling: root.cern
Pint: pint.readthedocs.io
Python Wheels site: pythonwheels.com
Build package: pypa-build.readthedocs.io
Mac Mini Colo: macminicolo.net
scikit-build: github.com
plotext: pypi.org
Code Combat: codecombat.com
clang format wheel: github.com
cibuildwheel examples: cibuildwheel.readthedocs.io
Cling in LLVM: root.cern

New htmx course: talkpython.fm/htmx
Watch this episode on YouTube: youtube.com
Episode transcripts: talkpython.fm

--- Stay in touch with us ---
Subscribe to us on YouTube: youtube.com
Follow Talk Python on Mastodon: talkpython
Follow Michael on Mastodon: mkennedy

Want to go deeper? Check out our courses

Talk Python's Mastodon Michael Kennedy's Mastodon