[Zope3-Users] z3c.form in the apidoc code browser

John john at saponara.net
Mon May 18 11:05:47 EDT 2009


thanks michael.  i did as you suggested, but buildout said:

Develop: '/home/john/e6/z3c_in_apidoc/.'
Updating app.
Getting distribution for 'zope.app.apidoc==3.6.3'.
Got zope.app.apidoc 3.6.3.
Getting distribution for 'zope.traversing>=3.5a5dev'.
Got zope.traversing 3.6.0.
Getting distribution for 'zope.site'.
Got zope.site 3.6.1.
Getting distribution for 'zope.container'.
Got zope.container 3.8.2.
Getting distribution for 'zope.app.container>=3.7dev'.
Got zope.app.container 3.8.0.
While:
  Updating app.
Error: There is a version conflict.
We already have: zope.location 3.4.0
but zope.traversing 3.6.0 requires 'zope.location>=3.5.2'.

so i did several iterations of adding more versions--buildout finally 
succeeded with:

  [versions]
  zope.app.apidoc = 3.6.3
  zope.location=3.5.4
  zope.schema=3.5.1
  zope.lifecycleevent=3.5.2

but then "bin/paster serve deploy.ini" gave:

  ...
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.traversing-3.6.0-py2.5.egg/zope/traversing/namespace.py", 
line 29, in <module>
      from zope.publisher.skinnable import applySkin
      ImportError: No module named skinnable

so apparently zope.traversing requires a newer version of 
zope.publisher.  adding "zope.publisher=3.5.2" gave the same error, but 
"zope.publisher=3.6.0" gave a new error:

  ...
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/xmlconfig.py", 
line 357, in endElementNS
    self.context.end()
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/config.py", 
line 542, in end
    self.stack.pop().finish()
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/config.py", 
line 689, in finish
    args = toargs(context, *self.argdata)
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/config.py", 
line 1381, in toargs
    args[str(name)] = field.fromUnicode(s)
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/fields.py", 
line 139, in fromUnicode
    value = self.context.resolve(name)
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.configuration-3.4.0-py2.5.egg/zope/configuration/config.py", 
line 182, in resolve
    mod = __import__(mname, *_import_chickens)
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.app.component-3.4.1-py2.5.egg/zope/app/component/metadirectives.py", 
line 26, in <module>
    from zope.app.component.back35 import LayerField
  File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.app.component-3.4.1-py2.5.egg/zope/app/component/back35.py", 
line 45, in <module>
    from zope.publisher.interfaces.back35 import ILayer
zope.configuration.xmlconfig.ZopeXMLConfigurationError: File 
"/home/john/pr/env5/z3c_in_apidoc/site.zcml", line 4.2-4.37
    ZopeXMLConfigurationError: File 
"/home/john/pr/env5/z3c_in_apidoc/src/z3c_in_apidoc/configure.zcml", 
line 5.2-5.59
    ZopeXMLConfigurationError: File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.app.zcmlfiles-3.4.3-py2.5.egg/zope/app/zcmlfiles/meta.zcml", 
line 8.0-8.57
    ZopeXMLConfigurationError: File 
"/home/john/pr/env5/z3c_in_apidoc/eggs/zope.app.component-3.4.1-py2.5.egg/zope/app/component/meta.zcml", 
line 10.4-14.10
    ImportError: No module named back35

i dont really need to see z3c in apidoc, but if my general approach of 
adding versions to resolve conflicts is wrong, i'd like to know what i 
should do instead.  thanks again michael!


Michael Howitz wrote:
> Am 15.05.2009 um 19:55 schrieb John:
>> hi,
>
> Hi John,
>
>> i cannot see z3c code in the code browser at
>> http://apidoc.zope.org/++apidoc++/
>>
>> thinking that maybe z3c just wasnt installed at that site,
>
> This is correct, all z3c packages are missing at apidoc.zope.org. (I 
> don't know why.)
>
>> i installed
>> z3c.form locally (ubuntu 8.04) in a virtualenv:
>>
>>    sudo easy_install virtualenv
>>    virtualenv env4
>>    cd env4
>>    bin/easy_install zopeproject
>>    bin/easy_install z3c.form    # had to install python2.5-dev for this
>> to work
>
> You should include z3c.form in proj/setup.py in install_requires list 
> to make it possible to use a newer version of zope.app.apidoc later.
>
>>    bin/zopeproject proj
>>    cd proj/
>>    # add to src/proj/configure.zcml:
>>      <include package="z3c.form" file="meta.zcml" />
>>      <include package="z3c.form" />
>>    bin/paster serve deploy.ini
>>
>> but i still couldnt see z3c.form in the code browser at
>> http://127.0.0.1:8080/++apidoc++
>>
>> is there a way to browse z3c.form code in apidoc?
>
> I released a new version of zope.app.apidoc which includes z3c 
> packages in the code browser now.
>
> To try it out you should create a new virtualenv without installing 
> z3c.form using easy_install as this installes too old versions of the 
> packages.
>
> After running bin/zopeproject, edit proj/buildout.cfg, comment out the 
> following line:
>   extends = http://download.zope.org/zope3.4/3.4.0/versions.cfg
>
> After
>   versions = versions
> add the following (without the indentation):
>   [versions]
>   zope.app.apidoc = 3.6.3
>
> Run bin/buildout to install the new packages.
>
>
> Yours sincerely,


More information about the Zope3-users mailing list