[ 
https://issues.apache.org/jira/browse/BEAM-7746?focusedWorklogId=377134&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-377134
 ]

ASF GitHub Bot logged work on BEAM-7746:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 25/Jan/20 02:11
            Start Date: 25/Jan/20 02:11
    Worklog Time Spent: 10m 
      Work Description: udim commented on pull request #10592: [BEAM-7746] 
Introduce a protocol to handle various types of partitioning buffers
URL: https://github.com/apache/beam/pull/10592#discussion_r370907046
 
 

 ##########
 File path: sdks/python/apache_beam/runners/portability/fn_api_runner.py
 ##########
 @@ -1065,24 +1106,37 @@ def append(self, item):
           self._overlay[self._key] = list(self._underlying[self._key])
         self._overlay[self._key].append(item)
 
+    StateType = Union[CopyOnWriteState,
+                      DefaultDict[bytes, CopyOnWriteListProtocol]]
+
     def __init__(self):
+      # type: () -> None
       self._lock = threading.Lock()
-      self._state = collections.defaultdict(list)  # type: DefaultDict[bytes, 
List[bytes]]
 
 Review comment:
   This is confusing. Why does self._state change its type during the lifetime 
of StateServicer?
   Perhaps it'd be clearer if there were 2 members (_state and _cow_state), or 
if self._state was initialized to be a CopyOnWriteState in this method? 
@robertwb 
 
----------------------------------------------------------------
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: 377134)

> Add type hints to python code
> -----------------------------
>
>                 Key: BEAM-7746
>                 URL: https://issues.apache.org/jira/browse/BEAM-7746
>             Project: Beam
>          Issue Type: New Feature
>          Components: sdk-py-core
>            Reporter: Chad Dombrova
>            Assignee: Chad Dombrova
>            Priority: Major
>          Time Spent: 55h 20m
>  Remaining Estimate: 0h
>
> As a developer of the beam source code, I would like the code to use pep484 
> type hints so that I can clearly see what types are required, get completion 
> in my IDE, and enforce code correctness via a static analyzer like mypy.
> This may be considered a precursor to BEAM-7060
> Work has been started here:  [https://github.com/apache/beam/pull/9056]
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to