[New-bugs-announce] [issue36406] doctest.testmod(empty_package) raises TypeError in 3.7 (and no errors in 3.6)
Dutcho
report at bugs.python.org
Sat Mar 23 07:54:24 EDT 2019
New submission from Dutcho <dutcho at ziggo.nl>:
In recent Python, a directory without __init__.py is also a package, and hence can be imported. When this directory/package is empty, and a doctest.testmod() is executed, the behaviour changed from 3.6 to 3.7, which I didn't find in the "what's new" documentation.
Minimal example:
>>> import doctest, os
>>> os.mkdir('empty_package')
>>> import empty_package
>>> doctest.testmod(empty_package)
Python 3.6.8 on Windows 7 prints
TestResults(failed=0, attempted=0)
Python 3.7.2 on Windows 7 raises below TypeError in doctest
Traceback (most recent call last):
File "bug_empty_package.py", line 4, in <module>
print(doctest.testmod(empty_package))
File "...\Python37\lib\doctest.py", line 1949, in testmod
for test in finder.find(m, name, globs=globs, extraglobs=extraglobs):
File "...\Python37\lib\doctest.py", line 932, in find
self._find(tests, obj, name, module, source_lines, globs, {})
File "...\Python37\lib\doctest.py", line 982, in _find
test = self._get_test(obj, name, module, globs, source_lines)
File "...\Python37\lib\doctest.py", line 1063, in _get_test
if filename[-4:] == ".pyc":
TypeError: 'NoneType' object is not subscriptable
----------
components: Library (Lib)
messages: 338670
nosy: Dutcho
priority: normal
severity: normal
status: open
title: doctest.testmod(empty_package) raises TypeError in 3.7 (and no errors in 3.6)
type: behavior
versions: Python 3.7
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue36406>
_______________________________________
More information about the New-bugs-announce
mailing list