Open Jemeljanov opened 2 months ago
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
Thanks for putting this together! At a quick glance, this LGTM. One comment inline above.
@dbieber it was a little bit different behaviour now it will be Optional[Union[int, str]], the Optional is because the default is None.
Now it is more in compliance with the typing in python code and a more robust version than with regular expression.
Additional check is to prevent the Optional repetition (one added from python-fire the other from typing package).
Closes #508
Fixed bug where objects from typing instance were not displayed correctly mentioned in #508 and also Union types.
Added tests for typing.Union and typing.Optional
Other notes
Removed comment as the edge case mentioned is handled by new code.
Used arg_type = repr(arg_type).replace('typing.', '') to output a shorter message for user