mxcube / mxcubecore

Backend used by MXCuBE
http://mxcube.github.io/mxcube/
GNU Lesser General Public License v3.0
11 stars 52 forks source link

PR is For Using Difractometer in Plate Mode - Making PlateManipulator available in Mxcube-web #767

Closed jbflo closed 1 year ago

jbflo commented 1 year ago

This PR is for When Using Difractometer in Plate Mode This includes changes In PlateManipulator class and Mockup

Should not have breaking Change , PR #1005 in The MXCuBE-web is related to this one .

github-actions[bot] commented 1 year ago

Coverage

Coverage Report •
FileStmtsMissCoverMissing
mxcubecore/HardwareObjects
   PlateManipulator.py4424420%35–718
   PlateManipulatorMaintenance.py48480%4–125
mxcubecore/HardwareObjects/abstract/sample_changer
   Crims.py96960%1–126
mxcubecore/HardwareObjects/mockup
   PlateManipulatorMockup.py3333330%19–564
TOTAL58585542977% 

Tests Skipped Failures Errors Time
1920 0 :zzz: 0 :x: 0 :fire: 1m 41s :stopwatch:
beteva commented 1 year ago

Dear @jbflo, thanks for this PR. Unfortunately the new PlateManipulatorMaintenance is incompatible with the latest mxcubecore standarts, namely inheriting from Equipment is deprecated. Could you, please, change the file so it corresponds to the latest mxcubecore standards (you may have a look at the contributing guidelines).

jbflo commented 1 year ago

Dear @beteva Thanks for your commented. I had a look at the contributing guidelines & mxcubecore/deprecated/, but could not really see the information that will give a me a clue.

I noticed the old maintenance classs are still implemented as Equipment.

will this change be enough ?

image

Many Thanks JB

rhfogh commented 1 year ago

This is too far from what I know about for me to review. Just a question: I notice that the PlateManipulator class seems to be strongly coupled to the Crims class. Are plate manipulators in general always attached to Crims? Or are there people who use plate manipulators who might not have Crism installed? Should the Crims dependency be moved to a site-specifric class?

jbflo commented 1 year ago

You Probably right @rhfogh, CRIMS is not mandatory for the Class to work. You can still use the class without CRIMS . EMBL Hambourg who started this had CRIMS and EMBL Grenoble/"ESRF" who is currently using it has CRIMS. MAX LAB @JieNanMAXIV who are maybe Interested at the PlateManipulator probably not. We can maybe think of moving the Crims dependency to a site-specifric class. later