you are viewing a single comment's thread
view the rest of the comments
[–] 6 points 1 week ago (3 children)

i think the conservative choice would be to use setuptools as build backend.

  • source
  • hideshow 3 child comments
  • [–] 5 points 1 week ago* (last edited 1 week ago) (2 children)

    It's the conservative choice, which is maybe not ideal for new projects as it predates many PEPs. Hatch, uv, poetry, pdm, are probably all better modern choices.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 6 days ago (1 child)
  • [–] 3 points 6 days ago*

    Caution

    If you use setuptools, please be aware that some features that predate standardisation efforts are now deprecated and only temporarily kept for compatibility.

    In particular, do not use direct python setup.py invocations. On the other hand, configuring setuptools with a setup.py file is still fully supported, although it is recommended to use the modern [project] table in pyproject.toml (or setup.cfg) whenever possible and keep setup.py only if programmatic configuration is needed. See Is setup.py deprecated?.

    Other examples of deprecated features you should not use include the setup_requires argument to setup() (use the [build-system] table in pyproject.toml instead), and the easy_install command (cf. pip vs easy_install).

    https://packaging.python.org/en/latest/guides/tool-recommendations/

    it's just easier to have a modern hassle-free setup with the other tools

  • source
  • parent