epics-bridge 1.0.0__tar.gz → 1.0.1__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: epics-bridge
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: A generic bridge between EPICS IOCs and Python logic.
5
5
  Author-email: Hugo Valim <hugo.valim@ess.eu>
6
6
  Requires-Python: >=3.9
@@ -9,9 +9,7 @@ Requires-Dist: numpy
9
9
  Requires-Dist: p4p
10
10
 
11
11
  # EPICS Bridge
12
-
13
- ![Coverage](resources/coverage.svg)
14
- ![Python](https://img.shields.io/badge/python-3.8%2B-blue)
12
+ ![Python](https://img.shields.io/badge/python-3.9%2B-blue)
15
13
  ![License](https://img.shields.io/badge/license-MIT-green)
16
14
 
17
15
  **EPICS Bridge** is a high-availability Python framework designed for implementing a robust EPICS-Python interface. It provides a structured environment for bridging external control logic with the EPICS control system, emphasizing synchronous execution, fault tolerance, and strict process monitoring.
@@ -1,7 +1,5 @@
1
1
  # EPICS Bridge
2
-
3
- ![Coverage](resources/coverage.svg)
4
- ![Python](https://img.shields.io/badge/python-3.8%2B-blue)
2
+ ![Python](https://img.shields.io/badge/python-3.9%2B-blue)
5
3
  ![License](https://img.shields.io/badge/license-MIT-green)
6
4
 
7
5
  **EPICS Bridge** is a high-availability Python framework designed for implementing a robust EPICS-Python interface. It provides a structured environment for bridging external control logic with the EPICS control system, emphasizing synchronous execution, fault tolerance, and strict process monitoring.
@@ -263,6 +263,11 @@ class BridgeDaemon(ABC):
263
263
  else:
264
264
  # Main loop is fine, but Network/EPICS layer is failing
265
265
  self._stuck_counter += 1
266
+ logger.warning(
267
+ "Heartbeat IO Error. Faults: %d/%d",
268
+ self._stuck_counter,
269
+ self.max_stuck_cycles,
270
+ )
266
271
 
267
272
  else:
268
273
  # The Main Loop has not updated its timestamp within 'stall_limit'.
@@ -300,7 +305,7 @@ class BridgeDaemon(ABC):
300
305
  def _send_pulse(self, context: Context, value: int) -> bool:
301
306
  """Attempts to write the heartbeat PV. Returns True if successful."""
302
307
  try:
303
- context.put(self.interface.heartbeat, value, wait=True, timeout=1.0)
308
+ context.put(self.interface.heartbeat, value, wait=True, timeout=2.0)
304
309
  return True
305
310
  except Exception as e:
306
311
  logger.warning("Heartbeat IO Error: %s", e)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: epics-bridge
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: A generic bridge between EPICS IOCs and Python logic.
5
5
  Author-email: Hugo Valim <hugo.valim@ess.eu>
6
6
  Requires-Python: >=3.9
@@ -9,9 +9,7 @@ Requires-Dist: numpy
9
9
  Requires-Dist: p4p
10
10
 
11
11
  # EPICS Bridge
12
-
13
- ![Coverage](resources/coverage.svg)
14
- ![Python](https://img.shields.io/badge/python-3.8%2B-blue)
12
+ ![Python](https://img.shields.io/badge/python-3.9%2B-blue)
15
13
  ![License](https://img.shields.io/badge/license-MIT-green)
16
14
 
17
15
  **EPICS Bridge** is a high-availability Python framework designed for implementing a robust EPICS-Python interface. It provides a structured environment for bridging external control logic with the EPICS control system, emphasizing synchronous execution, fault tolerance, and strict process monitoring.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "epics-bridge"
7
- version = "1.0.0"
7
+ version = "1.0.1"
8
8
  description = "A generic bridge between EPICS IOCs and Python logic."
9
9
  authors = [{name = "Hugo Valim", email = "hugo.valim@ess.eu"}]
10
10
  readme = "README.md"
File without changes