[
https://issues.apache.org/jira/browse/BEAM-8519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17122598#comment-17122598
]
Beam JIRA Bot commented on BEAM-8519:
-------------------------------------
This issue is P2 but has been unassigned without any comment for 60 days so it
has been labeled "stale-P2". If this issue is still affecting you, we care!
Please comment and remove the label. Otherwise, in 14 days the issue will be
moved to P3.
Please see https://beam.apache.org/contribute/jira-priorities/ for a detailed
explanation of what these priorities mean.
> Typehint for Python CombineFn Accumulator
> -----------------------------------------
>
> Key: BEAM-8519
> URL: https://issues.apache.org/jira/browse/BEAM-8519
> Project: Beam
> Issue Type: New Feature
> Components: sdk-py-core
> Reporter: Yifan Mai
> Priority: P2
> Labels: stale-P2
>
> Feature request:
> Allow users to specify a typehint for the accumulator type of CombineFn,
> either through a typehints decorator, or by using Python type annotations on
> the CombineFn methods, or through inheriting a CombineFn [generic
> type|https://docs.python.org/3/library/typing.html#user-defined-generic-types].
> Benefits:
> * Allow the user to [specify a more efficient
> coder|https://beam.apache.org/documentation/programming-guide/#data-encoding-and-type-safety]
> for accumulators if one is available. Currently users are able to do this
> for the input and output elements, but not the accumulators, which [always
> uses the fallback
> coder|https://github.com/apache/beam/blob/d664592ee761d45b0273edb027a18c6ed9340349/sdks/python/apache_beam/transforms/core.py#L859-L860].
> * Allows typechecking of methods for CombineFn e.g. check that
> create_accumulator(), add_input() and merge_accumulators() returns
> accumulators. This provides better developer ergonomics as the CombineFnAPI
> is non-trivial.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)