cozos opened a new pull request, #17275: URL: https://github.com/apache/beam/pull/17275
**Please** add a meaningful description for your change here parquetio module does not parse [PEP-440](https://peps.python.org/pep-0440/) compliant pyarrow version. For example, if the `pyarrow` version was `1.0.0+abc.7`, it would fail with the following: ``` Traceback (most recent call last): File "/usr/local/lib/python3.7/runpy.py", line 183, in _run_module_as_main mod_name, mod_spec, code = _get_module_details(mod_name, _Error) File "/usr/local/lib/python3.7/runpy.py", line 109, in _get_module_details __import__(pkg_name) File "/usr/local/lib/python3.7/site-packages/apache_beam/__init__.py", line 93, in <module> from apache_beam import io File "/usr/local/lib/python3.7/site-packages/apache_beam/io/__init__.py", line 28, in <module> from apache_beam.io.parquetio import * File "/usr/local/lib/python3.7/site-packages/apache_beam/io/parquetio.py", line 53, in <module> ARROW_MAJOR_VERSION, _, _ = map(int, pa.__version__.split('.')) ValueError: invalid literal for int() with base 10: '0+abc.7' ``` In practice, this would fail when somebody uses their own fork of `pyarrow` (like me). This change uses setuptools' `pkg_resourses.parse_version`, which is PEP-440 compliant after setuptools > 6.0. https://peps.python.org/pep-0440/#summary-of-differences-from-pkg-resources-parse-version ``` Note: this comparison is to pkg_resourses.parse_version as it existed at the time the PEP was written. After the PEP was accepted, setuptools 6.0 and later versions adopted the behaviour described in this PEP. ``` ------------------------ Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily: - [ ] [**Choose reviewer(s)**](https://beam.apache.org/contribute/#make-your-change) and mention them in a comment (`R: @username`). - [ ] Format the pull request title like `[BEAM-XXX] Fixes bug in ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue. - [ ] Update `CHANGES.md` with noteworthy changes. - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf). See the [Contributor Guide](https://beam.apache.org/contribute) for more tips on [how to make review process smoother](https://beam.apache.org/contribute/#make-reviewers-job-easier). To check the build health, please visit [https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md](https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md) GitHub Actions Tests Status (on master branch) ------------------------------------------------------------------------------------------------ [](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule) [](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule) [](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule) See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more information about GitHub Actions CI. -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
