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.
Files changed (43) hide show
  1. {vsremote-0.2.1 → vsremote-0.2.2}/PKG-INFO +1 -1
  2. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/cli.py +1 -1
  3. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/daemon.py +4 -2
  4. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/runner.py +11 -10
  5. {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/cd-build.yml +0 -0
  6. {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/cd.yml +0 -0
  7. {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/ci-lint.yml +0 -0
  8. {vsremote-0.2.1 → vsremote-0.2.2}/.github/workflows/ci-test.yml +0 -0
  9. {vsremote-0.2.1 → vsremote-0.2.2}/.gitignore +0 -0
  10. {vsremote-0.2.1 → vsremote-0.2.2}/LICENSE +0 -0
  11. {vsremote-0.2.1 → vsremote-0.2.2}/README.md +0 -0
  12. {vsremote-0.2.1 → vsremote-0.2.2}/hatch_build.py +0 -0
  13. {vsremote-0.2.1 → vsremote-0.2.2}/pyproject.toml +0 -0
  14. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/__init__.py +0 -0
  15. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/__main__.py +0 -0
  16. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/_strides.py +0 -0
  17. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/__init__.py +0 -0
  18. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/info.py +0 -0
  19. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/api/output.py +0 -0
  20. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/__init__.py +0 -0
  21. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/client.py +0 -0
  22. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/client/transport.py +0 -0
  23. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/exceptions.py +0 -0
  24. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/__init__.py +0 -0
  25. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/codec.py +0 -0
  26. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/constants.py +0 -0
  27. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/keys.py +0 -0
  28. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/protocol/messages.py +0 -0
  29. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/py.typed +0 -0
  30. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/__init__.py +0 -0
  31. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/policy.py +0 -0
  32. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/server/redirect.py +0 -0
  33. {vsremote-0.2.1 → vsremote-0.2.2}/src/vsremote/utils.py +0 -0
  34. {vsremote-0.2.1 → vsremote-0.2.2}/stubs/vapoursynth/__init__.pyi +0 -0
  35. {vsremote-0.2.1 → vsremote-0.2.2}/tests/conftest.py +0 -0
  36. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_api.py +0 -0
  37. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_cli_commands.py +0 -0
  38. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_client_server.py +0 -0
  39. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_codec.py +0 -0
  40. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_exceptions.py +0 -0
  41. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_protocol.py +0 -0
  42. {vsremote-0.2.1 → vsremote-0.2.2}/tests/test_serve.py +0 -0
  43. {vsremote-0.2.1 → vsremote-0.2.2}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: vsremote
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Remote execution and frame proxy for VapourSynth
5
5
  Author-email: Vardë <ichunjo.le.terrible@gmail.com>
6
6
  License-File: LICENSE
@@ -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. Client public key: %s", curve_public_key)
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
- await self._send_error(req, StatusCode.ERROR, _build_error_payload(e))
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
- await self._send_error(req, StatusCode.ERROR, _build_error_payload(e))
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._clips.clear()
190
- self._clip_infos.clear()
191
- self._output_items.clear()
192
- self._startup_events.clear()
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
- if self._script:
195
- self._script.dispose()
196
- self._script = None
195
+ if self._script:
196
+ self._script.dispose()
197
+ self._script = None
197
198
 
198
- if isinstance(self._environment, ManagedEnvironment):
199
- self._environment.dispose()
199
+ if isinstance(self._environment, ManagedEnvironment):
200
+ self._environment.dispose()
200
201
 
201
- self._environment = None
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