[ https://issues.apache.org/jira/browse/BEAM-9755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17089129#comment-17089129 ]
yoshiki obata edited comment on BEAM-9755 at 4/21/20, 11:44 PM: ---------------------------------------------------------------- Thank you [~tvalentyn] and [~udim]! I found that cause of this seems to be MAP_ADD's stack order expectation change(PEP 572) yesterday. We can fix this with changing key and value pop order at apache_beam.typehints.opcodes.mapp_add according to Python version. was (Author: yoshiki.obata): Thank you [~tvalentyn] and [~udim]! I found that cause of this seems to be MAP_ADD's stack order expectation change(PEP 572). We can fix this with changing key and value pop order at apache_beam.typehints.opcodes.mapp_add according to Python version. > infer_return_type does not infer as expected in Python 3.8 > ---------------------------------------------------------- > > Key: BEAM-9755 > URL: https://issues.apache.org/jira/browse/BEAM-9755 > Project: Beam > Issue Type: Sub-task > Components: sdk-py-core > Reporter: yoshiki obata > Assignee: yoshiki obata > Priority: Major > > apache_beam.typehints.trivial_inference.infer_return_type does not return > type as expected in Python 3.8. > And this cause testDictComprehensionSimple > (apache_beam.typehints.trivial_inference_test.TrivialInferenceTest) FAIL. > - Python 3.7.7 > {code:python} > >> from apache_beam.typehints.trivial_inference import infer_return_type > >> infer_return_type(lambda _list: {'a': 1 for _ in _list}, [], debug=False, > depth=5) > Dict[str, int]{code} > - Python 3.8.2 > {code:python} > >> from apache_beam.typehints.trivial_inference import infer_return_type > >> infer_return_type(lambda _list: {'a': 1 for _ in _list}, [], debug=False, > depth=5) > Dict[int, str]{code} > > CPython bytecode changes[1] may affect. > [1] https://docs.python.org/3/whatsnew/3.8.html -- This message was sent by Atlassian Jira (v8.3.4#803005)