Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-1251 Python 3 Support
  3. BEAM-7198

Rename ToStringCoder into ToBytesCoder

    XMLWordPrintableJSON

    Details

      Description

      The name of ToStringCoder class [1] is confusing, since the output of encode() on Python3 will be bytes. On Python 2 the output is also bytes, since bytes and string are synonyms on Py2.

      ToBytesCoder would be a better name for this class.

      Note that this class is not listed in coders that constitute Public APIs [2], so we can treat this as internal change. As a courtesy to users who happened to reference a non-public coder in their pipelines we can keep the old class name as an alias, e.g. ToStringCoder = ToBytesCoder to avoid friction, but clean up Beam codeabase to use the new name.

      [1] https://github.com/apache/beam/blob/ef4b2ef7e5fa2fb87e1491df82d2797947f51be9/sdks/python/apache_beam/coders/coders.py#L344

      [2] https://github.com/apache/beam/blob/ef4b2ef7e5fa2fb87e1491df82d2797947f51be9/sdks/python/apache_beam/coders/coders.py#L20

      cc: yoshiki obata Chamikara Madhusanka Jayalath

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                yoshiki.obata yoshiki obata
                Reporter:
                tvalentyn Valentyn Tymofieiev
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 3h 40m
                  3h 40m