Je pense avoir trouvé le début d’une piste ;
Dans les sources du plugin, j’ai identifié la vérification des dépendances (jeedom_reolink_plugin/core/class/reolink.class.php at d84f7ff314073ca4a79ef85fd78d12940a9e8331 · Jezza34000/jeedom_reolink_plugin · GitHub)
public static function dependancy_info() {
$return = array();
$return['log'] = log::getPathToLog(__CLASS__ . '_update');
$return['progress_file'] = jeedom::getTmpFolder(__CLASS__) . '/dependance';
$return['state'] = 'ok';
if (file_exists(jeedom::getTmpFolder(__CLASS__) . '/dependance')) {
$return['state'] = 'in_progress';
} elseif (!file_exists(self::PYTHON_PATH)) {
$return['state'] = 'nok';
} elseif (exec(self::PYTHON_PATH . ' -m pip list | grep -Ewc "aiosignal|aiohttp|uvicorn|fastapi|urllib3|requests|charset-normalizer"') < 7) {
$return['state'] = 'nok';
}
return $return;
}
Il y a 7 bibliothèques vérifier et effectivement il me manque « uvicorn » et « fastapi » ! Donc le résultat NOK s’explique bien. J’ai finalement pu installer « uvicorn » (en relancant manuellement « python3 -m pip install --upgrade -r /var/www/html/plugins/reolink/resources/requirements.txt »)
Je bloque sur la « fastapi » j’ai une erreur avec un time out qui semble liée à une autre dépendance à « pydantic » :
Downloading pydantic-2.11.5-py3-none-any.whl (444 kB)
[notice] A new release of pip is available: 24.3.1 -> 25.1.1
[notice] To update, run: python3 -m pip install --upgrade pip
ERROR: Exception:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 438, in _error_catcher
yield
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 561, in read
data = self._fp_read(amt) if not fp_closed else b""
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 527, in _fp_read
return self._fp.read(amt) if amt is not None else self._fp.read()
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/cachecontrol/filewrapper.py", line 98, in read
data: bytes = self.__fp.read(amt)
File "/usr/lib/python3.9/http/client.py", line 458, in read
n = self.readinto(b)
File "/usr/lib/python3.9/http/client.py", line 502, in readinto
n = self.fp.readinto(b)
File "/usr/lib/python3.9/socket.py", line 704, in readinto
return self._sock.recv_into(b)
File "/usr/lib/python3.9/ssl.py", line 1241, in recv_into
return self.read(nbytes, buffer)
File "/usr/lib/python3.9/ssl.py", line 1099, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper
status = _inner_run()
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run
return self.run(options, args)
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/req_command.py", line 67, in wrapper
return func(self, options, args)
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/commands/install.py", line 379, in run
requirement_set = resolver.resolve(
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 179, in resolve
self.factory.preparer.prepare_linked_requirements_more(reqs)
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/prepare.py", line 554, in prepare_linked_requirements_more
self._complete_partial_requirements(
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/prepare.py", line 469, in _complete_partial_requirements
for link, (filepath, _) in batch_download:
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/network/download.py", line 184, in __call__
for chunk in chunks:
File "/usr/local/lib/python3.9/dist-packages/pip/_internal/network/utils.py", line 65, in response_chunks
for chunk in response.raw.stream(
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 622, in stream
data = self.read(amt=amt, decode_content=decode_content)
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 587, in read
raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
File "/usr/lib/python3.9/contextlib.py", line 135, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/urllib3/response.py", line 443, in _error_catcher
raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.