[
https://issues.apache.org/jira/browse/PYLUCENE-51?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Clément Jonglez updated PYLUCENE-51:
------------------------------------
Description:
Dear all,
I am using the Orekit Python wrapper by [~petrush] . I am running into errors &
warnings when trying to run tests with doctest. When collecting tests, it
analyzes the classes (all the 1000+ wrapped Java classes it seems) and runs
into the following error:
{noformat}
[...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:137: in collect
for test in finder.find(module):
[...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:425: in find
extraglobs)
[...]/lib/python3.7/doctest.py:932: in find
self._find(tests, obj, name, module, source_lines, globs, {})
[...]/lib/python3.7/doctest.py:993: in _find
self._from_module(module, val)):
[...]/lib/python3.7/doctest.py:960: in _from_module
return module._name_ == object._module_
E AttributeError: _module_{noformat}
In doctest
([https://github.com/python/cpython/blob/master/Lib/doctest.py#L959]), the
`inspect.isclass(object)` condition at line 959 returns `True`, and therefore
doctest tries to access the object's `__module__` attribute, which does not
seem to exist.
Besides, pytest prints a warning for each Java class being wrapped, also
because they have no __module__ attribute (this is one example of 1000+
warnings):
{noformat}
[...]/lib/python3.7/importlib/bootstrap.py:219: DeprecationWarning: builtin
type ExtendedKalmanFilter has no __module_ attribute
return f(*args, **kwds){noformat}
This phenomenon is new because 6 months ago I could run pytest & doctest
successfully with Orekit. I could not find which module contains the change
that broke stuff since then though.
To reproduce the phenomenon, you can check out
[https://github.com/GorgiAstro/poliastro/blob/orekit-validation/src/poliastro/tests/tests_twobody/test_propagation.py#L164]
I was trying to validate some poliastro features using the Orekit python
wrapper. So this code requires poliastro, it is available on conda-forge.
Cheers
Clément
was:
Dear all,
I am using the Orekit Python wrapper by [~petrush] . I am running into errors &
warnings when trying to run tests with doctest. When collecting tests, it
analyzes the classes (all the 1000+ wrapped Java classes it seems) and runs
into the following error:
```
[...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:137: in collect
for test in finder.find(module):
[...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:425: in find
extraglobs)
[...]/lib/python3.7/doctest.py:932: in find
self._find(tests, obj, name, module, source_lines, globs, {})
[...]/lib/python3.7/doctest.py:993: in _find
self._from_module(module, val)):
[...]/lib/python3.7/doctest.py:960: in _from_module
return module.__name__ == object.__module__
E AttributeError: __module__
```
In doctest (https://github.com/python/cpython/blob/master/Lib/doctest.py#L959),
the `inspect.isclass(object)` condition at line 959 returns `True`, and
therefore doctest tries to access the object's `__module__` attribute, which
does not seem to exist.
Besides, pytest prints a warning for each Java class being wrapped, also
because they have no __module__ attribute (this is one example of 1000+
warnings):
```
[...]/lib/python3.7/importlib/_bootstrap.py:219: DeprecationWarning: builtin
type ExtendedKalmanFilter has no __module__ attribute
return f(*args, **kwds)
```
This phenomenon is new because 6 months ago I could run pytest & doctest
successfully with Orekit. I could not find which module contains the change
that broke stuff since then though.
To reproduce the phenomenon, you can check out
https://github.com/GorgiAstro/poliastro/blob/orekit-validation/src/poliastro/tests/tests_twobody/test_propagation.py#L164
I was trying to validate some poliastro features using the Orekit python
wrapper. So this code requires poliastro, it is available on conda-forge.
Cheers
Clément
> "AttributeError: __module__" when running doctest
> -------------------------------------------------
>
> Key: PYLUCENE-51
> URL: https://issues.apache.org/jira/browse/PYLUCENE-51
> Project: PyLucene
> Issue Type: Bug
> Environment: Ubuntu 19.04, Python 3.7
> Reporter: Clément Jonglez
> Priority: Major
>
> Dear all,
> I am using the Orekit Python wrapper by [~petrush] . I am running into errors
> & warnings when trying to run tests with doctest. When collecting tests, it
> analyzes the classes (all the 1000+ wrapped Java classes it seems) and runs
> into the following error:
> {noformat}
> [...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:137: in collect
> for test in finder.find(module):
> [...]/lib/python3.7/site-packages/pytest_doctestplus/plugin.py:425: in find
> extraglobs)
> [...]/lib/python3.7/doctest.py:932: in find
> self._find(tests, obj, name, module, source_lines, globs, {})
> [...]/lib/python3.7/doctest.py:993: in _find
> self._from_module(module, val)):
> [...]/lib/python3.7/doctest.py:960: in _from_module
> return module._name_ == object._module_
> E AttributeError: _module_{noformat}
>
> In doctest
> ([https://github.com/python/cpython/blob/master/Lib/doctest.py#L959]), the
> `inspect.isclass(object)` condition at line 959 returns `True`, and therefore
> doctest tries to access the object's `__module__` attribute, which does not
> seem to exist.
> Besides, pytest prints a warning for each Java class being wrapped, also
> because they have no __module__ attribute (this is one example of 1000+
> warnings):
> {noformat}
> [...]/lib/python3.7/importlib/bootstrap.py:219: DeprecationWarning: builtin
> type ExtendedKalmanFilter has no __module_ attribute
> return f(*args, **kwds){noformat}
> This phenomenon is new because 6 months ago I could run pytest & doctest
> successfully with Orekit. I could not find which module contains the change
> that broke stuff since then though.
> To reproduce the phenomenon, you can check out
> [https://github.com/GorgiAstro/poliastro/blob/orekit-validation/src/poliastro/tests/tests_twobody/test_propagation.py#L164]
> I was trying to validate some poliastro features using the Orekit python
> wrapper. So this code requires poliastro, it is available on conda-forge.
> Cheers
> Clément
--
This message was sent by Atlassian Jira
(v8.3.4#803005)