[Zope-dev] dependency cleanup progress report

Tres Seaver tseaver at palladion.com
Thu Jan 29 17:42:54 EST 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Martijn Faassen wrote:
> Hi there,
> 
> After a lot of work we have progress to report on the dependency 
> reduction front:
> 
> http://faassen.n--tree.net/blog/view/weblog/2009/01/29/0
> 
> It's been a lot of work to get this far and there's a huge amount of 
> work to be done still, but there is progress!
> 
> The second dependency graph is against the trunks of all the packages, 
> as we haven't done the releases yet to make this real. We will look into 
> this tomorrow. We also need to document the various procedures we have 
> been using to do this work so that others can jump in and help us.

Excellent work!

Looking at the zope.container graph:

- - The zope.publisher dependency is purely there for the 'traverser.py'
  module, which probably doesn't belong in zope.container at all:  it
  only imports interfaces to set up __adapts__, which suggests that it
  should be in zope.publisher, or some other package which depends on
  both (losing the __adapts__ wouldn't be terrible, for instance).

- - The dependency module pulls in zope.app.dependable:  I think it would
  make more sense to move the event subscriber *into* that package.
  which would remove the other, indirect dependency on zope.traversing.

- - The 'testing' module should lose all the zope-specific module-scope
  imports, even  if that means losing some convenience.

- - The 'contained' module has a bunch of dependencies, including a
  suspicous one on zope.app.broken:  if the IBroken check is really
  needed, then that interface should be moved to another package.

- - The zope.exceptions dependency, again from contained, is due to
  the use of a couple of dubious zope-specific exceptions:

  o UserError should probably be replaced with the standard ValueError.

  o DuplicationError should probably be replaced with KeyError.



Tres.
- --
===================================================================
Tres Seaver          +1 540-429-0999          tseaver at palladion.com
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJgjDu+gerLs4ltQ4RAtv4AJ902n6ZnbpoA3patMcW8H/93cAYeACeNoeR
3XSe5cO+WIcCHz2o/TtDZkc=
=6kKl
-----END PGP SIGNATURE-----



More information about the Zope-Dev mailing list