Support proto as persistent worker protocol
Currently all swift actions running as persistent workers expect the worker to receive `WorkRequest` as JSON payload.
https://github.com/bazelbuild/rules_swift/blob/646d6d229edc0b22ea3b9dc891062de519d27d4c/swift/internal/actions.bzl#L203
This is however unsupported in certain remote execution service providers, such as [EngFlow](https://docs.engflow.com/re/client/remote-persistent-workers.html). The remote spawns in such environments will have `requires-worker-protocol` ignored even if it is supplied as execution requirements and hence, the worker will fail with
```
what(): [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - invalid literal; last read: '�'
```
upon reading the first line of the `WorkRequest` since a proto payload is being sent instead.
This issue is therefore a feature request to support `proto` as worker protocol.
0 条评论