Madison May added the comment:
I quickly ran the tests with each of the above edits to see what bits of the
test suite would break.
With option 1 (edits to PathFinder only):
``1 test failed:
test_importlib``
With option 2 (edits to FileFinder only):
``3 tests failed:
test_import test_importlib test_support``
With option 3 (edits to PathFinder and FileFinder):
``3 tests failed:
test_import test_importlib test_support``
So using the cwd as a key in sys.path_importer_cache seems to break fewer tests
than using '' as a key does. Perhaps that counts for something.
In test_importlib, the only test to fail was
`test_path_importer_cache_empty_string()`, for rather obvious reasons.
I haven't spent much time looking at failing tests in test_import and
test_support yet, though.
In regard to sys.path_importer_cache behavior -- at first glance, I'd lean
toward either:
1) Creating a new entry in sys.path_importer_cache after changing directories
and importing a new module (as is the case in option 1).
Key: os.getcwd() => Value: FileFinder(os.getcwd())
2) Keeping the current behavior in sys.path_importer_cache and somehow changing
the __file__ attribute a bit further down the line (perhaps in
`FileFinder._init_file_attr()` or `FileLoader.get_filename()`).
Key: '.' => Value: FileFinder('.')
or with a minor tweak for consistency with sys.path:
Key: '' => Value: FileFinder('.')
Have you given the issue any more thought, Brett?
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue18416>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com