Allow longer Class-Path entries
jar Class-Path entries have a max line length which, when exceeded, will cause java to fail to start. See: https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html Use newline plus extra space to support large numbers of jar files.
R: @robertwb FIXES: #23268
Tested: via standalone monkey-patched version of method and later via unit test below:
tox -e py39 -- apache_beam/utils/subprocess_server_test.py
Also did some quick and dirty manual tests to ensure code path for generating jar was covered subprocess_server_test.py. Confirmed:
- ' '.join(classpath) (previous impl) works for unit test
- '\n '.join(classpath) (current impl) works for unit test
- ' x'.join(classpath) fails
Codecov Report
Merging #23269 (17bfa64) into master (30a48f0) will decrease coverage by
0.01%. The diff coverage isn/a.
@@ Coverage Diff @@
## master #23269 +/- ##
==========================================
- Coverage 73.60% 73.58% -0.02%
==========================================
Files 716 716
Lines 95334 95334
==========================================
- Hits 70171 70155 -16
- Misses 23867 23883 +16
Partials 1296 1296
| Flag | Coverage Δ | |
|---|---|---|
| python | 83.40% <ø> (-0.03%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
| Impacted Files | Coverage Δ | |
|---|---|---|
| sdks/python/apache_beam/utils/subprocess_server.py | 58.73% <ø> (ø) |
|
| .../python/apache_beam/testing/test_stream_service.py | 88.09% <0.00%> (-4.77%) |
:arrow_down: |
| ...ks/python/apache_beam/runners/worker/data_plane.py | 87.57% <0.00%> (-1.70%) |
:arrow_down: |
| ...che_beam/runners/interactive/interactive_runner.py | 90.06% <0.00%> (-1.33%) |
:arrow_down: |
| ...eam/runners/portability/fn_api_runner/execution.py | 92.44% <0.00%> (-0.65%) |
:arrow_down: |
| ...ks/python/apache_beam/runners/worker/sdk_worker.py | 88.94% <0.00%> (-0.64%) |
:arrow_down: |
| sdks/python/apache_beam/runners/common.py | 88.59% <0.00%> (-0.25%) |
:arrow_down: |
| ...on/apache_beam/runners/dataflow/dataflow_runner.py | 82.87% <0.00%> (-0.14%) |
:arrow_down: |
| ...hon/apache_beam/runners/worker/bundle_processor.py | 93.54% <0.00%> (ø) |
|
| sdks/python/apache_beam/transforms/util.py | 96.22% <0.00%> (+0.15%) |
:arrow_up: |
| ... and 3 more |
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more
Assigning reviewers. If you would like to opt out of this review, comment assign to next reviewer:
R: @y1chi for label python.
Available commands:
stop reviewer notifications- opt out of the automated review toolingremind me after tests pass- tag the comment author after tests passwaiting on author- shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
The PR bot will only process comments in the main thread (not review comments).
Not sure if I'm doing this right. I thought the bot assigned a reviewer, but maybe that was a suggestion. Let's try: R: @y1chi
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control