Will depreciation of setup.py break nbdev?

I love working with Jupyter notebooks and nbdev has been my entry to building python packages with beautiful documentation. Today I depend 100% on nbdev for all my python package development. Thanks for all the efforts creating this tool! However there is some pain as well. I somehow survived the recent upgrade from nbdev 1 to 2 after several weeks of bug fixing. But the experience made me wonder if I should stick to nbdev.

Today I uploaded a new version of one of my packages to PyPi using nbdev_pypi and was alarmed by a depreciation warning for setup.py install:

/home/frank/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!

To my understanding setup.py is at the heart of the nbdev system. Will the full depreciation of setup.py break nbdev in the near future?

3 Likes

I agree, would be good to know!

1 Like

I circumvented this issue by using pypi recommendation to upload. By using twine directly with build folder. I am not sure if I got the exact same error, just sharing my workflow.

https://packaging.python.org/en/latest/tutorials/packaging-projects/#uploading-the-distribution-archives