mxcubecore 1.391.0__py3-none-any.whl → 1.393.0__py3-none-any.whl
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.
Potentially problematic release.
This version of mxcubecore might be problematic. Click here for more details.
- mxcubecore/BaseHardwareObjects.py +1 -1
- mxcubecore/Command/Epics.py +2 -2
- mxcubecore/Command/Pool.py +4 -4
- mxcubecore/Command/Sardana.py +7 -3
- mxcubecore/Command/Taco.py +2 -2
- mxcubecore/Command/Tango.py +2 -2
- mxcubecore/Command/Tine.py +1 -1
- mxcubecore/Command/exporter/ExporterClient.py +2 -2
- mxcubecore/Command/exporter/StandardClient.py +4 -3
- mxcubecore/HardwareObjects/ALBA/ALBABeamInfo.py +1 -1
- mxcubecore/HardwareObjects/ALBA/ALBACollect.py +2 -2
- mxcubecore/HardwareObjects/ALBA/ALBAFlux.py +1 -1
- mxcubecore/HardwareObjects/ALBA/ALBAISPyBClient.py +2 -2
- mxcubecore/HardwareObjects/ALBA/ALBAPilatus.py +1 -1
- mxcubecore/HardwareObjects/BeamInfo.py +1 -1
- mxcubecore/HardwareObjects/BlissHutchTrigger.py +2 -0
- mxcubecore/HardwareObjects/Cats90.py +3 -3
- mxcubecore/HardwareObjects/CatsBessy.py +2 -1
- mxcubecore/HardwareObjects/DESY/DigitalZoomMotor.py +2 -0
- mxcubecore/HardwareObjects/DESY/MjpgStreamVideo.py +4 -0
- mxcubecore/HardwareObjects/DESY/P11Collect.py +2 -0
- mxcubecore/HardwareObjects/DESY/P11EDNACharacterisation.py +12 -12
- mxcubecore/HardwareObjects/DESY/P11ISPyBClient.py +2 -2
- mxcubecore/HardwareObjects/DESY/P11NanoDiff.py +2 -0
- mxcubecore/HardwareObjects/EMBL/EMBLBeamFocusing.py +1 -1
- mxcubecore/HardwareObjects/EMBL/EMBLBeamlineTest.py +2 -0
- mxcubecore/HardwareObjects/EMBL/EMBLEnergyScan.py +3 -1
- mxcubecore/HardwareObjects/EMBL/EMBLFlux.py +1 -1
- mxcubecore/HardwareObjects/EMBL/TINEMotor.py +4 -2
- mxcubecore/HardwareObjects/ESRF/ESRFBeam.py +1 -1
- mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py +3 -2
- mxcubecore/HardwareObjects/ESRF/ESRFMetadataManagerClient.py +1 -1
- mxcubecore/HardwareObjects/ESRF/ID29HutchTrigger.py +2 -0
- mxcubecore/HardwareObjects/ESRF/MD2MultiCollect.py +1 -1
- mxcubecore/HardwareObjects/FlexHCDMaintenance.py +2 -1
- mxcubecore/HardwareObjects/GenericDiffractometer.py +21 -5
- mxcubecore/HardwareObjects/Gphl/GphlMessages.py +2 -1
- mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py +1 -0
- mxcubecore/HardwareObjects/LNLS/LNLSCollect.py +2 -0
- mxcubecore/HardwareObjects/LNLS/LNLSPilatusDet.py +12 -0
- mxcubecore/HardwareObjects/LimaEigerDetector.py +1 -1
- mxcubecore/HardwareObjects/Marvin.py +2 -2
- mxcubecore/HardwareObjects/MicrodiffActuator.py +1 -1
- mxcubecore/HardwareObjects/MicrodiffBeamstop.py +3 -1
- mxcubecore/HardwareObjects/MicrodiffInOut.py +1 -1
- mxcubecore/HardwareObjects/MiniDiff.py +1 -1
- mxcubecore/HardwareObjects/MotorWPositions.py +2 -0
- mxcubecore/HardwareObjects/PlateManipulator.py +2 -2
- mxcubecore/HardwareObjects/QtGraphicsLib.py +2 -2
- mxcubecore/HardwareObjects/QtGraphicsManager.py +3 -3
- mxcubecore/HardwareObjects/QueueManager.py +3 -3
- mxcubecore/HardwareObjects/RedisClient.py +3 -3
- mxcubecore/HardwareObjects/SC3.py +2 -1
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1BeamInfo.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Cryotong.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Pilatus.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Collect.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/SOLEILISPyBClient.py +8 -8
- mxcubecore/HardwareObjects/SOLEIL/SOLEILRuche.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/TangoDCMotor.py +1 -1
- mxcubecore/HardwareObjects/Session.py +2 -1
- mxcubecore/HardwareObjects/SpecShell.py +6 -6
- mxcubecore/HardwareObjects/SpecState.py +1 -1
- mxcubecore/HardwareObjects/TangoLimaMpegVideo.py +1 -1
- mxcubecore/HardwareObjects/TangoMotor.py +3 -1
- mxcubecore/HardwareObjects/UserTypeISPyBLims.py +4 -2
- mxcubecore/HardwareObjects/XMLRPCServer.py +2 -2
- mxcubecore/HardwareObjects/abstract/AbstractCollect.py +1 -1
- mxcubecore/HardwareObjects/abstract/AbstractMultiCollect.py +6 -6
- mxcubecore/HardwareObjects/abstract/AbstractNState.py +2 -1
- mxcubecore/HardwareObjects/abstract/AbstractVideoDevice.py +2 -2
- mxcubecore/HardwareObjects/abstract/AbstractXRFSpectrum.py +2 -0
- mxcubecore/HardwareObjects/abstract/ISPyBAbstractLims.py +5 -5
- mxcubecore/HardwareObjects/abstract/ISPyBDataAdapter.py +3 -3
- mxcubecore/HardwareObjects/abstract/sample_changer/Crims.py +8 -0
- mxcubecore/HardwareObjects/mockup/BeamlineTestMockup.py +2 -0
- mxcubecore/HardwareObjects/mockup/EnergyScanMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/ISPyBClientMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/ISPyBRestClientMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/MDCameraMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/MicrodiffInOutMockup.py +1 -1
- mxcubecore/TaskUtils.py +2 -0
- mxcubecore/queue_entry/base_queue_entry.py +2 -2
- mxcubecore/queue_entry/energy_scan.py +1 -1
- mxcubecore/saferef.py +2 -1
- mxcubecore/utils/qt_import.py +8 -7
- {mxcubecore-1.391.0.dist-info → mxcubecore-1.393.0.dist-info}/METADATA +1 -1
- {mxcubecore-1.391.0.dist-info → mxcubecore-1.393.0.dist-info}/RECORD +91 -91
- {mxcubecore-1.391.0.dist-info → mxcubecore-1.393.0.dist-info}/COPYING +0 -0
- {mxcubecore-1.391.0.dist-info → mxcubecore-1.393.0.dist-info}/COPYING.LESSER +0 -0
- {mxcubecore-1.391.0.dist-info → mxcubecore-1.393.0.dist-info}/WHEEL +0 -0
|
@@ -270,12 +270,12 @@ class AbstractMultiCollect(object):
|
|
|
270
270
|
try:
|
|
271
271
|
sample_container_number = int(sample_info["container_reference"])
|
|
272
272
|
except Exception:
|
|
273
|
-
|
|
273
|
+
logging.getLogger("HWR").exception("")
|
|
274
274
|
else:
|
|
275
275
|
try:
|
|
276
276
|
vial_number = int(sample_info["sample_location"])
|
|
277
277
|
except Exception:
|
|
278
|
-
|
|
278
|
+
logging.getLogger("HWR").exception("")
|
|
279
279
|
else:
|
|
280
280
|
sample_location = (sample_container_number, vial_number)
|
|
281
281
|
|
|
@@ -540,7 +540,7 @@ class AbstractMultiCollect(object):
|
|
|
540
540
|
logging.getLogger("user_level_log").info("Getting centring status")
|
|
541
541
|
centring_status = self.diffractometer().get_centring_status()
|
|
542
542
|
except Exception:
|
|
543
|
-
|
|
543
|
+
logging.getLogger("HWR").exception("")
|
|
544
544
|
else:
|
|
545
545
|
centring_info = dict(centring_status)
|
|
546
546
|
|
|
@@ -644,7 +644,7 @@ class AbstractMultiCollect(object):
|
|
|
644
644
|
try:
|
|
645
645
|
f.close()
|
|
646
646
|
except Exception:
|
|
647
|
-
|
|
647
|
+
logging.getLogger("HWR").exception("")
|
|
648
648
|
|
|
649
649
|
data_collect_parameters["xtalSnapshotFullPath%i" % snapshot_i] = (
|
|
650
650
|
full_snapshot
|
|
@@ -808,7 +808,7 @@ class AbstractMultiCollect(object):
|
|
|
808
808
|
HWR.beamline.beam.wait_for_beam()
|
|
809
809
|
HWR.beamline.cryo.wait_temperature()
|
|
810
810
|
except AttributeError:
|
|
811
|
-
|
|
811
|
+
logging.getLogger("HWR").exception("")
|
|
812
812
|
|
|
813
813
|
logging.getLogger("user_level_log").info("Preparing intensity monitors")
|
|
814
814
|
self.prepare_intensity_monitors()
|
|
@@ -1149,7 +1149,7 @@ class AbstractMultiCollect(object):
|
|
|
1149
1149
|
),
|
|
1150
1150
|
)
|
|
1151
1151
|
except Exception:
|
|
1152
|
-
|
|
1152
|
+
logging.getLogger("HWR").exception("")
|
|
1153
1153
|
else:
|
|
1154
1154
|
collections_analyse_params.append(
|
|
1155
1155
|
(
|
|
@@ -24,6 +24,7 @@ Implements validate_value, set/update limits.
|
|
|
24
24
|
|
|
25
25
|
import abc
|
|
26
26
|
import ast
|
|
27
|
+
import logging
|
|
27
28
|
from enum import (
|
|
28
29
|
Enum,
|
|
29
30
|
unique,
|
|
@@ -92,7 +93,7 @@ class AbstractNState(AbstractActuator):
|
|
|
92
93
|
values_dict.update(values)
|
|
93
94
|
self.VALUES = Enum("ValueEnum", values_dict)
|
|
94
95
|
except (ValueError, TypeError):
|
|
95
|
-
|
|
96
|
+
logging.getLogger("HWR").exception("")
|
|
96
97
|
|
|
97
98
|
def value_to_enum(self, value, idx=0):
|
|
98
99
|
"""Transform a value to Enum
|
|
@@ -42,7 +42,7 @@ import numpy as np
|
|
|
42
42
|
try:
|
|
43
43
|
import cv2
|
|
44
44
|
except ImportError:
|
|
45
|
-
|
|
45
|
+
logging.getLogger("HWR").exception("")
|
|
46
46
|
|
|
47
47
|
from mxcubecore.BaseHardwareObjects import HardwareObject
|
|
48
48
|
|
|
@@ -120,7 +120,7 @@ class AbstractVideoDevice(HardwareObject):
|
|
|
120
120
|
try:
|
|
121
121
|
self.cam_gain = float(self.get_property("gain"))
|
|
122
122
|
except TypeError:
|
|
123
|
-
|
|
123
|
+
logging.getLogger("HWR").exception("")
|
|
124
124
|
|
|
125
125
|
try:
|
|
126
126
|
self.cam_exposure = float(self.get_property("exposure"))
|
|
@@ -182,6 +182,8 @@ class AbstractXRFSpectrum(HardwareObject):
|
|
|
182
182
|
logging.getLogger().error(msg)
|
|
183
183
|
self.spectrum_status_change("Error creating directory")
|
|
184
184
|
self.spectrum_command_aborted()
|
|
185
|
+
|
|
186
|
+
logging.getLogger("HWR").exception("")
|
|
185
187
|
return False
|
|
186
188
|
return True
|
|
187
189
|
|
|
@@ -58,7 +58,7 @@ class ISPyBAbstractLIMS(AbstractLims):
|
|
|
58
58
|
try:
|
|
59
59
|
self.base_result_url = self.get_property("base_result_url").strip()
|
|
60
60
|
except AttributeError:
|
|
61
|
-
|
|
61
|
+
logging.getLogger("HWR").exception("")
|
|
62
62
|
|
|
63
63
|
self.adapter = self._create_data_adapter()
|
|
64
64
|
logging.getLogger("HWR").debug("[ISPYB] Proxy address: %s" % self.proxy)
|
|
@@ -72,15 +72,15 @@ class ISPyBAbstractLIMS(AbstractLims):
|
|
|
72
72
|
try:
|
|
73
73
|
self._translations[code]["ldap"] = proposal.ldap
|
|
74
74
|
except AttributeError:
|
|
75
|
-
|
|
75
|
+
logging.getLogger("HWR").exception("")
|
|
76
76
|
try:
|
|
77
77
|
self._translations[code]["ispyb"] = proposal.ispyb
|
|
78
78
|
except AttributeError:
|
|
79
|
-
|
|
79
|
+
logging.getLogger("HWR").exception("")
|
|
80
80
|
try:
|
|
81
81
|
self._translations[code]["gui"] = proposal.gui
|
|
82
82
|
except AttributeError:
|
|
83
|
-
|
|
83
|
+
logging.getLogger("HWR").exception("")
|
|
84
84
|
|
|
85
85
|
def _create_data_adapter(self) -> ISPyBDataAdapter:
|
|
86
86
|
return ISPyBDataAdapter(
|
|
@@ -180,7 +180,7 @@ class ISPyBAbstractLIMS(AbstractLims):
|
|
|
180
180
|
)
|
|
181
181
|
return sample
|
|
182
182
|
except (TypeError, KeyError):
|
|
183
|
-
|
|
183
|
+
logging.getLogger("HWR").exception("")
|
|
184
184
|
return None
|
|
185
185
|
|
|
186
186
|
def get_samples(self, lims_name):
|
|
@@ -59,7 +59,7 @@ def utf_decode(res_d):
|
|
|
59
59
|
try:
|
|
60
60
|
res_d[key] = value.decode("utf8", "ignore")
|
|
61
61
|
except Exception:
|
|
62
|
-
|
|
62
|
+
logging.getLogger("HWR").exception("")
|
|
63
63
|
|
|
64
64
|
return res_d
|
|
65
65
|
|
|
@@ -529,7 +529,7 @@ class ISPyBDataAdapter:
|
|
|
529
529
|
session_dict["timeStamp"].split("+")[0], "%Y-%m-%d %H:%M:%S"
|
|
530
530
|
)
|
|
531
531
|
except Exception:
|
|
532
|
-
|
|
532
|
+
logging.getLogger("HWR").exception("")
|
|
533
533
|
|
|
534
534
|
# return data to original codification
|
|
535
535
|
decoded_dict = utf_decode(session_dict)
|
|
@@ -673,7 +673,7 @@ class ISPyBDataAdapter:
|
|
|
673
673
|
try:
|
|
674
674
|
del energyscan_dict["remoteEnergy"]
|
|
675
675
|
except KeyError:
|
|
676
|
-
|
|
676
|
+
logging.getLogger("HWR").exception("")
|
|
677
677
|
|
|
678
678
|
status["energyScanId"] = self._collection.service.storeOrUpdateEnergyScan(
|
|
679
679
|
energyscan_dict
|
|
@@ -16,6 +16,8 @@ def get_image(url: str) -> Optional[bytes]:
|
|
|
16
16
|
logging.getLogger("user_level_log").warning(
|
|
17
17
|
"Failed to fetch image from %s: %s", url, e
|
|
18
18
|
)
|
|
19
|
+
|
|
20
|
+
logging.getLogger("HWR").exception("")
|
|
19
21
|
return None
|
|
20
22
|
|
|
21
23
|
|
|
@@ -28,6 +30,8 @@ def get_image_size(url: str) -> Tuple[int, int]:
|
|
|
28
30
|
logging.getLogger("user_level_log").warning(
|
|
29
31
|
"Failed to get image size from %s: %s", url, e
|
|
30
32
|
)
|
|
33
|
+
|
|
34
|
+
logging.getLogger("HWR").exception("")
|
|
31
35
|
return (0, 0)
|
|
32
36
|
|
|
33
37
|
|
|
@@ -147,6 +151,8 @@ def get_processing_plan(
|
|
|
147
151
|
logging.getLogger("user_level_log").warning(
|
|
148
152
|
"Error getting processing plan from %s : %s", url, e
|
|
149
153
|
)
|
|
154
|
+
|
|
155
|
+
logging.getLogger("HWR").exception("")
|
|
150
156
|
return None
|
|
151
157
|
|
|
152
158
|
|
|
@@ -174,4 +180,6 @@ def send_data_collection_info_to_crims(
|
|
|
174
180
|
return True
|
|
175
181
|
except requests.RequestException as e:
|
|
176
182
|
logging.getLogger("user_level_log").warning("Request to %s failed: %s", url, e)
|
|
183
|
+
|
|
184
|
+
logging.getLogger("HWR").exception("")
|
|
177
185
|
return False
|
|
@@ -392,7 +392,7 @@ class EnergyScanMockup(AbstractEnergyScan):
|
|
|
392
392
|
for el in self.config.elements["element"]:
|
|
393
393
|
elements.append({"symbol": el["symbol"], "energy": el["energy"]})
|
|
394
394
|
except IndexError:
|
|
395
|
-
|
|
395
|
+
logging.getLogger("HWR").exception("")
|
|
396
396
|
return elements
|
|
397
397
|
|
|
398
398
|
#
|
|
@@ -35,7 +35,7 @@ class ISPyBClientMockup(ProposalTypeISPyBLims):
|
|
|
35
35
|
try:
|
|
36
36
|
self.base_result_url = self.get_property("base_result_url").strip()
|
|
37
37
|
except AttributeError:
|
|
38
|
-
|
|
38
|
+
logging.getLogger("HWR").exception("")
|
|
39
39
|
|
|
40
40
|
self.__test_proposal = {
|
|
41
41
|
"status": {"code": "ok"},
|
mxcubecore/TaskUtils.py
CHANGED
|
@@ -640,7 +640,7 @@ class TaskGroupQueueEntry(BaseQueueEntry):
|
|
|
640
640
|
"queue_entry"
|
|
641
641
|
].execute()
|
|
642
642
|
except Exception:
|
|
643
|
-
|
|
643
|
+
logging.getLogger("HWR").exception("")
|
|
644
644
|
self.interleave_items[item["collect_index"]][
|
|
645
645
|
"queue_entry"
|
|
646
646
|
].post_execute()
|
|
@@ -804,7 +804,7 @@ class SampleQueueEntry(BaseQueueEntry):
|
|
|
804
804
|
programs = HWR.beamline.collect["auto_processing"]
|
|
805
805
|
autoprocessing.start(programs, "end_multicollect", params)
|
|
806
806
|
except KeyError:
|
|
807
|
-
|
|
807
|
+
logging.getLogger("HWR").exception("")
|
|
808
808
|
|
|
809
809
|
self._set_background_color()
|
|
810
810
|
self._view.setText(1, "")
|
|
@@ -195,7 +195,7 @@ class EnergyScanQueueEntry(BaseQueueEntry):
|
|
|
195
195
|
try:
|
|
196
196
|
energy_scan.result.data = HWR.beamline.energy_scan.get_scan_data()
|
|
197
197
|
except Exception:
|
|
198
|
-
|
|
198
|
+
logging.getLogger("HWR").exception("")
|
|
199
199
|
|
|
200
200
|
if (
|
|
201
201
|
sample.crystals[0].energy_scan_result.peak
|
mxcubecore/saferef.py
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""Refactored 'safe reference from dispatcher.py"""
|
|
2
2
|
|
|
3
3
|
import collections
|
|
4
|
+
import logging
|
|
4
5
|
import traceback
|
|
5
6
|
import weakref
|
|
6
7
|
|
|
@@ -115,7 +116,7 @@ class BoundMethodWeakref(object):
|
|
|
115
116
|
try:
|
|
116
117
|
del self.__class__._all_instances[self.key]
|
|
117
118
|
except KeyError:
|
|
118
|
-
|
|
119
|
+
logging.getLogger("HWR").exception("")
|
|
119
120
|
for function in methods:
|
|
120
121
|
try:
|
|
121
122
|
if isinstance(function, collections.abc.Callable):
|
mxcubecore/utils/qt_import.py
CHANGED
|
@@ -68,6 +68,7 @@ splot is licensed under LGPL license
|
|
|
68
68
|
|
|
69
69
|
"""
|
|
70
70
|
|
|
71
|
+
import logging
|
|
71
72
|
import os
|
|
72
73
|
import sys
|
|
73
74
|
|
|
@@ -99,9 +100,9 @@ try:
|
|
|
99
100
|
if m:
|
|
100
101
|
mpl_version_no[2] = int(m.group("release"))
|
|
101
102
|
except BaseException:
|
|
102
|
-
|
|
103
|
+
logging.getLogger("HWR").exception("")
|
|
103
104
|
except BaseException:
|
|
104
|
-
|
|
105
|
+
logging.getLogger("HWR").exception("")
|
|
105
106
|
|
|
106
107
|
if "--pyqt5" in sys.argv:
|
|
107
108
|
qt_variant = "PyQt5"
|
|
@@ -239,12 +240,12 @@ if (qt_variant == "PyQt5") or (qt_variant is None and not qt_imported):
|
|
|
239
240
|
ver = _ver + ["0"] * (3 - len(_ver))
|
|
240
241
|
pyqt_version_no = list(map(int, ver))[:3]
|
|
241
242
|
except ImportError:
|
|
242
|
-
|
|
243
|
+
logging.getLogger("HWR").exception("")
|
|
243
244
|
|
|
244
245
|
try:
|
|
245
246
|
from PyQt5.QtWebKit import QWebPage
|
|
246
247
|
except ImportError:
|
|
247
|
-
|
|
248
|
+
logging.getLogger("HWR").exception("")
|
|
248
249
|
|
|
249
250
|
#
|
|
250
251
|
# PyQt4
|
|
@@ -380,12 +381,12 @@ if (qt_variant == "PyQt4") or (qt_variant is None and not qt_imported):
|
|
|
380
381
|
ver = _ver + ["0"] * (3 - len(_ver))
|
|
381
382
|
pyqt_version_no = list(map(int, ver))[:3]
|
|
382
383
|
except BaseException:
|
|
383
|
-
|
|
384
|
+
logging.getLogger("HWR").exception("")
|
|
384
385
|
|
|
385
386
|
try:
|
|
386
387
|
from PyQt4.QtWebKit import QWebPage
|
|
387
388
|
except ImportError:
|
|
388
|
-
|
|
389
|
+
logging.getLogger("HWR").exception("")
|
|
389
390
|
|
|
390
391
|
#
|
|
391
392
|
# PySide
|
|
@@ -423,7 +424,7 @@ if (qt_variant == "PySide") or (qt_variant is None and not qt_imported):
|
|
|
423
424
|
return ui
|
|
424
425
|
|
|
425
426
|
except BaseException:
|
|
426
|
-
|
|
427
|
+
logging.getLogger("HWR").exception("")
|
|
427
428
|
|
|
428
429
|
#
|
|
429
430
|
# Matplotlib backend assignment
|