Created attachment 1437259 [details] build.log from copr Description of problem: When I rebuild python-astroid with Python 3.7, the test fail with lot of erros. Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 85, in wrapped res = next(generator) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 100, in wrapped raise StopIteration StopIteration The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/tests/unittest_brain.py", line 519, in test_enum_func_form_is_class_not_instance inferred_instance = next(instance.infer()) File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 138, in raise_if_nothing_inferred yield next(generator) File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 85, in wrapped res = next(generator) File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/inference.py", line 171, in infer_call for inferred in callee.infer_call_result(self, callcontext): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/bases.py", line 209, in infer_call_result for node in self._proxied.igetattr('__call__', context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1473, in igetattr attrs = self.getattr(name, context, class_context=class_context) File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1411, in getattr for classnode in self.ancestors(recurs=True, context=context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1292, in ancestors context=context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1279, in ancestors for baseobj in stmt.infer(context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/context.py", line 40, in cache_generator for result in generator: RuntimeError: generator raised StopIteration ====================================================================== ERROR: test_enum_multiple_base_classes (astroid.tests.unittest_brain.EnumBrainTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 85, in wrapped res = next(generator) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/decorators.py", line 100, in wrapped raise StopIteration StopIteration The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/tests/unittest_brain.py", line 490, in test_enum_multiple_base_classes clazz = one.getattr('__class__')[0] File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/bases.py", line 135, in getattr values = self._proxied.instance_attr(name, context) File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1366, in instance_attr for class_node in self.instance_attr_ancestors(name, context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1326, in instance_attr_ancestors for astroid in self.ancestors(context=context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/scoped_nodes.py", line 1279, in ancestors for baseobj in stmt.infer(context): File "/builddir/build/BUILD/astroid-1602965b4ef3ce54807de425bfc5bb2073d0c4d8/astroid/context.py", line 40, in cache_generator for result in generator: RuntimeError: generator raised StopIteration Version-Release number of selected component (if applicable): 1.5.3-3.fc29 This is blocking pylint and thus all packages that BR pylint. Current upstream master works with Python 3.7, but has dropped Python 2 support entirely. I'll try to investigate whether there si a version that supports both.
Created attachment 1437260 [details] build.log from copr
Created attachment 1437261 [details] root.log from copr
1.6.x does not work with Python 3.7. 2.x does not work with Python 2. There might be nothing in between: https://github.com/PyCQA/astroid/issues/539
We might need to (for both astroid and pylint): * update to 2.x (or whatever this the pylint version) in rawhide * alpha will be released this week * drop python2 subpackages * introduce python2-astroid and python2-pylint (source) packages (like we did with python2-ipython)
https://github.com/PyCQA/astroid/issues/540
Do you already have the required changes to packaging prepared? At least I recognized your review requests for the python2-* packages. If yes: Feel free to apply them to both packages when you think they're ready. I'm quite busy for the next weeks. Thanks!
The python2- packages are ready, the "main" packages with python3 are not yet ready, I'm waiting for upstream 2.x release actually. Will send a pagure PR and let cstratak review my changes before I merge them. Thanks for the approval.
https://src.fedoraproject.org/rpms/python-astroid/pull-request/2
Also https://github.com/PyCQA/astroid/issues/550
Upstream fix: https://github.com/PyCQA/astroid/commit/be874a94b81f2b9404722937f1ea0e105c3c034a https://github.com/PyCQA/astroid/commit/a4996b4ce7d2a1b651ae984ee3448b8913577c5f I keep this open, let's wait for a release and if it doesn't happen, those pacthes apply "as is".