[ 
https://issues.apache.org/jira/browse/BEAM-9755?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

yoshiki obata updated BEAM-9755:
--------------------------------
    Description: 
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

  was:
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}
 


> 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
>            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)

Reply via email to