zerochat 8.8.0__tar.gz → 8.9.0__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zerochat
3
- Version: 8.8.0
3
+ Version: 8.9.0
4
4
  Summary: Private local web client for AI models, tools and MCP services
5
5
  Author: Alberto Alday
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "zerochat"
7
- version = "8.8.0"
7
+ version = "8.9.0"
8
8
  description = "Private local web client for AI models, tools and MCP services"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zerochat
3
- Version: 8.8.0
3
+ Version: 8.9.0
4
4
  Summary: Private local web client for AI models, tools and MCP services
5
5
  Author: Alberto Alday
6
6
  License-Expression: MIT
@@ -42,7 +42,7 @@ import webbrowser
42
42
  from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
43
43
  from pathlib import Path
44
44
 
45
- SOURCE_BACKEND_VERSION = "8.8.0"
45
+ SOURCE_BACKEND_VERSION = "8.9.0"
46
46
 
47
47
  def _read_source_version(filename: str) -> str | None:
48
48
  """Lee la versión de un archivo del repositorio cuando se ejecuta desde fuentes."""
@@ -1745,7 +1745,8 @@ class McpServiceManager:
1745
1745
  result = []
1746
1746
  for server_id, server in self.services.items():
1747
1747
  client = self.clients.get(server_id)
1748
- running = bool(client and client.running())
1748
+ state = self.states.get(server_id, "stopped")
1749
+ running = bool(client and client.running() and state == "running")
1749
1750
  pref = self.preferences.get(server_id, {})
1750
1751
  result.append({
1751
1752
  "id": server_id,
@@ -1754,7 +1755,7 @@ class McpServiceManager:
1754
1755
  "help": server.get("help"),
1755
1756
  "remote": server.get("remote"),
1756
1757
  "enabled": pref.get("enabled", server.get("enabledByDefault", False)),
1757
- "status": "running" if running else self.states.get(server_id, "stopped"),
1758
+ "status": "running" if running else state,
1758
1759
  "toolCount": len(client.tools) if running else 0,
1759
1760
  "error": self.errors.get(server_id),
1760
1761
  "options": server.get("options", []),
@@ -1764,6 +1765,7 @@ class McpServiceManager:
1764
1765
 
1765
1766
  return result
1766
1767
 
1768
+
1767
1769
  def _expand(self, value: str, values: dict[str, str]) -> str:
1768
1770
  if not isinstance(value, str):
1769
1771
  raise ValueError("Invalid process argument")
@@ -1907,9 +1909,10 @@ class McpServiceManager:
1907
1909
  trace=lambda message: self._trace(server_id, message)
1908
1910
  )
1909
1911
  self.states[server_id] = "starting"
1910
- client.start(int(launch.get("handshakeTimeoutSeconds", 15)))
1911
1912
  self.clients[server_id] = client
1913
+ client.start(int(launch.get("handshakeTimeoutSeconds", 15)))
1912
1914
  self.states[server_id] = "running"
1915
+
1913
1916
  self.errors.pop(server_id, None)
1914
1917
  entry = self.preferences.setdefault(server_id, {})
1915
1918
  entry["enabled"] = True
File without changes
File without changes
File without changes