From 402a5d3376a8479e284b02af507fde5c9ae74cab Mon Sep 17 00:00:00 2001 From: Sebastien Bourdeauducq Date: Wed, 13 Dec 2023 13:46:45 +0800 Subject: [PATCH] core: connect lazily to analyzer proxy Otherwise artiq_compile and other uses of Core that does not access hardware/network may fail. --- artiq/coredevice/core.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/artiq/coredevice/core.py b/artiq/coredevice/core.py index 9377af682..10af8e3dd 100644 --- a/artiq/coredevice/core.py +++ b/artiq/coredevice/core.py @@ -98,15 +98,13 @@ class Core: self.comm = CommKernelDummy() else: self.comm = CommKernel(host) - if analyzer_proxy is None: - self.analyzer_proxy = None - else: - self.analyzer_proxy = dmgr.get(analyzer_proxy) + self.analyzer_proxy_name = analyzer_proxy self.first_run = True self.dmgr = dmgr self.core = self self.comm.core = self + self.analyzer_proxy = None def close(self): self.comm.close() @@ -306,6 +304,9 @@ class Core: analyzer proxy fails. In the latter case, more details would be available in the proxy log. """ + if self.analyzer_proxy is None: + if self.analyzer_proxy_name is not None: + self.analyzer_proxy = self.dmgr.get(self.analyzer_proxy_name) if self.analyzer_proxy is None: raise IOError("No analyzer proxy configured") else: