vsremote 0.2.1__tar.gz → 0.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {vsremote-0.2.1 → vsremote-0.2.2}/PKG-INFO +1 -1
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/cli.py +1 -1
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/daemon.py +4 -2
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/runner.py +11 -10
- {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/cd-build.yml +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/cd.yml +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/ci-lint.yml +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/ci-test.yml +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/.gitignore +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/LICENSE +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/README.md +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/hatch_build.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/pyproject.toml +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/__init__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/__main__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/_strides.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/__init__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/info.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/output.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/__init__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/client.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/transport.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/exceptions.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/__init__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/codec.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/constants.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/keys.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/messages.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/py.typed +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/__init__.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/policy.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/redirect.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/utils.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/stubs/vapoursynth/__init__.pyi +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/conftest.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_api.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_cli_commands.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_client_server.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_codec.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_exceptions.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_protocol.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_serve.py +0 -0
- {vsremote-0.2.1 → vsremote-0.2.2}/uv.lock +0 -0
|
@@ -119,7 +119,7 @@ def serve(
|
|
|
119
119
|
pub, sec = zmq.curve_keypair()
|
|
120
120
|
curve_public_key = pub.decode("ascii")
|
|
121
121
|
curve_secret_key = sec.decode("ascii")
|
|
122
|
-
logger.info("CurveZMQ encryption enabled.
|
|
122
|
+
logger.info("CurveZMQ encryption enabled. Server public key: %s", curve_public_key)
|
|
123
123
|
|
|
124
124
|
runner = (
|
|
125
125
|
ScriptRunner.from_script(script_path, environment=environment)
|
|
@@ -538,12 +538,14 @@ class ServerDaemon:
|
|
|
538
538
|
await self._send_reply(req, StatusCode.OK, pack_payload(outputs))
|
|
539
539
|
except ExecutionError as e:
|
|
540
540
|
logger.debug("%s: %s", error_context, e)
|
|
541
|
-
|
|
541
|
+
payload = _build_error_payload(e)
|
|
542
542
|
await loop.run_in_executor(self._executor, self.runner.teardown_environment)
|
|
543
|
+
await self._send_error(req, StatusCode.ERROR, payload)
|
|
543
544
|
except Exception as e:
|
|
544
545
|
logger.exception(error_context)
|
|
545
|
-
|
|
546
|
+
payload = _build_error_payload(e)
|
|
546
547
|
await loop.run_in_executor(self._executor, self.runner.teardown_environment)
|
|
548
|
+
await self._send_error(req, StatusCode.ERROR, payload)
|
|
547
549
|
|
|
548
550
|
async def _send_reply(
|
|
549
551
|
self,
|
|
@@ -186,19 +186,20 @@ class ScriptRunner:
|
|
|
186
186
|
return list(self._output_items)
|
|
187
187
|
|
|
188
188
|
def teardown_environment(self) -> None:
|
|
189
|
-
self.
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
189
|
+
with self._rlock:
|
|
190
|
+
self._clips.clear()
|
|
191
|
+
self._clip_infos.clear()
|
|
192
|
+
self._output_items.clear()
|
|
193
|
+
self._startup_events.clear()
|
|
193
194
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
195
|
+
if self._script:
|
|
196
|
+
self._script.dispose()
|
|
197
|
+
self._script = None
|
|
197
198
|
|
|
198
|
-
|
|
199
|
-
|
|
199
|
+
if isinstance(self._environment, ManagedEnvironment):
|
|
200
|
+
self._environment.dispose()
|
|
200
201
|
|
|
201
|
-
|
|
202
|
+
self._environment = None
|
|
202
203
|
gc_collect()
|
|
203
204
|
|
|
204
205
|
def close(self) -> None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|