gemcode 0.3.117__tar.gz → 0.3.119__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.
- {gemcode-0.3.117/src/gemcode.egg-info → gemcode-0.3.119}/PKG-INFO +1 -1
- {gemcode-0.3.117 → gemcode-0.3.119}/pyproject.toml +1 -1
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/kaira_ipc.py +9 -3
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/repl_slash.py +36 -11
- {gemcode-0.3.117 → gemcode-0.3.119/src/gemcode.egg-info}/PKG-INFO +1 -1
- {gemcode-0.3.117 → gemcode-0.3.119}/LICENSE +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/MANIFEST.in +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/README.md +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/setup.cfg +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/__main__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/agent.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/audit.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/autocompact.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/automations.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/autotune.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/callbacks.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/capability_routing.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/checkpoints.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/cli.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/compaction.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/computer_use/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/computer_use/browser_computer.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/config.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/context_budget.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/context_warning.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/credentials.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/curated_memory.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/dynamic_policy.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/evals/harness.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/hitl_session.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/hooks.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/ide_protocol.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/ide_stdio.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/intent_classifier.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/interactions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/invoke.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/kaira_client.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/kaira_daemon.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/kaira_job_store.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/learning.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/limits.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/live_audio_engine.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/logging_config.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/mcp_loader.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/memory/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/memory/embedding_memory_service.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/memory/file_memory_service.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/modality_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/model_errors.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/model_routing.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/multimodal_input.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/openapi_loader.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/org.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/output_styles.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/paths.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/permissions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/plugins/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/plugins/terminal_hooks_plugin.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/plugins/tool_recovery_plugin.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/policy_profile.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/pricing.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/prompt_suggestions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/config.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/deps.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/engine.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/stop_hooks.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/token_budget.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query/transitions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/query_sanitizer.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/refine.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/repl_commands.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/review_agent.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/rules.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/session_runtime.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/session_store.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/session_summariser.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/skills.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/slash_commands.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/thinking.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tool_prompt_manifest.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tool_registry.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tool_result_store.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/automations_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/bash.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/browser.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/compress_memory.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/curated_memory.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/edit.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/filesystem.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/notebook.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/notes.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/org_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/repo_map.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/search.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/shell.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/shell_gate.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/skills.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/subtask.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/tasks.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/think.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/todo.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/user_choice.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/veomem_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/web.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools/web_search.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tools_inspector.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/trust.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tui/input_handler.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tui/scrollback.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tui/spinner.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tui/welcome_banner.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/tui/welcome_rich.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/veomem_bridge.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/version.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/vertex.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/wal.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/web/__init__.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/web/sse_adapter.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/web/terminal_repl.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/web/web_sse_compat.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode/workspace_hints.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode.egg-info/SOURCES.txt +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode.egg-info/dependency_links.txt +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode.egg-info/entry_points.txt +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode.egg-info/requires.txt +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/src/gemcode.egg-info/top_level.txt +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_add_dir.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_agent_instruction.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_autocompact.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_automations.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_capability_routing.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_checkpoint_diff_command.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_cli_init.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_compress_memory_tool.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_computer_use_permissions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_context_budget.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_context_warning.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_credentials.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_eval_harness_layout.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_ide_stdio_attachments.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_interactive_permission_ask.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_kaira_scheduler.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_modality_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_model_error_retry.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_model_errors.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_model_routing.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_multimodal_input.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_output_styles_and_rules.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_paths.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_permissions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_prompt_suggestions.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_repl_commands.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_repl_slash.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_session_runtime_cache.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_skills.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_slash_commands.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_slash_completion_registry.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_thinking_config.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_token_budget.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_tool_context_circulation.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_tools.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_tools_inspector.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_web_sse_adapter.py +0 -0
- {gemcode-0.3.117 → gemcode-0.3.119}/tests/test_workspace_hints.py +0 -0
|
@@ -61,7 +61,11 @@ class KairaIpcServer:
|
|
|
61
61
|
self._cancel_job_fn = cancel_job_fn
|
|
62
62
|
self._set_concurrency_fn = set_concurrency_fn
|
|
63
63
|
self._server: asyncio.AbstractServer | None = None
|
|
64
|
-
|
|
64
|
+
# Keep clients in a list (not a set).
|
|
65
|
+
#
|
|
66
|
+
# `IpcClient` is a mutable dataclass containing `asyncio.StreamWriter`
|
|
67
|
+
# which is unhashable on Python, so it cannot safely live in a `set`.
|
|
68
|
+
self._clients: list[IpcClient] = []
|
|
65
69
|
self._lock = asyncio.Lock()
|
|
66
70
|
self._pending_confirmations: dict[str, asyncio.Future[bool]] = {}
|
|
67
71
|
|
|
@@ -168,8 +172,10 @@ class KairaIpcServer:
|
|
|
168
172
|
|
|
169
173
|
async def _drop_client(self, c: IpcClient) -> None:
|
|
170
174
|
async with self._lock:
|
|
171
|
-
|
|
175
|
+
try:
|
|
172
176
|
self._clients.remove(c)
|
|
177
|
+
except ValueError:
|
|
178
|
+
pass
|
|
173
179
|
try:
|
|
174
180
|
c.writer.close()
|
|
175
181
|
await c.writer.wait_closed()
|
|
@@ -181,7 +187,7 @@ class KairaIpcServer:
|
|
|
181
187
|
) -> None:
|
|
182
188
|
client = IpcClient(writer=writer, emitter=IdeEmitter(stream=writer))
|
|
183
189
|
async with self._lock:
|
|
184
|
-
self._clients.
|
|
190
|
+
self._clients.append(client)
|
|
185
191
|
|
|
186
192
|
try:
|
|
187
193
|
while True:
|
|
@@ -2734,8 +2734,10 @@ async def process_repl_slash(
|
|
|
2734
2734
|
member = parts[0].strip()
|
|
2735
2735
|
task = parts[1].strip()
|
|
2736
2736
|
try:
|
|
2737
|
+
from gemcode.org import resolve_fleet_root
|
|
2737
2738
|
from gemcode.kaira_client import KairaIpcClient
|
|
2738
|
-
|
|
2739
|
+
fleet_root = resolve_fleet_root(cfg.project_root)
|
|
2740
|
+
sock = os.environ.get("GEMCODE_KAIRA_SOCKET") or str(fleet_root / ".gemcode" / "ipc.sock")
|
|
2739
2741
|
client = await KairaIpcClient.connect(socket_path=sock)
|
|
2740
2742
|
try:
|
|
2741
2743
|
res = await client.publish(
|
|
@@ -2753,15 +2755,36 @@ async def process_repl_slash(
|
|
|
2753
2755
|
out()
|
|
2754
2756
|
return ReplSlashResult(skip_model_turn=True)
|
|
2755
2757
|
except Exception as e:
|
|
2756
|
-
|
|
2757
|
-
|
|
2758
|
-
|
|
2759
|
-
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
|
|
2764
|
-
|
|
2758
|
+
# Runtime is unavailable; do in-turn delegation deterministically (no model mediation).
|
|
2759
|
+
out(f"[agent] runtime unavailable ({type(e).__name__}); delegating in-turn")
|
|
2760
|
+
try:
|
|
2761
|
+
from gemcode.tools.org_tools import make_org_tools
|
|
2762
|
+
|
|
2763
|
+
org_delegate = None
|
|
2764
|
+
for t in make_org_tools(cfg):
|
|
2765
|
+
if getattr(t, "__name__", "") == "org_delegate":
|
|
2766
|
+
org_delegate = t
|
|
2767
|
+
break
|
|
2768
|
+
if org_delegate is None:
|
|
2769
|
+
out("[agent] org_delegate tool not available")
|
|
2770
|
+
out()
|
|
2771
|
+
return ReplSlashResult(skip_model_turn=True)
|
|
2772
|
+
d = await org_delegate(member=member, task=task, context="") # type: ignore[misc]
|
|
2773
|
+
if isinstance(d, dict) and d.get("ok"):
|
|
2774
|
+
if d.get("job_id"):
|
|
2775
|
+
out(f"[agent] delegated (background): member={member} job_id={str(d.get('job_id'))[:10]}")
|
|
2776
|
+
else:
|
|
2777
|
+
out(f"[agent] delegated (in-process): member={member}")
|
|
2778
|
+
if d.get("result"):
|
|
2779
|
+
out(str(d.get("result")))
|
|
2780
|
+
else:
|
|
2781
|
+
out(f"[agent] delegation failed: {d.get('error') if isinstance(d, dict) else d}")
|
|
2782
|
+
out()
|
|
2783
|
+
return ReplSlashResult(skip_model_turn=True)
|
|
2784
|
+
except Exception as e2:
|
|
2785
|
+
out(f"[agent] in-turn delegation failed: {type(e2).__name__}: {e2}")
|
|
2786
|
+
out()
|
|
2787
|
+
return ReplSlashResult(skip_model_turn=True)
|
|
2765
2788
|
|
|
2766
2789
|
if sub == "spawn":
|
|
2767
2790
|
# /agent spawn <name> <title> <kaira_worker|subagent> <task...>
|
|
@@ -2826,8 +2849,10 @@ async def process_repl_slash(
|
|
|
2826
2849
|
member = parts[0].strip()
|
|
2827
2850
|
task = parts[1].strip()
|
|
2828
2851
|
try:
|
|
2852
|
+
from gemcode.org import resolve_fleet_root
|
|
2829
2853
|
from gemcode.kaira_client import KairaIpcClient
|
|
2830
|
-
|
|
2854
|
+
fleet_root = resolve_fleet_root(cfg.project_root)
|
|
2855
|
+
sock = os.environ.get("GEMCODE_KAIRA_SOCKET") or str(fleet_root / ".gemcode" / "ipc.sock")
|
|
2831
2856
|
client = await KairaIpcClient.connect(socket_path=sock)
|
|
2832
2857
|
try:
|
|
2833
2858
|
res = await client.publish(
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|