On 5/15/09 7:00 AM, Martijn Faassen wrote:
Hey,
Chris McDonough wrote:
I did a bit of research on the direct "zope.app.*" dependencies of zope.formlib.
Cool!
- I looked into its dependency on zope.app.form. It essentially uses a bunch of interfaces from the zope.app.form.interfaces package. I don't know whether it would be reasonable to move all those interfaces to zope.browser or somewhere else, but essentially moving those interfaces to somewhere "neutral" would break this particular dependency.
I think it might make sense to reverse these dependencies - i.e. zope.app.form uses interfaces from zope.formlib for implementing its widgets. The old ZCML-based form mechanism in zope.app.form is moribund anyway so we can just ignore that. Don't know whether this would help the dependency structures though.
I tried to go after this today (reversing the dependency setup between zope.formlib and zope.app.form). There are hundreds of changes that need to be made to move interfaces to zope.formlib. I made them (more or less mechanically) but then couldn't get the tests to pass. Since I don't actually use zope.formlib, I don't think it's appropriate that I commit anything. OTOH, I'm pretty convinced that this action would be a win for packages that depend on formlib. I found these: ./zope.app.component-3.7.0-py2.5.egg/EGG-INFO/requires.txt:zope.formlib ./zope.app.exception-3.5.0-py2.5.egg/EGG-INFO/requires.txt:zope.formlib ./zope.app.zcmlfiles-3.5.3-py2.5.egg/EGG-INFO/requires.txt:zope.formlib Are we done yet? ;-) - C