[New-bugs-announce] [issue40447] compile_file's stripdir does not accept pathlib.Path

Shantanu report at bugs.python.org
Thu Apr 30 02:18:15 EDT 2020


New submission from Shantanu <hauntsaninja at gmail.com>:

Python 3.9 added the stripdir argument to compileall functions. From https://docs.python.org/3.9/library/compileall.html#compileall.compile_file:
> The stripdir, prependdir and limit_sl_dest arguments correspond to the -s, -p and -e options described above. They may be specified as str, bytes or os.PathLike.

```
~ λ python3.9
Python 3.9.0a6+ (heads/master:360371f, Apr 29 2020, 15:44:56) 
[Clang 11.0.0 (clang-1100.0.33.17)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import compileall, pathlib
>>> compileall.compile_file(pathlib.Path("tmp/test.py"), stripdir=pathlib.Path("tmp"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/shantanu/.pyenv/versions/3.9-dev/lib/python3.9/compileall.py", line 161, in compile_file
    stripdir_parts = stripdir.split(os.path.sep)
AttributeError: 'PosixPath' object has no attribute 'split'
```

Found by Jelle Zijlstra in https://github.com/python/typeshed/pull/3956#discussion_r417735663

----------
components: Library (Lib)
messages: 367740
nosy: hauntsaninja
priority: normal
severity: normal
status: open
title: compile_file's stripdir does not accept pathlib.Path
versions: Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue40447>
_______________________________________


More information about the New-bugs-announce mailing list