所以他们都与zope有某种关系。问题是怎么样的?
我对Zope不熟悉。我猜zc,z3c代表Zope Component
和Zope3 Component
,但我想确定。还有一个collective
命名空间。它下面有什么样的包裹?
其他众所周知的python包命名空间是什么?
是否应该使用zc,z3c和其他名称命名包?
有时我看到以zc开头的软件包,我无法理解为什么它们是命名空间的。例如z3c.sqlalchemy
具有命名空间,因为它是zope项目的sqlalchemy
包装器。但另一个例子zc.buildout
看起来像一个完全独立的项目。它是否仅仅因为它是由在Zope上工作的人开发而得到名称空间?如果我在Zope上工作那就意味着我应该在zc
项目前加上我的项目,即使它们与任何其他Zope包都无关?
答案 0 :(得分:8)
zc
是“Zope Corporation”。 z3c
是“Zope 3社区”,这个命名空间早已被“弃用”,即没有使用此命名空间创建新包。collective
指的是Plone Collective,一个用于Plone包的svn存储库,对贡献者持友好态度。它是新的通用Plone软件包的“默认”命名空间,现在已经很长一段时间不属于Plone核心。同样感兴趣的是:
zope
最初用于作为Zope 3一部分的软件包。现在很少用于新软件包。Products
,用于较旧的Zope2 / Plone包。所有Zope2产品都必须在Products目录中,因为之前有命名空间包。这是一个残余的遗留物。答案 1 :(得分:1)
可能问题是,如果有人愿意使用许可证提交者协议 他喜欢提交zope包存储库。我认为z3c和集体使用不同的许可证。
z3c repos是zope存储库的一部分,并使用与zope本身使用相同的许可证(ZPL)等。但这也意味着你需要成为使用它的zope贡献者。
顺便说一句, 使用z3c或相关存储库之外的集体可能是一个非常糟糕的ide。
此致 Roger Ineichen