New issue 2944: origin for several "builtin" modules references build directory
https://bitbucket.org/pypy/pypy/issues/2944/origin-for-several-builtin-modules
Anthony Sottile:
For example
```
$ pypy3 -c 'import importlib.util; print(importlib.util.find_spec("abc"))'
ModuleSpec(name='abc', loader=<_frozen_importlib_external.SourceFileLoader
object at 0x00007f717f943e20>,
origin='/extra1/home/buildslave/buildslave/pypy-c-jit-linux-x86-64/build/lib-python/3/abc.py')
```
Compare a non-builtin pure-python module:
```
$ pypy3 -c 'import importlib.util; print(importlib.util.find_spec("os"))'
ModuleSpec(name='os', loader=<_frozen_importlib_external.SourceFileLoader
object at 0x00007f636b735a28>,
origin='/home/asottile/opt/pypy3-v6.0.0-linux64/lib-python/3/os.py')
```
Or a builtin module:
```
$ pypy3 -c 'import importlib.util; print(importlib.util.find_spec("sys"))'
ModuleSpec(name='sys', loader=<class '_frozen_importlib.BuiltinImporter'>)
```
---
wondering if this is a bug or if this is intentional -- we're attempting to
replace the deprecated `imp.find_module` which returns different values in
`virtualenv`:
```pycon
>>>> imp.find_module('abc')[1]
'/home/asottile/opt/pypy3-v6.0.0-linux64/lib-python/3/abc.py'
>>>> imp.find_module('os')[1]
'/home/asottile/opt/pypy3-v6.0.0-linux64/lib-python/3/os.py'
>>>> imp.find_module('sys')[1]
>>>>
```
The PR for that is here: https://github.com/pypa/virtualenv/pull/1293
_______________________________________________
pypy-issue mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-issue