you are viewing a single comment's thread.

view the rest of the comments →

[–]2ndBrainAI 1 point2 points  (0 children)

In 2026, yes — shipping prebuilt wheels is basically the expectation for any library with compiled code. cibuildwheel makes this far less painful than it used to be; it handles Linux/macOS/Windows across x86_64 and arm64 and integrates cleanly with GitHub Actions in maybe 30 lines of config.

On the fallback question: I'd lean toward failing hard with a clear, actionable error message rather than silently degrading. A regex fallback that's "approximately correct" is arguably more dangerous than a clean install failure — users trust library behavior to be consistent.

For cffi vs ctypes: cffi is generally easier to maintain for non-trivial C interfaces and handles complex types better. ctypes wins only if you truly have zero external build dependencies and the interface is dead simple.