Message293495
Hi there!
This is my first submission to the bug tracker, so I apologize if I'm missing some formatting here.
I've found what's either vague documentation for the 'prefix' parameter of `pgkutil.walk_packages` or a bug. The method implies that it will only import submodules of the provided path, but if the prefix parameter is not filled, this method will import a module with the same name from outside the path -- so long as it exists in `sys.modules`. I'm unsure if this is due to the documentation not specifying that prefix should always be used when path is set, or if this is a bug (I can provide a fix if it's a bug).
Steps to reproduce:
Create a directory with a nested package with the same name as a package outside that directory, e.g.:
├── test1
│ ├── __init__.py
│ └── should_not_be_included.py
└── test2
├── __init__.py
└── test1
├── __init__.py
└── should_be_included.py
`list(pkgutil.walk_packages(['test2']))` will contain 'should_not_be_included.py' instead of 'should_be_included.py'.
Thank you!
Sam Silberstein |
|
Date |
User |
Action |
Args |
2017-05-11 14:35:17 | smsilb | set | recipients:
+ smsilb, docs@python |
2017-05-11 14:35:17 | smsilb | set | messageid: <1494513317.32.0.93359914948.issue30337@psf.upfronthosting.co.za> |
2017-05-11 14:35:17 | smsilb | link | issue30337 messages |
2017-05-11 14:35:17 | smsilb | create | |
|