[ https://issues.apache.org/jira/browse/BEAM-6985?focusedWorklogId=240348&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-240348 ]
ASF GitHub Bot logged work on BEAM-6985: ---------------------------------------- Author: ASF GitHub Bot Created on: 10/May/19 17:46 Start Date: 10/May/19 17:46 Worklog Time Spent: 10m Work Description: udim commented on pull request #8453: [BEAM-6985] TypeHints Py3 Error: Native type compatibility tests fail on Python 3.7+ Updates URL: https://github.com/apache/beam/pull/8453#discussion_r282979580 ########## File path: sdks/python/apache_beam/typehints/native_type_compatibility.py ########## @@ -95,8 +101,15 @@ def _match_issubclass(match_against): def _match_same_type(match_against): # For Union types. They can't be compared with isinstance either, so we - # have to compare their types directly. - return lambda user_type: type(user_type) == type(match_against) + # Have to compare their types directly. + + def matcher(derived, parent): + try: + return derived.__origin__ is parent Review comment: Is there a unit test for this? I'm wondering why this code is not: ```suggestion return derived.__origin__ is parent.__origin__ ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 240348) Time Spent: 5h 10m (was: 5h) > TypeHints Py3 Error: Native type compatibility tests fail on Python 3.7+ > ------------------------------------------------------------------------ > > Key: BEAM-6985 > URL: https://issues.apache.org/jira/browse/BEAM-6985 > Project: Beam > Issue Type: Sub-task > Components: sdk-py-core > Reporter: Robbe > Assignee: niklas Hansson > Priority: Major > Time Spent: 5h 10m > Remaining Estimate: 0h > > The following tests are failing: > * test_convert_nested_to_beam_type > (apache_beam.typehints.native_type_compatibility_test.NativeTypeCompatibilityTest) > > * test_convert_to_beam_type > (apache_beam.typehints.native_type_compatibility_test.NativeTypeCompatibilityTest) > > * test_convert_to_beam_types > (apache_beam.typehints.native_type_compatibility_test.NativeTypeCompatibilityTest) > With similar errors, where `typing.<Type> != <Type>`. eg: > {noformat} > FAIL: test_convert_to_beam_type > (apache_beam.typehints.native_type_compatibility_test.NativeTypeCompatibilityTest) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File > "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/typehints/native_type_compatibility_test.py", > line 79, in test_convert_to_beam_type > beam_type, description) > AssertionError: typing.Dict[bytes, int] != Dict[bytes, int] : simple dict > {noformat} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)