Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is behind python package namespaces: z3c, zc, collective?

Tags:

python

zope

So they all are somehow related to zope. Question is how?

I am not familiar with Zope. I guess that zc, z3c stand for Zope Component and Zope3 Component but I want to be sure. Also there is a collective namespace. What kind of packages goes under it?

What are other well known python package namespaces?

Are there any conventions when package should be namespaced with zc, z3c and others?

Sometimes I see packages starting with zc and I can't rationate why are they namespaced. For example z3c.sqlalchemy has namespace because it is a wrapper of sqlalchemy for zope projects. But another example zc.buildout looks like a completely independent project. Did it got the namespace only because it is developed by people who work on Zope? If I would work on Zope would that mean that I should prefix my projects with zc even if they are not relevant to any other Zope package?

like image 982
Ski Avatar asked Feb 19 '11 20:02

Ski


1 Answers

  • zc is "Zope Corporation".
  • z3c is "Zope 3 community", a namespace that long since has been "deprecated", ie no new packages are made with this namespace.
  • collective refers to the Plone Collective, a svn repository for Plone packages with a friendly attitude towards contributors. It's been the "default" namespace for new generic Plone packages that are not a part of Plone core for quite some time now.

Also of interest is:

  • zope originally used for packages that was a part of Zope 3. Now rarely used for new packages.
  • Products, used for older Zope2 / Plone packages. A hystorical remnant of the fact that all Zope2 products had to be in a Products directory, since before there was namespace packages.
like image 96
Lennart Regebro Avatar answered Oct 17 '22 16:10

Lennart Regebro