有时候想制作一个 pypi 包并上传到 pypi 上,结果发现包名已经被占用了,更尴尬的是有可能原包根本就很久没维护了,以至于不得不换一个包名,很蛋疼。不知道为什么不像 github 一样弄一个命名空间之类的,也能有效的避免包名抢占之类的事情发生。
1
superrichman 2020-08-25 18:24:25 +08:00 via iPhone
因为这种方式不 pythonic 。
|
2
chenqh 2020-08-25 18:44:24 +08:00
可能历史遗留问题?
|
3
renmu123 2020-08-25 18:59:44 +08:00 via Android
中心化是这样的,好的包名被抢了又不维护就很让人生气,npm 也是如此
|
4
crella 2020-08-25 19:55:24 +08:00 via Android
apt 和 yum 都是这样的吧……?
|
5
LokiSharp 2020-08-25 20:13:02 +08:00 via iPhone
然后大家都抢命名空间了
|
6
TypeError 2020-08-25 20:14:23 +08:00 via Android
|
8
aloxaf 2020-08-25 20:36:30 +08:00
很多中心化的包管理都这样
比如 crates.io ( Rust 的中心化包管理平台),就有人恶意批量注 crate 名称。 当初也讨论了很多,但是最终也没有一个好的解决方案。添加命名空间之类的东西,人家就会抢注命名空间;将命名空间与 GitHub 帐号绑定,又显得太过依赖单一平台…… |
9
iConnect 2020-08-25 20:37:57 +08:00 via Android
算是一种腐化表现?
|
10
CismonX 2020-08-25 20:48:26 +08:00 via iPhone
这点 GitHub 做的就比较好,有个 name squatting policy 。如果你发现有个用户名被长期占用但是又毫无作为,你可以向 GitHub 举报,确认后会将这个账号释放掉。
|
11
Darkside 2020-08-25 21:49:16 +08:00
@CismonX
补充一下,npm 也有类似的策略,可以在 https://www.npmjs.com/policies/disputes 的 Squatting 章节看到 不过 GitHub 和 npm 都是商业组织,而 PyPI 是 PSF 下面的非盈利组织,可能没有这么多工作人员 |
12
ClericPy 2020-08-25 22:14:50 +08:00
我反而挺不喜欢太长的包名... 挺多库的名字起的都挺有意思的, loguru, pydantic, 因为太常用, 所以强行记住了, 也不怕和其他语言重名(跨语言的时候搞混库的名字真的头疼)
然后, ichrome 名字也让我抢了, 随手搜了一把, 想把名字换了... 重名的也太多了, 早知道一开始就该起一个不容易重名但是有创意的 PEP 541 -- Package Index Name Retention | Python.org - https://www.python.org/dev/peps/pep-0541/ Abandoned projects A project is considered abandoned when ALL of the following are met: owner not reachable (see Reachability above); no releases within the past twelve months; and no activity from the owner on the project's home page (or no home page listed). |
13
ruanimal 2020-08-26 09:41:10 +08:00
pypi 包名重名都不是事,两个包的实际包名(文件夹名称)一样才是神坑,比如 enum 和 enum34
|
14
SmiteChow 2020-08-26 10:09:08 +08:00
换个名字易如反掌
|
16
Kobayashi 2020-08-26 20:01:42 +08:00 via Android
包名不能重名,但 import 时名字可以一样啊。
|