Besides, Guido's original proposal is not a fix for your problem, either; he only proposes to change the requirement for *sub*packages.

  It *is* a solution for my problem.  I don't need the __init__.py file for anything, since I don't need anything defined in the the 'foo' namespace, only the subpackages  foo.bar and foo.zbr .

... No. Guido's original proposal is not a fix for your problem, because *it doesn't affect the 'foo' namespace*. Guido's original proposal still requires foo/__init__.py for your namespace to work, it just makes foo/bar/__init__.py and foo/zbr/__init__.py optional.

  Damn, you're right, I confused subpackage with submodule :P
 
  In that case, can I counter-propose to stop requiring the __init__.py file in [foo/__init__.py, foo/bar.py] ? ;-)

  The proposal would mean that a directory 'foo' with a single file bar.py would make the module 'foo.bar' available if the parent directory of 'foo' is in sys.path.

/me faces the pitchforks.

">

(original) (raw)



On 4/27/06, Thomas Wouters <thomas@python.org> wrote:



On 4/27/06, Gustavo Carneiro < gjcarneiro@gmail.com> wrote:
Besides, Guido's original proposal is not a fix for your problem, either; he only proposes to change the requirement for \*sub\*packages.

  It \*is\* a solution for my problem.  I don't need the \_\_init\_\_.py file for anything, since I don't need anything defined in the the 'foo' namespace, only the subpackages foo.bar and foo.zbr .

... No. Guido's original proposal is not a fix for your problem, because \*it doesn't affect the 'foo' namespace\*. Guido's original proposal still requires foo/\_\_init\_\_.py for your namespace to work, it just makes foo/bar/\_\_init\_\_.py and foo/zbr/\_\_init\_\_.py optional.

  Damn, you're right, I confused subpackage with submodule :P
 
  In that case, can I counter-propose to stop requiring the \_\_init\_\_.py file in \[foo/\_\_init\_\_.py, foo/bar.py\] ? ;-)

  The proposal would mean that a directory 'foo' with a single file bar.py would make the module 'foo.bar' available if the parent directory of 'foo' is in sys.path.

/me faces the pitchforks.