Our current tests for the EggPluginManager and EggBasketPluginManager build eggs for testing purposes. The packages that those eggs are built from are all old-style pkg_resources-based namespace packages. That's causing warnings, because the newest version of setuptools doesn't want to support old-style namespace packages any more.
This PR converts the namespace packages to normal, non-namespace packages and removes the machinery that setuptools is warning about (specifically, the uses of declare_namespace).
I did first try to convert the old-style namespace packages to new-style PEP 420-based namespace packages, but the EggBasketPluginManager is not currently compatible with new-style namespace packages, and it's hard to see how it could be made compatible, given that it's based on putting eggs on sys.path. Since we're planning to get rid of the EggBasketPluginManager anyway, it doesn't seem worth putting in a heroic effort to make things work.
Detailed changes
The namespace package acme.foo is converted to a package with distribution name acme-foo and import name acme_foo. The plugin id is left as-is.
Analogous changes are applied to acme.bar, acme.baz and acme.bad.
Our current tests for the
EggPluginManager
andEggBasketPluginManager
build eggs for testing purposes. The packages that those eggs are built from are all old-stylepkg_resources
-based namespace packages. That's causing warnings, because the newest version ofsetuptools
doesn't want to support old-style namespace packages any more.This PR converts the namespace packages to normal, non-namespace packages and removes the machinery that
setuptools
is warning about (specifically, the uses ofdeclare_namespace
).I did first try to convert the old-style namespace packages to new-style PEP 420-based namespace packages, but the
EggBasketPluginManager
is not currently compatible with new-style namespace packages, and it's hard to see how it could be made compatible, given that it's based on putting eggs onsys.path
. Since we're planning to get rid of theEggBasketPluginManager
anyway, it doesn't seem worth putting in a heroic effort to make things work.Detailed changes
acme.foo
is converted to a package with distribution nameacme-foo
and import nameacme_foo
. The plugin id is left as-is.acme.bar
,acme.baz
andacme.bad
.Fixes #523