You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by pa...@apache.org on 2023/06/05 17:16:37 UTC

[beam] branch master updated (21ce8826961 -> 15fd8214db6)

This is an automated email from the ASF dual-hosted git repository.

pabloem pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


    from 21ce8826961 Fix blog links (#27016)
     add 15fd8214db6 Add new Beam Python SDK examples (#26671)

No new revisions were added by this update.

Summary of changes:
 .../apache_beam/examples/snippets/snippets.py      | 192 --------------
 .../snippets_examples_wordcount_debugging.py       | 125 +++++++++
 .../snippets_examples_wordcount_minimal.py         | 118 +++++++++
 .../snippets_examples_wordcount_wordcount.py       | 102 ++++++++
 .../apache_beam/examples/snippets/snippets_test.py |  10 +-
 .../transforms/aggregation/cogroupbykey.py         |  23 ++
 .../transforms/aggregation/combineglobally.py      | 226 ----------------
 .../aggregation/combineglobally_combinefn.py       |  88 +++++++
 .../aggregation/combineglobally_function.py        |  65 +++++
 .../{mean.py => combineglobally_lambda.py}         |  55 ++--
 .../combineglobally_multiple_arguments.py          |  62 +++++
 ...mean.py => combineglobally_side_inputs_dict.py} |  52 ++--
 ...mean.py => combineglobally_side_inputs_iter.py} |  47 ++--
 ...py => combineglobally_side_inputs_singleton.py} |  47 ++--
 .../transforms/aggregation/combineglobally_test.py |  32 ++-
 .../transforms/aggregation/combineperkey.py        | 259 -------------------
 .../aggregation/combineperkey_combinefn.py         |  84 ++++++
 .../{max.py => combineperkey_function.py}          |  51 ++--
 .../{max.py => combineperkey_lambda.py}            |  48 ++--
 ...{max.py => combineperkey_multiple_arguments.py} |  48 ++--
 .../{max.py => combineperkey_side_inputs_dict.py}  |  48 ++--
 .../{max.py => combineperkey_side_inputs_iter.py}  |  45 ++--
 ...m.py => combineperkey_side_inputs_singleton.py} |  38 ++-
 .../{sum.py => combineperkey_simple.py}            |  46 ++--
 .../transforms/aggregation/combineperkey_test.py   |  56 +++-
 .../transforms/aggregation/combinevalues.py        | 245 ------------------
 .../aggregation/combinevalues_combinefn.py         |  91 +++++++
 .../{max.py => combinevalues_function.py}          |  60 +++--
 .../{mean.py => combinevalues_lambda.py}           |  56 ++--
 ...{max.py => combinevalues_multiple_arguments.py} |  57 ++--
 .../aggregation/combinevalues_side_inputs_dict.py  |  73 ++++++
 .../aggregation/combinevalues_side_inputs_iter.py  |  70 +++++
 .../combinevalues_side_inputs_singleton.py         |  62 +++++
 .../{groupbykey.py => combinevalues_simple.py}     |  45 ++--
 .../transforms/aggregation/combinevalues_test.py   |  48 +++-
 .../kvswap.py => aggregation/count_globally.py}    |  39 ++-
 .../keys.py => aggregation/count_per_element.py}   |  35 ++-
 .../aggregation/{count.py => count_per_key.py}     |  46 ++--
 .../snippets/transforms/aggregation/count_test.py  |  20 +-
 .../snippets/transforms/aggregation/distinct.py    |  15 ++
 .../transforms/aggregation/groupby_attr.py         |  65 +++++
 .../transforms/aggregation/groupby_attr_expr.py    |  65 +++++
 .../aggregation/{groupbykey.py => groupby_expr.py} |  58 +++--
 .../aggregation/groupby_expr_aggregate.py          |  67 +++++
 .../aggregation/groupby_global_aggregate.py        |  68 +++++
 .../aggregation/groupby_simple_aggregate.py        |  66 +++++
 .../transforms/aggregation/groupby_test.py         | 286 ++++++++++-----------
 .../{groupbykey.py => groupby_two_exprs.py}        |  58 +++--
 .../snippets/transforms/aggregation/groupbykey.py  |  20 ++
 .../transforms/aggregation/groupintobatches.py     |  21 ++
 .../aggregation/{latest.py => latest_globally.py}  |  71 ++---
 .../aggregation/{latest.py => latest_per_key.py}   |  55 ++--
 .../snippets/transforms/aggregation/latest_test.py |  14 +-
 .../aggregation/{max.py => max_globally.py}        |  36 ++-
 .../aggregation/{max.py => max_per_key.py}         |  32 +--
 .../snippets/transforms/aggregation/max_test.py    |  13 +-
 .../aggregation/{mean.py => mean_globally.py}      |  37 ++-
 .../aggregation/{mean.py => mean_per_key.py}       |  32 ++-
 .../snippets/transforms/aggregation/mean_test.py   |  13 +-
 .../aggregation/{min.py => min_globally.py}        |  38 ++-
 .../aggregation/{min.py => min_per_key.py}         |  32 ++-
 .../snippets/transforms/aggregation/min_test.py    |  13 +-
 .../{sample.py => sample_fixed_size_globally.py}   |  41 ++-
 .../{sample.py => sample_fixed_size_per_key.py}    |  38 ++-
 .../snippets/transforms/aggregation/sample_test.py |  14 +-
 .../aggregation/{sum.py => sum_globally.py}        |  38 ++-
 .../aggregation/{sum.py => sum_per_key.py}         |  31 ++-
 .../snippets/transforms/aggregation/sum_test.py    |  13 +-
 .../snippets/transforms/aggregation/top.py         | 146 -----------
 .../aggregation/{distinct.py => top_largest.py}    |  39 ++-
 .../{mean.py => top_largest_per_key.py}            |  43 ++--
 .../snippets/transforms/aggregation/top_of.py      |  63 +++++
 .../snippets/transforms/aggregation/top_per_key.py |  66 +++++
 .../values.py => aggregation/top_smallest.py}      |  38 ++-
 .../{mean.py => top_smallest_per_key.py}           |  43 ++--
 .../snippets/transforms/aggregation/top_test.py    |  38 ++-
 .../snippets/transforms/elementwise/filter.py      | 238 -----------------
 .../transforms/elementwise/filter_function.py      |  72 ++++++
 .../transforms/elementwise/filter_lambda.py        |  70 +++++
 .../elementwise/filter_multiple_arguments.py       |  72 ++++++
 .../elementwise/filter_side_inputs_dict.py         |  79 ++++++
 .../elementwise/filter_side_inputs_iter.py         |  79 ++++++
 .../elementwise/filter_side_inputs_singleton.py    |  75 ++++++
 .../snippets/transforms/elementwise/filter_test.py |  38 ++-
 .../snippets/transforms/elementwise/flatmap.py     | 259 -------------------
 .../elementwise/{values.py => flatmap_function.py} |  39 ++-
 .../{kvswap.py => flatmap_generator.py}            |  40 ++-
 .../elementwise/{values.py => flatmap_lambda.py}   |  36 ++-
 .../{kvswap.py => flatmap_multiple_arguments.py}   |  39 ++-
 .../elementwise/flatmap_side_inputs_dict.py        |  83 ++++++
 .../elementwise/flatmap_side_inputs_iter.py        |  83 ++++++
 ...{kvswap.py => flatmap_side_inputs_singleton.py} |  42 ++-
 .../elementwise/{values.py => flatmap_simple.py}   |  36 ++-
 .../transforms/elementwise/flatmap_test.py         |  56 +++-
 .../elementwise/{kvswap.py => flatmap_tuple.py}    |  34 ++-
 .../snippets/transforms/elementwise/keys.py        |  14 +
 .../snippets/transforms/elementwise/kvswap.py      |  14 +
 .../snippets/transforms/elementwise/map.py         | 229 -----------------
 .../elementwise/{values.py => map_function.py}     |  38 ++-
 .../elementwise/{values.py => map_lambda.py}       |  35 ++-
 .../{kvswap.py => map_multiple_arguments.py}       |  38 ++-
 .../transforms/elementwise/map_side_inputs_dict.py |  78 ++++++
 .../{kvswap.py => map_side_inputs_iter.py}         |  41 ++-
 .../{kvswap.py => map_side_inputs_singleton.py}    |  41 ++-
 .../elementwise/{values.py => map_simple.py}       |  35 ++-
 .../snippets/transforms/elementwise/map_test.py    |  49 +++-
 .../elementwise/{values.py => map_tuple.py}        |  26 +-
 .../elementwise/{kvswap.py => pardo_dofn.py}       |  43 +++-
 .../transforms/elementwise/pardo_dofn_methods.py   |  77 ++++++
 .../elementwise/{pardo.py => pardo_dofn_params.py} |  80 ++----
 .../snippets/transforms/elementwise/pardo_test.py  |  17 +-
 .../snippets/transforms/elementwise/partition.py   | 124 ---------
 .../transforms/elementwise/partition_function.py   |  70 +++++
 .../transforms/elementwise/partition_lambda.py     |  71 +++++
 .../elementwise/partition_multiple_arguments.py    |  74 ++++++
 .../transforms/elementwise/partition_test.py       |  20 +-
 .../snippets/transforms/elementwise/regex.py       | 226 ----------------
 .../transforms/elementwise/regex_all_matches.py    |  63 +++++
 .../elementwise/{keys.py => regex_find.py}         |  43 +++-
 .../elementwise/{keys.py => regex_find_all.py}     |  43 +++-
 .../elementwise/{keys.py => regex_find_kv.py}      |  43 +++-
 .../elementwise/{keys.py => regex_matches.py}      |  45 +++-
 .../transforms/elementwise/regex_matches_kv.py     |  63 +++++
 .../elementwise/{keys.py => regex_replace_all.py}  |  41 ++-
 .../{keys.py => regex_replace_first.py}            |  41 ++-
 .../elementwise/{kvswap.py => regex_split.py}      |  41 ++-
 .../snippets/transforms/elementwise/regex_test.py  |  56 +++-
 .../transforms/elementwise/runinference.py         |  56 ----
 .../runinference_sklearn_keyed_model_handler.py    |  69 +++++
 .../runinference_sklearn_unkeyed_model_handler.py  |  65 +++++
 .../transforms/elementwise/runinference_test.py    |  14 +-
 .../{tostring.py => tostring_element.py}           |  57 ++--
 .../{tostring.py => tostring_iterables.py}         |  57 ++--
 .../elementwise/{values.py => tostring_kvs.py}     |  23 +-
 .../transforms/elementwise/tostring_test.py        |  20 +-
 .../snippets/transforms/elementwise/values.py      |  14 +
 .../transforms/elementwise/withtimestamps.py       |  86 -------
 .../elementwise/withtimestamps_event_time.py       |  65 +++++
 .../elementwise/withtimestamps_logical_clock.py    |  66 +++++
 .../elementwise/withtimestamps_processing_time.py  |  66 +++++
 .../transforms/elementwise/withtimestamps_test.py  |  20 +-
 .../snippets/transforms/other}/__init__.py         |   0
 .../{aggregation/distinct.py => other/create.py}   |  40 +--
 .../sum_test.py => other/create_test.py}           |  38 ++-
 .../{elementwise/keys.py => other/flatten.py}      |  41 ++-
 .../sum_test.py => other/flatten_test.py}          |  40 ++-
 .../examples/snippets/transforms/other/window.py   |  67 +++++
 .../sum_test.py => other/window_test.py}           |  38 ++-
 .../python/aggregation/combineglobally.md          |  16 +-
 .../transforms/python/aggregation/combineperkey.md |  20 +-
 .../transforms/python/aggregation/combinevalues.md |  20 +-
 .../transforms/python/aggregation/count.md         |  12 +-
 .../transforms/python/aggregation/groupby.md       |  30 +--
 .../transforms/python/aggregation/latest.md        |   8 +-
 .../transforms/python/aggregation/max.md           |   8 +-
 .../transforms/python/aggregation/mean.md          |   8 +-
 .../transforms/python/aggregation/min.md           |   8 +-
 .../transforms/python/aggregation/sample.md        |   8 +-
 .../transforms/python/aggregation/sum.md           |   8 +-
 .../transforms/python/aggregation/top.md           |  24 +-
 .../transforms/python/elementwise/filter.md        |  24 +-
 .../transforms/python/elementwise/flatmap.md       |  36 +--
 .../transforms/python/elementwise/map.md           |  32 +--
 .../transforms/python/elementwise/pardo.md         |  12 +-
 .../transforms/python/elementwise/partition.md     |  12 +-
 .../transforms/python/elementwise/regex.md         |  36 +--
 .../python/elementwise/runinference-sklearn.md     |   8 +-
 .../transforms/python/elementwise/tostring.md      |  12 +-
 .../python/elementwise/withtimestamps.md           |  12 +-
 .../content/en/get-started/wordcount-example.md    |  22 +-
 170 files changed, 5433 insertions(+), 4014 deletions(-)
 create mode 100644 sdks/python/apache_beam/examples/snippets/snippets_examples_wordcount_debugging.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/snippets_examples_wordcount_minimal.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/snippets_examples_wordcount_wordcount.py
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineglobally.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineglobally_combinefn.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineglobally_function.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => combineglobally_lambda.py} (52%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineglobally_multiple_arguments.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => combineglobally_side_inputs_dict.py} (50%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => combineglobally_side_inputs_iter.py} (54%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => combineglobally_side_inputs_singleton.py} (52%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineperkey.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineperkey_combinefn.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combineperkey_function.py} (59%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combineperkey_lambda.py} (61%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combineperkey_multiple_arguments.py} (58%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combineperkey_side_inputs_dict.py} (59%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combineperkey_side_inputs_iter.py} (60%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sum.py => combineperkey_side_inputs_singleton.py} (64%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sum.py => combineperkey_simple.py} (65%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combinevalues.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combinevalues_combinefn.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combinevalues_function.py} (52%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => combinevalues_lambda.py} (54%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => combinevalues_multiple_arguments.py} (51%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combinevalues_side_inputs_dict.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combinevalues_side_inputs_iter.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/combinevalues_side_inputs_singleton.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{groupbykey.py => combinevalues_simple.py} (60%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{elementwise/kvswap.py => aggregation/count_globally.py} (57%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{elementwise/keys.py => aggregation/count_per_element.py} (56%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{count.py => count_per_key.py} (61%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/groupby_attr.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/groupby_attr_expr.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{groupbykey.py => groupby_expr.py} (53%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/groupby_expr_aggregate.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/groupby_global_aggregate.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/groupby_simple_aggregate.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{groupbykey.py => groupby_two_exprs.py} (50%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{latest.py => latest_globally.py} (51%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{latest.py => latest_per_key.py} (70%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => max_globally.py} (69%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{max.py => max_per_key.py} (77%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => mean_globally.py} (68%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => mean_per_key.py} (78%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{min.py => min_globally.py} (68%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{min.py => min_per_key.py} (77%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sample.py => sample_fixed_size_globally.py} (65%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sample.py => sample_fixed_size_per_key.py} (73%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sum.py => sum_globally.py} (69%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{sum.py => sum_per_key.py} (77%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/top.py
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{distinct.py => top_largest.py} (60%)
 copy sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => top_largest_per_key.py} (64%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/top_of.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/aggregation/top_per_key.py
 copy sdks/python/apache_beam/examples/snippets/transforms/{elementwise/values.py => aggregation/top_smallest.py} (60%)
 rename sdks/python/apache_beam/examples/snippets/transforms/aggregation/{mean.py => top_smallest_per_key.py} (64%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_function.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_lambda.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_multiple_arguments.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_side_inputs_dict.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_side_inputs_iter.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/filter_side_inputs_singleton.py
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/flatmap.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => flatmap_function.py} (57%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => flatmap_generator.py} (55%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => flatmap_lambda.py} (58%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => flatmap_multiple_arguments.py} (54%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/flatmap_side_inputs_dict.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/flatmap_side_inputs_iter.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => flatmap_side_inputs_singleton.py} (51%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => flatmap_simple.py} (60%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => flatmap_tuple.py} (63%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/map.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => map_function.py} (57%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => map_lambda.py} (59%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => map_multiple_arguments.py} (55%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/map_side_inputs_dict.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => map_side_inputs_iter.py} (52%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => map_side_inputs_singleton.py} (52%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => map_simple.py} (60%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => map_tuple.py} (68%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => pardo_dofn.py} (54%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/pardo_dofn_methods.py
 rename sdks/python/apache_beam/examples/snippets/transforms/elementwise/{pardo.py => pardo_dofn_params.py} (59%)
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/partition.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/partition_function.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/partition_lambda.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/partition_multiple_arguments.py
 delete mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/regex.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/regex_all_matches.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_find.py} (51%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_find_all.py} (50%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_find_kv.py} (50%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_matches.py} (50%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/regex_matches_kv.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_replace_all.py} (55%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{keys.py => regex_replace_first.py} (54%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{kvswap.py => regex_split.py} (56%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/runinference_sklearn_keyed_model_handler.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/runinference_sklearn_unkeyed_model_handler.py
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{tostring.py => tostring_element.py} (56%)
 rename sdks/python/apache_beam/examples/snippets/transforms/elementwise/{tostring.py => tostring_iterables.py} (56%)
 copy sdks/python/apache_beam/examples/snippets/transforms/elementwise/{values.py => tostring_kvs.py} (72%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/withtimestamps_event_time.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/withtimestamps_logical_clock.py
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/elementwise/withtimestamps_processing_time.py
 copy {.test-infra/jenkins/dependency_check => sdks/python/apache_beam/examples/snippets/transforms/other}/__init__.py (100%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{aggregation/distinct.py => other/create.py} (61%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{aggregation/sum_test.py => other/create_test.py} (65%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{elementwise/keys.py => other/flatten.py} (56%)
 copy sdks/python/apache_beam/examples/snippets/transforms/{aggregation/sum_test.py => other/flatten_test.py} (65%)
 create mode 100644 sdks/python/apache_beam/examples/snippets/transforms/other/window.py
 copy sdks/python/apache_beam/examples/snippets/transforms/{aggregation/sum_test.py => other/window_test.py} (65%)