如何防止误发布Python包使用setup.py

7 投票
2 回答
548 浏览
提问于 2025-04-18 06:11

有没有办法防止在NPM上意外发布私有包,比如设置 "private": true

2 个回答

4

你可以在你的setup.py脚本的顶部添加类似下面的内容:

import sys

for arg in sys.argv:
    if arg in ('upload', 'register', 'testarg'):
        print('This setup is not designed to be uploaded or registered.')
        sys.exit(-1)

你可以通过下面的方式来安全地测试它是否有效:

python setup.py testarg

这样做应该会显示一条消息,然后立刻退出。

-1

其实并没有什么private选项。你只需要小心不要误操作python setup.py register就行了。你难道不怕误操作rm -rf /吗?或者rm /boot/linux*?;-)

如果你真的不小心运行了python setup.py register,你可以随时登录pypi,手动把你的包从索引中删除。

撰写回答