Free-Threading Trove Classifier?

To recap:

  • the current way to know whether a package supports free-threading, is to check the available wheels, or to know that it is a pure Python package
  • a free-threading trove classifier may be added
    • but we may wish to deprecate it later, when free-treading becomes the default build, or it is rejected
  • the availability of a 3.13t tagged wheel may be inconclusive
    • the package may be imported but the interpreter still fallback to enable the GIL (*)
    • even if the GIL stays disabled, the package may still be broken, possibly providing such wheels for experimentation purposes
  • if a package is marked with a free-threading classifier, the publisher is expressing that it is their intention that users of the free-threading build can in fact use it

(*) this sounds to me like an unlikely case: if you’re building a package for free-threading with a separate build step, are you really not going to make the effort to mark the module with Py_MOD_GIL_NOT_USED?


I thought that the issue could also be simply solved with a GitHub-style badge (kudos to the ppl working on the py-free-threading guide! :open_book:).
You cannot use it to filter search results on PyPI of course, but it may just do the trick.

1 Like