lucene-pylucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Petrus Hyvönen <petrus.hyvo...@gmail.com>
Subject Re: [jira] [Commented] (PYLUCENE-51) "AttributeError: __module__" when running doctest
Date Sun, 20 Oct 2019 18:29:43 GMT
Many thanks Andi :)


> On 17 Oct 2019, at 20:11 , Andi Vajda <vajda@apache.org> wrote:
> 
> 
> Added __module__ to JArray() types in rev 1868563.
> 
> On Thu, 17 Oct 2019, Petrus Hyvönen (Jira) wrote:
> 
>> 
>>   [ https://issues.apache.org/jira/browse/PYLUCENE-51?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16953958#comment-16953958
]
>> 
>> Petrus Hyvönen commented on PYLUCENE-51:
>> ----------------------------------------
>> 
>> Many Thanks for looking into this, most classes seems to have this property now but
the JArray_* seems to use some other mechanism and do not have this?
>> 
>>> "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
>>> {code:java}
>>> inspect.isclass(object) {code}
>>> 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)


Mime
View raw message