Implement SPICE-0009 External Readers (#660)

This adds a new feature, which allows Pkl to read resources and modules from external processes.

Follows the design laid out in SPICE-0009.

Also, this moves most of the messaging API into pkl-core
This commit is contained in:
Josh B
2024-10-28 18:22:14 -07:00
committed by GitHub
parent 466ae6fd4c
commit 666f8c3939
110 changed files with 4368 additions and 1810 deletions
@@ -1081,3 +1081,33 @@ Malformed proxy URI (expecting `http://<host>[:<port>]`): `{0}`.
cannotAnalyzeBecauseSyntaxError=\
Found a syntax error when parsing module `{0}`.
malformedMessageHeaderLength=\
Malformed message header (expected size 2, but got {0}).
malformedMessageHeaderException=\
Malformed message header.
malformedMessageHeaderUnrecognizedCode=\
Malformed message header (unrecognized code `{0}`).
unhandledMessageCode=\
Unhandled decoding message code `{0}`.
unhandledMessageType=\
Unhandled encoding message type `{0}`.
malformedMessageBody=\
Malformed message body for message with code `{0}`.
missingMessageParameter=\
Missing message parameter `{0}`
unknownRequestId=\
Received response {0} for unknown request ID `{1}`.
externalReaderFailure=\
Failed to communicate with external reader process.
externalReaderDoesNotSupportScheme=\
External {0} reader does not support scheme `{1}`.