From dcc67042517daacdae667efb763395444da27519 Mon Sep 17 00:00:00 2001 From: fabcor Date: Tue, 11 Feb 2025 15:05:46 +0100 Subject: [PATCH] Drop support for Python 3.8 and Python 3.9 Supported versions are: * Python 3.10 * Python 3.11 Update all tools that were stuck on older versions because the tools themselves dropped Python 3.8 (and 3.9). Format and remove lint according to newest tool versions. GitHub: fix https://github.com/mxcube/mxcubecore/issues/1046 --- .github/workflows/pages.yaml | 4 +- .github/workflows/pre-commit.yml | 4 +- .github/workflows/tests.yml | 4 +- .isort.cfg | 2 +- .pre-commit-config.yaml | 14 +- conda-environment-dev.yml | 8 +- .../HardwareObjects/TacoDevice_MTSafe.py | 2 +- .../HardwareObjects/mockup/CameraMockup.py | 3 +- mxcubecore/Command/Exporter.py | 4 +- mxcubecore/Command/Pool.py | 2 +- mxcubecore/Command/Sardana.py | 2 +- mxcubecore/Command/Spec.py | 2 +- mxcubecore/Command/Taco.py | 2 +- mxcubecore/Command/Tine.py | 2 +- mxcubecore/Command/exporter/StandardClient.py | 2 +- mxcubecore/HardwareObjects/BeamlineTools.py | 3 +- mxcubecore/HardwareObjects/BlissShutter.py | 2 +- .../ESRF/ESRFBeamlineActions.py | 2 +- mxcubecore/HardwareObjects/ESRF/ESRFMD2SC3.py | 3 +- .../HardwareObjects/ESRF/ESRFPhotonFlux.py | 2 +- mxcubecore/HardwareObjects/ESRF/ESRFSC3.py | 3 +- .../ESRF/ESRFSmallXrayCentring.py | 3 +- mxcubecore/HardwareObjects/ESRF/ID30SC3.py | 3 +- .../HardwareObjects/ESRF/OxfordCryostream.py | 2 +- .../HardwareObjects/ESRF/Transmission.py | 2 +- .../HardwareObjects/Gphl/GphlMessages.py | 2 +- .../HardwareObjects/Gphl/GphlWorkflow.py | 6 +- .../Gphl/GphlWorkflowConnection.py | 2 +- .../HardwareObjects/GrobSampleChanger.py | 3 +- mxcubecore/HardwareObjects/QtGraphicsLib.py | 20 +- mxcubecore/HardwareObjects/TangoShutter.py | 2 +- .../HardwareObjects/abstract/AbstractLims.py | 3 +- .../abstract/AbstractNState.py | 2 +- .../abstract/AbstractOnlineProcessing.py | 3 +- .../abstract/AbstractShutter.py | 2 +- .../HardwareObjects/abstract/AbstractSlits.py | 3 +- .../abstract/AbstractXrayCentring.py | 3 +- .../mockup/XrayCentringMockup.py | 3 +- mxcubecore/utils/conversion.py | 3 +- poetry.lock | 520 ++++-------------- pyproject.toml | 42 +- test/pytest/TestAbstractActuatorBase.py | 3 +- test/pytest/TestAbstractMotorBase.py | 10 +- test/pytest/TestAbstractNStateBase.py | 3 +- test/pytest/test_aperture.py | 4 +- test/pytest/test_beam.py | 6 +- test/pytest/test_beam_definer.py | 7 +- test/pytest/test_beamline_ho_id.py | 3 +- test/pytest/test_detector.py | 6 +- test/pytest/test_detector_distance.py | 4 +- test/pytest/test_energy.py | 4 +- test/pytest/test_flux.py | 4 +- test/pytest/test_mach_info.py | 7 +- test/pytest/test_resolution.py | 4 +- test/pytest/test_sample_view.py | 3 +- test/pytest/test_shutter.py | 3 +- test/pytest/test_transmission.py | 7 +- test/pytest/test_xrf.py | 3 +- 58 files changed, 221 insertions(+), 561 deletions(-) diff --git a/.github/workflows/pages.yaml b/.github/workflows/pages.yaml index b4589ea3a0..5908f1ad25 100644 --- a/.github/workflows/pages.yaml +++ b/.github/workflows/pages.yaml @@ -25,10 +25,10 @@ jobs: # See "Caveats" at https://pypi.org/project/sphinx-last-updated-by-git fetch-depth: 0 - - name: "Set up Python 3.8" + - name: "Set up Python 3.10" uses: "actions/setup-python@v5" with: - python-version: "3.8" + python-version: "3.10" - name: "Install OpenLDAP's dev package with apt" run: | diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 502db0ac4c..5c621d200f 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -14,10 +14,10 @@ jobs: - uses: actions/checkout@v3 - - name: Set up Python 3.8 + - name: Set up Python 3.10 uses: actions/setup-python@v4 with: - python-version: "3.8" + python-version: "3.10" - name: Install openldap # yamllint disable rule:line-length diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index abac6ae5ff..d9eb2c8053 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.8", "3.9", "3.10", "3.11"] + python-version: ["3.10", "3.11"] steps: - uses: actions/checkout@v3 @@ -30,7 +30,7 @@ jobs: run: | python -m pip install --upgrade pip python -m pip install poetry --user - python -m poetry install --extras=tango + python -m poetry install - name: Test with pytest run: | diff --git a/.isort.cfg b/.isort.cfg index 4923de2c83..108c2f9157 100644 --- a/.isort.cfg +++ b/.isort.cfg @@ -1,4 +1,4 @@ [settings] profile=black -py_version=38 +py_version=310 force_grid_wrap=2 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 75873ce5b4..86fbad4775 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -10,11 +10,11 @@ repos: - --strict - repo: https://github.com/python-poetry/poetry - rev: 1.8.0 + rev: 2.0.1 hooks: - id: poetry-check - - repo: https://github.com/myint/autoflake + - repo: https://github.com/PyCQA/autoflake rev: v2.3.1 hooks: - id: autoflake @@ -27,20 +27,18 @@ repos: - --ignore-pass-after-docstring - repo: https://github.com/pycqa/isort - rev: 5.13.2 + rev: 6.0.0 hooks: - id: isort - - repo: https://github.com/psf/black - rev: 24.8.0 # The following version (`24.10.0`) dropped support for Python 3.8. + - repo: https://github.com/psf/black-pre-commit-mirror + rev: 25.1.0 hooks: - id: black name: Black - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.6.0 - # The following version (pre-commit-hooks 5.0.0) requires pre-commit 3.2.0 - # which does not support Python 3.8 (dropped in pre-commit 3.0.0). + rev: v5.0.0 hooks: - id: trailing-whitespace # Exclude files from trailing-whitespace checks until we get around fixing them. diff --git a/conda-environment-dev.yml b/conda-environment-dev.yml index a3746ed2af..077f17d0bd 100644 --- a/conda-environment-dev.yml +++ b/conda-environment-dev.yml @@ -1,6 +1,7 @@ %YAML 1.2 --- + name: mxcubecore channels: @@ -11,7 +12,7 @@ dependencies: # Runtime dependencies # ==================== - - python >=3.8,<3.12 + - python >=3.10,<3.12 # Keep in sync with `pyproject.toml` # `openldap` is necessary for `python-ldap` but can not be installed by pip or Poetry. # Note also that on PyPI `python-ldap` is only available as *sdist*, not as *wheel*, @@ -26,4 +27,7 @@ dependencies: # Development dependencies # ======================== - - poetry + - poetry ==2.0.1 # Keep in sync with `.pre-commit-config.yaml` and `poetry.lock` + + +... diff --git a/deprecated/HardwareObjects/TacoDevice_MTSafe.py b/deprecated/HardwareObjects/TacoDevice_MTSafe.py index adc4141f84..7df4d9a89c 100644 --- a/deprecated/HardwareObjects/TacoDevice_MTSafe.py +++ b/deprecated/HardwareObjects/TacoDevice_MTSafe.py @@ -454,7 +454,7 @@ def dev_io(mdevname, mdevcommand, *parin, **kw): io_out, 0, parin, - **kw + **kw, ) except Exception: raise Dev_Exception( diff --git a/deprecated/HardwareObjects/mockup/CameraMockup.py b/deprecated/HardwareObjects/mockup/CameraMockup.py index 2517f8f44e..abc32f9630 100644 --- a/deprecated/HardwareObjects/mockup/CameraMockup.py +++ b/deprecated/HardwareObjects/mockup/CameraMockup.py @@ -1,5 +1,4 @@ -"""Class for cameras connected to framegrabbers run by Taco Device Servers -""" +"""Class for cameras connected to framegrabbers run by Taco Device Servers""" import logging import os diff --git a/mxcubecore/Command/Exporter.py b/mxcubecore/Command/Exporter.py index 5f4ab2a8a1..87f20bd916 100644 --- a/mxcubecore/Command/Exporter.py +++ b/mxcubecore/Command/Exporter.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -"""Exporter, ExporterChannel and ExporterCommand implementation """ +"""Exporter, ExporterChannel and ExporterCommand implementation""" # from warnings import warn import logging @@ -231,7 +231,7 @@ def __init__( address=None, port=None, timeout=3, - **kwargs + **kwargs, ): ChannelObject.__init__(self, name, username, **kwargs) diff --git a/mxcubecore/Command/Pool.py b/mxcubecore/Command/Pool.py index bad95004e8..be981bc3a4 100755 --- a/mxcubecore/Command/Pool.py +++ b/mxcubecore/Command/Pool.py @@ -165,7 +165,7 @@ def __init__( username=None, polling=None, timeout=10000, - **kwargs + **kwargs, ): ChannelObject.__init__(self, name, username, **kwargs) diff --git a/mxcubecore/Command/Sardana.py b/mxcubecore/Command/Sardana.py index 7fbe7bcb3b..7426e15aea 100644 --- a/mxcubecore/Command/Sardana.py +++ b/mxcubecore/Command/Sardana.py @@ -19,7 +19,7 @@ # along with MXCuBE. If not, see . -"""Sardana Control System """ +"""Sardana Control System""" from __future__ import absolute_import diff --git a/mxcubecore/Command/Spec.py b/mxcubecore/Command/Spec.py index 72a38fc744..7adfcb62e1 100644 --- a/mxcubecore/Command/Spec.py +++ b/mxcubecore/Command/Spec.py @@ -95,7 +95,7 @@ def __init__( version=None, username=None, dispatchMode=SpecVariable.FIREEVENT, - **kwargs + **kwargs, ): ChannelObject.__init__(self, name, username, **kwargs) SpecVariableA.__init__(self, varname, version, dispatchMode) diff --git a/mxcubecore/Command/Taco.py b/mxcubecore/Command/Taco.py index 370aa2a26a..608e9b7300 100644 --- a/mxcubecore/Command/Taco.py +++ b/mxcubecore/Command/Taco.py @@ -161,7 +161,7 @@ def __init__( username=None, polling=None, args=None, - **kwargs + **kwargs, ): ChannelObject.__init__(self, name, username, **kwargs) diff --git a/mxcubecore/Command/Tine.py b/mxcubecore/Command/Tine.py index 7ba3218b16..3bad23b566 100755 --- a/mxcubecore/Command/Tine.py +++ b/mxcubecore/Command/Tine.py @@ -48,7 +48,7 @@ def __init__( username=None, ListArgs=None, timeout=1000, - **kwargs + **kwargs, ): CommandObject.__init__(self, name, username, **kwargs) self.commandName = command_name diff --git a/mxcubecore/Command/exporter/StandardClient.py b/mxcubecore/Command/exporter/StandardClient.py index a13e6da3a9..dda3002065 100644 --- a/mxcubecore/Command/exporter/StandardClient.py +++ b/mxcubecore/Command/exporter/StandardClient.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -""" ProtocolError and StandardClient implementation""" +"""ProtocolError and StandardClient implementation""" import socket import sys diff --git a/mxcubecore/HardwareObjects/BeamlineTools.py b/mxcubecore/HardwareObjects/BeamlineTools.py index 5da25adcde..c21042188f 100644 --- a/mxcubecore/HardwareObjects/BeamlineTools.py +++ b/mxcubecore/HardwareObjects/BeamlineTools.py @@ -17,8 +17,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from mxcubecore.BaseHardwareObjects import HardwareObject diff --git a/mxcubecore/HardwareObjects/BlissShutter.py b/mxcubecore/HardwareObjects/BlissShutter.py index 0b8d8c31e6..779c7e44b7 100644 --- a/mxcubecore/HardwareObjects/BlissShutter.py +++ b/mxcubecore/HardwareObjects/BlissShutter.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" BlissShutter class - interface for shutter controlled by BLISS +"""BlissShutter class - interface for shutter controlled by BLISS Implements _set_value, get_value methods Bliss states are: UNKNOWN, OPEN, CLOSED, FAULT "MOVING", "DISABLE", "STANDBY", "RUNNING" diff --git a/mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py b/mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py index 390dec46ce..2972e746de 100644 --- a/mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py +++ b/mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py @@ -15,7 +15,7 @@ # # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -""" Execute commands and toggle two state actions +"""Execute commands and toggle two state actions Example xml file: diff --git a/mxcubecore/HardwareObjects/ESRF/ESRFMD2SC3.py b/mxcubecore/HardwareObjects/ESRF/ESRFMD2SC3.py index 49b954fee8..489c49b869 100644 --- a/mxcubecore/HardwareObjects/ESRF/ESRFMD2SC3.py +++ b/mxcubecore/HardwareObjects/ESRF/ESRFMD2SC3.py @@ -1,5 +1,4 @@ -"""ESRF SC3 Sample Changer Hardware Object -""" +"""ESRF SC3 Sample Changer Hardware Object""" import ESRF.ESRFSC3 as ESRFSC3 import SC3 diff --git a/mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py b/mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py index 8d87c9159b..f2bf524ec3 100644 --- a/mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py +++ b/mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -""" Photon flux calculations +"""Photon flux calculations Example xml_ configuration: .. code-block:: xml diff --git a/mxcubecore/HardwareObjects/ESRF/ESRFSC3.py b/mxcubecore/HardwareObjects/ESRF/ESRFSC3.py index 6993b21154..8d21c29382 100644 --- a/mxcubecore/HardwareObjects/ESRF/ESRFSC3.py +++ b/mxcubecore/HardwareObjects/ESRF/ESRFSC3.py @@ -1,5 +1,4 @@ -"""ESRF SC3 Sample Changer Hardware Object -""" +"""ESRF SC3 Sample Changer Hardware Object""" import functools import logging diff --git a/mxcubecore/HardwareObjects/ESRF/ESRFSmallXrayCentring.py b/mxcubecore/HardwareObjects/ESRF/ESRFSmallXrayCentring.py index 99d71cfeea..8f59653fca 100644 --- a/mxcubecore/HardwareObjects/ESRF/ESRFSmallXrayCentring.py +++ b/mxcubecore/HardwareObjects/ESRF/ESRFSmallXrayCentring.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from __future__ import ( absolute_import, diff --git a/mxcubecore/HardwareObjects/ESRF/ID30SC3.py b/mxcubecore/HardwareObjects/ESRF/ID30SC3.py index 827145f68f..243c2cd3a9 100644 --- a/mxcubecore/HardwareObjects/ESRF/ID30SC3.py +++ b/mxcubecore/HardwareObjects/ESRF/ID30SC3.py @@ -1,5 +1,4 @@ -"""ESRF SC3 Sample Changer Hardware Object -""" +"""ESRF SC3 Sample Changer Hardware Object""" import ESRFSC3 import SC3 diff --git a/mxcubecore/HardwareObjects/ESRF/OxfordCryostream.py b/mxcubecore/HardwareObjects/ESRF/OxfordCryostream.py index 7c7a684771..4c8c4a86a9 100644 --- a/mxcubecore/HardwareObjects/ESRF/OxfordCryostream.py +++ b/mxcubecore/HardwareObjects/ESRF/OxfordCryostream.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -""" Oxford Cryostream, controlled by bliss. +"""Oxford Cryostream, controlled by bliss. Example xml_ configuration: .. code-block:: xml diff --git a/mxcubecore/HardwareObjects/ESRF/Transmission.py b/mxcubecore/HardwareObjects/ESRF/Transmission.py index a90e3cc8ce..a3dd6b94d5 100644 --- a/mxcubecore/HardwareObjects/ESRF/Transmission.py +++ b/mxcubecore/HardwareObjects/ESRF/Transmission.py @@ -17,7 +17,7 @@ # # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -"""Transmission with bliss """ +"""Transmission with bliss""" from mxcubecore.HardwareObjects.abstract.AbstractTransmission import ( AbstractTransmission, diff --git a/mxcubecore/HardwareObjects/Gphl/GphlMessages.py b/mxcubecore/HardwareObjects/Gphl/GphlMessages.py index bcc1849daa..a508af077a 100644 --- a/mxcubecore/HardwareObjects/Gphl/GphlMessages.py +++ b/mxcubecore/HardwareObjects/Gphl/GphlMessages.py @@ -1,6 +1,6 @@ #! /usr/bin/env python # encoding: utf-8 -""" Abstract beamline interface message classes +"""Abstract beamline interface message classes License: diff --git a/mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py b/mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py index e573ff8f86..76e04e91bf 100644 --- a/mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py +++ b/mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py @@ -1757,7 +1757,7 @@ def setup_data_collection(self, payload, correlation_id): translation = GphlMessages.GoniostatTranslation( rotation=newRotation, requestedRotationId=sweepSetting.id_, - **translation_settings + **translation_settings, ) self._latest_translation_id = translation.id_ self._recentrings.append(translation) @@ -2533,7 +2533,7 @@ def execute_sample_centring( GphlMessages.GoniostatTranslation( rotation=goniostatRotation, requestedRotationId=requestedRotationId, - **dd0 + **dd0, ), positionsDict, ) @@ -2624,7 +2624,7 @@ def handle_collection_start( ) translation = GphlMessages.GoniostatTranslation( requestedRotationId=scan.sweep.goniostatSweepSetting.id_, - **translation_settings + **translation_settings, ) self._latest_translation_id = translation.id_ self._scan_id_to_translation_id[scan.id_] = translation.id_ diff --git a/mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py b/mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py index f6fdb77a4b..190718c23b 100644 --- a/mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py +++ b/mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py @@ -830,7 +830,7 @@ def _GoniostatRotation_to_python(self, py4jGoniostatRotation, isSweepSetting=Fal GphlMessages.GoniostatTranslation( id_=uuid.UUID(translationUuidString), rotation=result, - **translationAxisSettings + **translationAxisSettings, ) return result diff --git a/mxcubecore/HardwareObjects/GrobSampleChanger.py b/mxcubecore/HardwareObjects/GrobSampleChanger.py index 2d38028106..b6ed72fb08 100644 --- a/mxcubecore/HardwareObjects/GrobSampleChanger.py +++ b/mxcubecore/HardwareObjects/GrobSampleChanger.py @@ -1,5 +1,4 @@ -"""Sample Changer Hardware Object -""" +"""Sample Changer Hardware Object""" import logging diff --git a/mxcubecore/HardwareObjects/QtGraphicsLib.py b/mxcubecore/HardwareObjects/QtGraphicsLib.py index 313c271f71..aec45e6c9b 100644 --- a/mxcubecore/HardwareObjects/QtGraphicsLib.py +++ b/mxcubecore/HardwareObjects/QtGraphicsLib.py @@ -286,7 +286,7 @@ def paint(self, painter, option, widget): int(self.beam_position[0] + self.beam_size_pix[0] / 2 + 2), int(self.beam_position[1] + self.beam_size_pix[1] / 2 + 10), "%d x %d %sm" - % (self.beam_size_mm[0] * 1000, self.beam_size_mm[1] * 1000, "\u00B5"), + % (self.beam_size_mm[0] * 1000, self.beam_size_mm[1] * 1000, "\u00b5"), ) if None not in self.detected_beam_info_dict: painter.drawLine( @@ -1594,7 +1594,7 @@ def __init__(self, parent, position_x=0, position_y=0, anchor=None): GraphicsItem.__init__(self, parent, position_x=0, position_y=0) self.__scale_len = 0 self.__scale_len_pix = 0 - self.__scale_unit = "\u00B5" + self.__scale_unit = "\u00b5" self.__display_grid = False if anchor is None: @@ -1725,7 +1725,7 @@ def set_pixels_per_mm(self, pixels_per_mm): and self.pixels_per_mm[0] * line_len / 1000 > 50 ): self.__scale_len = line_len - self.__scale_unit = "\u00B5" + self.__scale_unit = "\u00b5" self.__scale_len_pix = int( self.pixels_per_mm[0] * self.__scale_len / 1000 ) @@ -2067,7 +2067,7 @@ def paint(self, painter, option, widget): painter.drawText( self.end_coord[0] + 7, self.end_coord[1], - "%d x %d %sm" % (self.width_microns, self.height_microns, "\u00B5"), + "%d x %d %sm" % (self.width_microns, self.height_microns, "\u00b5"), ) self.custom_pen.setColor(qt_import.Qt.red) @@ -2125,7 +2125,7 @@ def __init__(self, parent): self.setFlags(qt_import.QGraphicsItem.ItemIsSelectable) self.do_measure = None - self.measure_unit = "\u00B5" + self.measure_unit = "\u00b5" self.measure_points = None self.measured_distance = None self.custom_pen_color = SELECTED_COLOR @@ -2187,7 +2187,7 @@ def set_coord(self, coord): self.measured_distance /= 1000 self.measure_unit = "mm" else: - self.measure_unit = "\u00B5" + self.measure_unit = "\u00b5" self.scene().update() def store_coord(self, position_x, position_y): @@ -2244,7 +2244,7 @@ def paint(self, painter, option, widget): painter.drawText( self.measure_points[2].x() + 10, self.measure_points[2].y() + 10, - "%.2f %s" % (self.measured_angle, "\u00B0"), + "%.2f %s" % (self.measured_angle, "\u00b0"), ) def set_start_position(self, position_x, position_y): @@ -2324,7 +2324,7 @@ def paint(self, painter, option, widget): painter.drawText( self.current_point.x() + 10, self.current_point.y() + 10, - "%.2f %s" % (self.measured_area, "\u00B5"), + "%.2f %s" % (self.measured_area, "\u00b5"), ) if self.min_max_coord: @@ -2347,7 +2347,7 @@ def paint(self, painter, option, widget): painter.drawText( self.min_max_coord[0][0] - 40, self.min_max_coord[0][1], - "%.1f %s" % (ver_size, "\u00B5"), + "%.1f %s" % (ver_size, "\u00b5"), ) painter.drawLine( self.min_max_coord[0][0], @@ -2358,7 +2358,7 @@ def paint(self, painter, option, widget): painter.drawText( self.min_max_coord[1][0], self.min_max_coord[1][1] + 25, - "%.1f %s" % (hor_size, "\u00B5"), + "%.1f %s" % (hor_size, "\u00b5"), ) def set_start_position(self, pos_x, pos_y): diff --git a/mxcubecore/HardwareObjects/TangoShutter.py b/mxcubecore/HardwareObjects/TangoShutter.py index 1fc378d1da..d6b55b40f9 100644 --- a/mxcubecore/HardwareObjects/TangoShutter.py +++ b/mxcubecore/HardwareObjects/TangoShutter.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" TangoShutter class - interface for shutter controlled by TANGO +"""TangoShutter class - interface for shutter controlled by TANGO Implements _set_value, get_value methods Tango states are: diff --git a/mxcubecore/HardwareObjects/abstract/AbstractLims.py b/mxcubecore/HardwareObjects/abstract/AbstractLims.py index 22abaa2f81..263931ccea 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractLims.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractLims.py @@ -17,8 +17,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ import abc import logging from datetime import datetime diff --git a/mxcubecore/HardwareObjects/abstract/AbstractNState.py b/mxcubecore/HardwareObjects/abstract/AbstractNState.py index d4e567246c..642a6bc449 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractNState.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractNState.py @@ -17,7 +17,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" AbstractNState class - interface for N state devices. +"""AbstractNState class - interface for N state devices. Defines BaseValueEnum, initialise_values and value_to_enum methds. Implements validate_value, set/update limits. """ diff --git a/mxcubecore/HardwareObjects/abstract/AbstractOnlineProcessing.py b/mxcubecore/HardwareObjects/abstract/AbstractOnlineProcessing.py index 44be947348..e065b4e193 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractOnlineProcessing.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractOnlineProcessing.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Abstract Online Processing class -""" +"""Abstract Online Processing class""" import json import logging import os diff --git a/mxcubecore/HardwareObjects/abstract/AbstractShutter.py b/mxcubecore/HardwareObjects/abstract/AbstractShutter.py index 5c1de55974..115588cf35 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractShutter.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractShutter.py @@ -17,7 +17,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" AbstractShutter class - interface for shutter type devices. +"""AbstractShutter class - interface for shutter type devices. Define open/close methods and is_open property. Overload BaseValueEnum """ diff --git a/mxcubecore/HardwareObjects/abstract/AbstractSlits.py b/mxcubecore/HardwareObjects/abstract/AbstractSlits.py index 52eed56aa6..a6c4026324 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractSlits.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractSlits.py @@ -17,8 +17,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ import abc from warnings import warn diff --git a/mxcubecore/HardwareObjects/abstract/AbstractXrayCentring.py b/mxcubecore/HardwareObjects/abstract/AbstractXrayCentring.py index ac484c5652..3eeaacad6c 100644 --- a/mxcubecore/HardwareObjects/abstract/AbstractXrayCentring.py +++ b/mxcubecore/HardwareObjects/abstract/AbstractXrayCentring.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Xray Centring Abstract Class with yaml configuration file. -""" +"""Xray Centring Abstract Class with yaml configuration file.""" from __future__ import ( absolute_import, diff --git a/mxcubecore/HardwareObjects/mockup/XrayCentringMockup.py b/mxcubecore/HardwareObjects/mockup/XrayCentringMockup.py index f0aef268f6..2054ead506 100644 --- a/mxcubecore/HardwareObjects/mockup/XrayCentringMockup.py +++ b/mxcubecore/HardwareObjects/mockup/XrayCentringMockup.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from __future__ import ( absolute_import, diff --git a/mxcubecore/utils/conversion.py b/mxcubecore/utils/conversion.py index e350552b55..404e8cc656 100644 --- a/mxcubecore/utils/conversion.py +++ b/mxcubecore/utils/conversion.py @@ -18,8 +18,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""General data and functions, that can be shared between different HardwareObjects -""" +"""General data and functions, that can be shared between different HardwareObjects""" from __future__ import ( absolute_import, division, diff --git a/poetry.lock b/poetry.lock index 3d6438c4ee..772d90f709 100644 --- a/poetry.lock +++ b/poetry.lock @@ -24,29 +24,6 @@ files = [ {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] -[package.dependencies] -typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.9\""} - -[[package]] -name = "astroid" -version = "2.15.5" -description = "An abstract syntax tree for Python with inference support." -optional = false -python-versions = ">=3.7.2" -groups = ["dev"] -files = [ - {file = "astroid-2.15.5-py3-none-any.whl", hash = "sha256:078e5212f9885fa85fbb0cf0101978a336190aadea6e13305409d099f71b2324"}, - {file = "astroid-2.15.5.tar.gz", hash = "sha256:1039262575027b441137ab4a62a793a9b43defb42c32d5670f38686207cd780f"}, -] - -[package.dependencies] -lazy-object-proxy = ">=1.4.0" -typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} -wrapt = [ - {version = ">=1.11,<2", markers = "python_version < \"3.11\""}, - {version = ">=1.14,<2", markers = "python_version >= \"3.11\""}, -] - [[package]] name = "attrs" version = "23.1.0" @@ -78,9 +55,6 @@ files = [ {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"}, ] -[package.dependencies] -pytz = {version = ">=2015.7", markers = "python_version < \"3.9\""} - [[package]] name = "beautifulsoup4" version = "4.12.2" @@ -376,63 +350,75 @@ test-no-images = ["pytest"] [[package]] name = "coverage" -version = "7.2.6" +version = "7.6.12" description = "Code coverage measurement for Python" optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "coverage-7.2.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:496b86f1fc9c81a1cd53d8842ef712e950a4611bba0c42d33366a7b91ba969ec"}, - {file = "coverage-7.2.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fbe6e8c0a9a7193ba10ee52977d4d5e7652957c1f56ccefed0701db8801a2a3b"}, - {file = "coverage-7.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76d06b721c2550c01a60e5d3093f417168658fb454e5dfd9a23570e9bffe39a1"}, - {file = "coverage-7.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:77a04b84d01f0e12c66f16e69e92616442dc675bbe51b90bfb074b1e5d1c7fbd"}, - {file = "coverage-7.2.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:35db06450272473eab4449e9c2ad9bc6a0a68dab8e81a0eae6b50d9c2838767e"}, - {file = "coverage-7.2.6-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6727a0d929ff0028b1ed8b3e7f8701670b1d7032f219110b55476bb60c390bfb"}, - {file = "coverage-7.2.6-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aac1d5fdc5378f6bac2c0c7ebe7635a6809f5b4376f6cf5d43243c1917a67087"}, - {file = "coverage-7.2.6-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1c9e4a5eb1bbc3675ee57bc31f8eea4cd7fb0cbcbe4912cf1cb2bf3b754f4a80"}, - {file = "coverage-7.2.6-cp310-cp310-win32.whl", hash = "sha256:71f739f97f5f80627f1fee2331e63261355fd1e9a9cce0016394b6707ac3f4ec"}, - {file = "coverage-7.2.6-cp310-cp310-win_amd64.whl", hash = "sha256:fde5c7a9d9864d3e07992f66767a9817f24324f354caa3d8129735a3dc74f126"}, - {file = "coverage-7.2.6-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bc7b667f8654376e9353dd93e55e12ce2a59fb6d8e29fce40de682273425e044"}, - {file = "coverage-7.2.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:697f4742aa3f26c107ddcb2b1784a74fe40180014edbd9adaa574eac0529914c"}, - {file = "coverage-7.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:541280dde49ce74a4262c5e395b48ea1207e78454788887118c421cb4ffbfcac"}, - {file = "coverage-7.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e7f1a8328eeec34c54f1d5968a708b50fc38d31e62ca8b0560e84a968fbf9a9"}, - {file = "coverage-7.2.6-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4bbd58eb5a2371bf160590f4262109f66b6043b0b991930693134cb617bc0169"}, - {file = "coverage-7.2.6-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ae82c5f168d2a39a5d69a12a69d4dc23837a43cf2ca99be60dfe59996ea6b113"}, - {file = "coverage-7.2.6-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:f5440cdaf3099e7ab17a5a7065aed59aff8c8b079597b61c1f8be6f32fe60636"}, - {file = "coverage-7.2.6-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a6f03f87fea579d55e0b690d28f5042ec1368650466520fbc400e7aeaf09e995"}, - {file = "coverage-7.2.6-cp311-cp311-win32.whl", hash = "sha256:dc4d5187ef4d53e0d4c8eaf530233685667844c5fb0b855fea71ae659017854b"}, - {file = "coverage-7.2.6-cp311-cp311-win_amd64.whl", hash = "sha256:c93d52c3dc7b9c65e39473704988602300e3cc1bad08b5ab5b03ca98bbbc68c1"}, - {file = "coverage-7.2.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:42c692b55a647a832025a4c048007034fe77b162b566ad537ce65ad824b12a84"}, - {file = "coverage-7.2.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7786b2fa7809bf835f830779ad285215a04da76293164bb6745796873f0942d"}, - {file = "coverage-7.2.6-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:25bad4196104761bc26b1dae9b57383826542ec689ff0042f7f4f4dd7a815cba"}, - {file = "coverage-7.2.6-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2692306d3d4cb32d2cceed1e47cebd6b1d2565c993d6d2eda8e6e6adf53301e6"}, - {file = "coverage-7.2.6-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:392154d09bd4473b9d11351ab5d63391f3d5d24d752f27b3be7498b0ee2b5226"}, - {file = "coverage-7.2.6-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:fa079995432037b5e2ef5ddbb270bcd2ded9f52b8e191a5de11fe59a00ea30d8"}, - {file = "coverage-7.2.6-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d712cefff15c712329113b01088ba71bbcef0f7ea58478ca0bbec63a824844cb"}, - {file = "coverage-7.2.6-cp37-cp37m-win32.whl", hash = "sha256:004948e296149644d208964300cb3d98affc5211e9e490e9979af4030b0d6473"}, - {file = "coverage-7.2.6-cp37-cp37m-win_amd64.whl", hash = "sha256:c1d7a31603c3483ac49c1726723b0934f88f2c011c660e6471e7bd735c2fa110"}, - {file = "coverage-7.2.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3436927d1794fa6763b89b60c896f9e3bd53212001026ebc9080d23f0c2733c1"}, - {file = "coverage-7.2.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:44c9b9f1a245f3d0d202b1a8fa666a80b5ecbe4ad5d0859c0fb16a52d9763224"}, - {file = "coverage-7.2.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e3783a286d5a93a2921396d50ce45a909aa8f13eee964465012f110f0cbb611"}, - {file = "coverage-7.2.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3cff6980fe7100242170092bb40d2b1cdad79502cd532fd26b12a2b8a5f9aee0"}, - {file = "coverage-7.2.6-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c534431153caffc7c495c3eddf7e6a6033e7f81d78385b4e41611b51e8870446"}, - {file = "coverage-7.2.6-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3062fd5c62df988cea9f2972c593f77fed1182bfddc5a3b12b1e606cb7aba99e"}, - {file = "coverage-7.2.6-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6284a2005e4f8061c58c814b1600ad0074ccb0289fe61ea709655c5969877b70"}, - {file = "coverage-7.2.6-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:97729e6828643f168a2a3f07848e1b1b94a366b13a9f5aba5484c2215724edc8"}, - {file = "coverage-7.2.6-cp38-cp38-win32.whl", hash = "sha256:dc11b42fa61ff1e788dd095726a0aed6aad9c03d5c5984b54cb9e1e67b276aa5"}, - {file = "coverage-7.2.6-cp38-cp38-win_amd64.whl", hash = "sha256:cbcc874f454ee51f158afd604a315f30c0e31dff1d5d5bf499fc529229d964dd"}, - {file = "coverage-7.2.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d3cacc6a665221108ecdf90517a8028d07a2783df3417d12dcfef1c517e67478"}, - {file = "coverage-7.2.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:272ab31228a9df857ab5df5d67936d8861464dc89c5d3fab35132626e9369379"}, - {file = "coverage-7.2.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a8723ccec4e564d4b9a79923246f7b9a8de4ec55fa03ec4ec804459dade3c4f"}, - {file = "coverage-7.2.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5906f6a84b47f995cd1bf0aca1c72d591c55ee955f98074e93660d64dfc66eb9"}, - {file = "coverage-7.2.6-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52c139b7ab3f0b15f9aad0a3fedef5a1f8c0b2bdc291d88639ca2c97d3682416"}, - {file = "coverage-7.2.6-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a5ffd45c6b93c23a8507e2f436983015c6457aa832496b6a095505ca2f63e8f1"}, - {file = "coverage-7.2.6-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:4f3c7c19581d471af0e9cb49d928172cd8492cd78a2b7a4e82345d33662929bb"}, - {file = "coverage-7.2.6-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2e8c0e79820cdd67978e1120983786422d279e07a381dbf89d03bbb23ec670a6"}, - {file = "coverage-7.2.6-cp39-cp39-win32.whl", hash = "sha256:13cde6bb0e58fb67d09e2f373de3899d1d1e866c5a9ff05d93615f2f54fbd2bb"}, - {file = "coverage-7.2.6-cp39-cp39-win_amd64.whl", hash = "sha256:6b9f64526286255735847aed0221b189486e0b9ed943446936e41b7e44b08783"}, - {file = "coverage-7.2.6-pp37.pp38.pp39-none-any.whl", hash = "sha256:6babcbf1e66e46052442f10833cfc4a0d3554d8276aa37af8531a83ed3c1a01d"}, - {file = "coverage-7.2.6.tar.gz", hash = "sha256:2025f913f2edb0272ef15d00b1f335ff8908c921c8eb2013536fcaf61f5a683d"}, + {file = "coverage-7.6.12-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:704c8c8c6ce6569286ae9622e534b4f5b9759b6f2cd643f1c1a61f666d534fe8"}, + {file = "coverage-7.6.12-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ad7525bf0241e5502168ae9c643a2f6c219fa0a283001cee4cf23a9b7da75879"}, + {file = "coverage-7.6.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06097c7abfa611c91edb9e6920264e5be1d6ceb374efb4986f38b09eed4cb2fe"}, + {file = "coverage-7.6.12-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:220fa6c0ad7d9caef57f2c8771918324563ef0d8272c94974717c3909664e674"}, + {file = "coverage-7.6.12-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3688b99604a24492bcfe1c106278c45586eb819bf66a654d8a9a1433022fb2eb"}, + {file = "coverage-7.6.12-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d1a987778b9c71da2fc8948e6f2656da6ef68f59298b7e9786849634c35d2c3c"}, + {file = "coverage-7.6.12-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:cec6b9ce3bd2b7853d4a4563801292bfee40b030c05a3d29555fd2a8ee9bd68c"}, + {file = "coverage-7.6.12-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ace9048de91293e467b44bce0f0381345078389814ff6e18dbac8fdbf896360e"}, + {file = "coverage-7.6.12-cp310-cp310-win32.whl", hash = "sha256:ea31689f05043d520113e0552f039603c4dd71fa4c287b64cb3606140c66f425"}, + {file = "coverage-7.6.12-cp310-cp310-win_amd64.whl", hash = "sha256:676f92141e3c5492d2a1596d52287d0d963df21bf5e55c8b03075a60e1ddf8aa"}, + {file = "coverage-7.6.12-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e18aafdfb3e9ec0d261c942d35bd7c28d031c5855dadb491d2723ba54f4c3015"}, + {file = "coverage-7.6.12-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:66fe626fd7aa5982cdebad23e49e78ef7dbb3e3c2a5960a2b53632f1f703ea45"}, + {file = "coverage-7.6.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ef01d70198431719af0b1f5dcbefc557d44a190e749004042927b2a3fed0702"}, + {file = "coverage-7.6.12-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07e92ae5a289a4bc4c0aae710c0948d3c7892e20fd3588224ebe242039573bf0"}, + {file = "coverage-7.6.12-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e695df2c58ce526eeab11a2e915448d3eb76f75dffe338ea613c1201b33bab2f"}, + {file = "coverage-7.6.12-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d74c08e9aaef995f8c4ef6d202dbd219c318450fe2a76da624f2ebb9c8ec5d9f"}, + {file = "coverage-7.6.12-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e995b3b76ccedc27fe4f477b349b7d64597e53a43fc2961db9d3fbace085d69d"}, + {file = "coverage-7.6.12-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b1f097878d74fe51e1ddd1be62d8e3682748875b461232cf4b52ddc6e6db0bba"}, + {file = "coverage-7.6.12-cp311-cp311-win32.whl", hash = "sha256:1f7ffa05da41754e20512202c866d0ebfc440bba3b0ed15133070e20bf5aeb5f"}, + {file = "coverage-7.6.12-cp311-cp311-win_amd64.whl", hash = "sha256:e216c5c45f89ef8971373fd1c5d8d1164b81f7f5f06bbf23c37e7908d19e8558"}, + {file = "coverage-7.6.12-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b172f8e030e8ef247b3104902cc671e20df80163b60a203653150d2fc204d1ad"}, + {file = "coverage-7.6.12-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:641dfe0ab73deb7069fb972d4d9725bf11c239c309ce694dd50b1473c0f641c3"}, + {file = "coverage-7.6.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e549f54ac5f301e8e04c569dfdb907f7be71b06b88b5063ce9d6953d2d58574"}, + {file = "coverage-7.6.12-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:959244a17184515f8c52dcb65fb662808767c0bd233c1d8a166e7cf74c9ea985"}, + {file = "coverage-7.6.12-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bda1c5f347550c359f841d6614fb8ca42ae5cb0b74d39f8a1e204815ebe25750"}, + {file = "coverage-7.6.12-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1ceeb90c3eda1f2d8c4c578c14167dbd8c674ecd7d38e45647543f19839dd6ea"}, + {file = "coverage-7.6.12-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f16f44025c06792e0fb09571ae454bcc7a3ec75eeb3c36b025eccf501b1a4c3"}, + {file = "coverage-7.6.12-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b076e625396e787448d27a411aefff867db2bffac8ed04e8f7056b07024eed5a"}, + {file = "coverage-7.6.12-cp312-cp312-win32.whl", hash = "sha256:00b2086892cf06c7c2d74983c9595dc511acca00665480b3ddff749ec4fb2a95"}, + {file = "coverage-7.6.12-cp312-cp312-win_amd64.whl", hash = "sha256:7ae6eabf519bc7871ce117fb18bf14e0e343eeb96c377667e3e5dd12095e0288"}, + {file = "coverage-7.6.12-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:488c27b3db0ebee97a830e6b5a3ea930c4a6e2c07f27a5e67e1b3532e76b9ef1"}, + {file = "coverage-7.6.12-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5d1095bbee1851269f79fd8e0c9b5544e4c00c0c24965e66d8cba2eb5bb535fd"}, + {file = "coverage-7.6.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0533adc29adf6a69c1baa88c3d7dbcaadcffa21afbed3ca7a225a440e4744bf9"}, + {file = "coverage-7.6.12-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:53c56358d470fa507a2b6e67a68fd002364d23c83741dbc4c2e0680d80ca227e"}, + {file = "coverage-7.6.12-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64cbb1a3027c79ca6310bf101014614f6e6e18c226474606cf725238cf5bc2d4"}, + {file = "coverage-7.6.12-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:79cac3390bfa9836bb795be377395f28410811c9066bc4eefd8015258a7578c6"}, + {file = "coverage-7.6.12-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:9b148068e881faa26d878ff63e79650e208e95cf1c22bd3f77c3ca7b1d9821a3"}, + {file = "coverage-7.6.12-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8bec2ac5da793c2685ce5319ca9bcf4eee683b8a1679051f8e6ec04c4f2fd7dc"}, + {file = "coverage-7.6.12-cp313-cp313-win32.whl", hash = "sha256:200e10beb6ddd7c3ded322a4186313d5ca9e63e33d8fab4faa67ef46d3460af3"}, + {file = "coverage-7.6.12-cp313-cp313-win_amd64.whl", hash = "sha256:2b996819ced9f7dbb812c701485d58f261bef08f9b85304d41219b1496b591ef"}, + {file = "coverage-7.6.12-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:299cf973a7abff87a30609879c10df0b3bfc33d021e1adabc29138a48888841e"}, + {file = "coverage-7.6.12-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4b467a8c56974bf06e543e69ad803c6865249d7a5ccf6980457ed2bc50312703"}, + {file = "coverage-7.6.12-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2458f275944db8129f95d91aee32c828a408481ecde3b30af31d552c2ce284a0"}, + {file = "coverage-7.6.12-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a9d8be07fb0832636a0f72b80d2a652fe665e80e720301fb22b191c3434d924"}, + {file = "coverage-7.6.12-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14d47376a4f445e9743f6c83291e60adb1b127607a3618e3185bbc8091f0467b"}, + {file = "coverage-7.6.12-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b95574d06aa9d2bd6e5cc35a5bbe35696342c96760b69dc4287dbd5abd4ad51d"}, + {file = "coverage-7.6.12-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:ecea0c38c9079570163d663c0433a9af4094a60aafdca491c6a3d248c7432827"}, + {file = "coverage-7.6.12-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2251fabcfee0a55a8578a9d29cecfee5f2de02f11530e7d5c5a05859aa85aee9"}, + {file = "coverage-7.6.12-cp313-cp313t-win32.whl", hash = "sha256:eb5507795caabd9b2ae3f1adc95f67b1104971c22c624bb354232d65c4fc90b3"}, + {file = "coverage-7.6.12-cp313-cp313t-win_amd64.whl", hash = "sha256:f60a297c3987c6c02ffb29effc70eadcbb412fe76947d394a1091a3615948e2f"}, + {file = "coverage-7.6.12-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e7575ab65ca8399c8c4f9a7d61bbd2d204c8b8e447aab9d355682205c9dd948d"}, + {file = "coverage-7.6.12-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8161d9fbc7e9fe2326de89cd0abb9f3599bccc1287db0aba285cb68d204ce929"}, + {file = "coverage-7.6.12-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a1e465f398c713f1b212400b4e79a09829cd42aebd360362cd89c5bdc44eb87"}, + {file = "coverage-7.6.12-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f25d8b92a4e31ff1bd873654ec367ae811b3a943583e05432ea29264782dc32c"}, + {file = "coverage-7.6.12-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a936309a65cc5ca80fa9f20a442ff9e2d06927ec9a4f54bcba9c14c066323f2"}, + {file = "coverage-7.6.12-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:aa6f302a3a0b5f240ee201297fff0bbfe2fa0d415a94aeb257d8b461032389bd"}, + {file = "coverage-7.6.12-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:f973643ef532d4f9be71dd88cf7588936685fdb576d93a79fe9f65bc337d9d73"}, + {file = "coverage-7.6.12-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:78f5243bb6b1060aed6213d5107744c19f9571ec76d54c99cc15938eb69e0e86"}, + {file = "coverage-7.6.12-cp39-cp39-win32.whl", hash = "sha256:69e62c5034291c845fc4df7f8155e8544178b6c774f97a99e2734b05eb5bed31"}, + {file = "coverage-7.6.12-cp39-cp39-win_amd64.whl", hash = "sha256:b01a840ecc25dce235ae4c1b6a0daefb2a203dba0e6e980637ee9c2f6ee0df57"}, + {file = "coverage-7.6.12-pp39.pp310-none-any.whl", hash = "sha256:7e39e845c4d764208e7b8f6a21c541ade741e2c41afabdfa1caa28687a3c98cf"}, + {file = "coverage-7.6.12-py3-none-any.whl", hash = "sha256:eb8668cfbc279a536c633137deeb9435d2962caec279c3f8cf8b91fff6ff8953"}, + {file = "coverage-7.6.12.tar.gz", hash = "sha256:48cfc4641d95d34766ad41d9573cc0f22a48aa88d22657a1fe01dca0dbae4de2"}, ] [package.dependencies] @@ -453,21 +439,6 @@ files = [ {file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"}, ] -[[package]] -name = "dill" -version = "0.3.6" -description = "serialize all of python" -optional = false -python-versions = ">=3.7" -groups = ["dev"] -files = [ - {file = "dill-0.3.6-py3-none-any.whl", hash = "sha256:a07ffd2351b8c678dfc4a856a3005f8067aea51d6ba6c700796a4d9e280f39f0"}, - {file = "dill-0.3.6.tar.gz", hash = "sha256:e5db55f3687856d8fbdab002ed78544e1c4559a130302693d839dfe8f93f2373"}, -] - -[package.extras] -graph = ["objgraph (>=1.7.2)"] - [[package]] name = "distlib" version = "0.3.9" @@ -781,9 +752,6 @@ files = [ {file = "icat_esrf_definitions-2.1.2.tar.gz", hash = "sha256:1af66f6dcad6f17e1873c26ae01de752ed2a2b51034ee773fd534a9d85d758b3"}, ] -[package.dependencies] -importlib_resources = {version = "*", markers = "python_version < \"3.9\""} - [package.extras] dev = ["pre-commit", "pytest"] test = ["pytest"] @@ -859,47 +827,6 @@ files = [ {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, ] -[[package]] -name = "importlib-metadata" -version = "7.0.1" -description = "Read metadata from Python packages" -optional = false -python-versions = ">=3.8" -groups = ["docs"] -markers = "python_version < \"3.10\"" -files = [ - {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, - {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, -] - -[package.dependencies] -zipp = ">=0.5" - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] - -[[package]] -name = "importlib-resources" -version = "5.12.0" -description = "Read resources from Python packages" -optional = false -python-versions = ">=3.7" -groups = ["main"] -markers = "python_version < \"3.10\"" -files = [ - {file = "importlib_resources-5.12.0-py3-none-any.whl", hash = "sha256:7b1deeebbf351c7578e09bf2f63fa2ce8b5ffec296e0d349139d43cca061a81a"}, - {file = "importlib_resources-5.12.0.tar.gz", hash = "sha256:4be82589bf5c1d7999aedf2a45159d10cb3ca4f19b2271f8792bc8e6da7b22f6"}, -] - -[package.dependencies] -zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] - [[package]] name = "iniconfig" version = "2.0.0" @@ -912,24 +839,6 @@ files = [ {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, ] -[[package]] -name = "isort" -version = "5.12.0" -description = "A Python utility / library to sort Python imports." -optional = false -python-versions = ">=3.8.0" -groups = ["dev"] -files = [ - {file = "isort-5.12.0-py3-none-any.whl", hash = "sha256:f84c2818376e66cf843d497486ea8fed8700b340f308f076c6fb1229dff318b6"}, - {file = "isort-5.12.0.tar.gz", hash = "sha256:8bef7dde241278824a6d83f44a544709b065191b95b6e50894bdc722fcba0504"}, -] - -[package.extras] -colors = ["colorama (>=0.4.3)"] -pipfile-deprecated-finder = ["pip-shims (>=0.5.2)", "pipreqs", "requirementslib"] -plugins = ["setuptools"] -requirements-deprecated-finder = ["pip-api", "pipreqs"] - [[package]] name = "jinja2" version = "3.1.5" @@ -979,8 +888,6 @@ files = [ [package.dependencies] attrs = ">=17.4.0" -importlib-resources = {version = ">=1.4.0", markers = "python_version < \"3.9\""} -pkgutil-resolve-name = {version = ">=1.3.10", markers = "python_version < \"3.9\""} pyrsistent = ">=0.14.0,<0.17.0 || >0.17.0,<0.17.1 || >0.17.1,<0.17.2 || >0.17.2" [package.extras] @@ -1065,52 +972,6 @@ files = [ {file = "kiwisolver-1.4.4.tar.gz", hash = "sha256:d41997519fcba4a1e46eb4a2fe31bc12f0ff957b2b81bac28db24744f333e955"}, ] -[[package]] -name = "lazy-object-proxy" -version = "1.9.0" -description = "A fast and thorough lazy object proxy." -optional = false -python-versions = ">=3.7" -groups = ["dev"] -files = [ - {file = "lazy-object-proxy-1.9.0.tar.gz", hash = "sha256:659fb5809fa4629b8a1ac5106f669cfc7bef26fbb389dda53b3e010d1ac4ebae"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b40387277b0ed2d0602b8293b94d7257e17d1479e257b4de114ea11a8cb7f2d7"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8c6cfb338b133fbdbc5cfaa10fe3c6aeea827db80c978dbd13bc9dd8526b7d4"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:721532711daa7db0d8b779b0bb0318fa87af1c10d7fe5e52ef30f8eff254d0cd"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:66a3de4a3ec06cd8af3f61b8e1ec67614fbb7c995d02fa224813cb7afefee701"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1aa3de4088c89a1b69f8ec0dcc169aa725b0ff017899ac568fe44ddc1396df46"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-win32.whl", hash = "sha256:f0705c376533ed2a9e5e97aacdbfe04cecd71e0aa84c7c0595d02ef93b6e4455"}, - {file = "lazy_object_proxy-1.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:ea806fd4c37bf7e7ad82537b0757999264d5f70c45468447bb2b91afdbe73a6e"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:946d27deaff6cf8452ed0dba83ba38839a87f4f7a9732e8f9fd4107b21e6ff07"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79a31b086e7e68b24b99b23d57723ef7e2c6d81ed21007b6281ebcd1688acb0a"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f699ac1c768270c9e384e4cbd268d6e67aebcfae6cd623b4d7c3bfde5a35db59"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:bfb38f9ffb53b942f2b5954e0f610f1e721ccebe9cce9025a38c8ccf4a5183a4"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:189bbd5d41ae7a498397287c408617fe5c48633e7755287b21d741f7db2706a9"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-win32.whl", hash = "sha256:81fc4d08b062b535d95c9ea70dbe8a335c45c04029878e62d744bdced5141586"}, - {file = "lazy_object_proxy-1.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:f2457189d8257dd41ae9b434ba33298aec198e30adf2dcdaaa3a28b9994f6adb"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:d9e25ef10a39e8afe59a5c348a4dbf29b4868ab76269f81ce1674494e2565a6e"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cbf9b082426036e19c6924a9ce90c740a9861e2bdc27a4834fd0a910742ac1e8"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f5fa4a61ce2438267163891961cfd5e32ec97a2c444e5b842d574251ade27d2"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:8fa02eaab317b1e9e03f69aab1f91e120e7899b392c4fc19807a8278a07a97e8"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e7c21c95cae3c05c14aafffe2865bbd5e377cfc1348c4f7751d9dc9a48ca4bda"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-win32.whl", hash = "sha256:f12ad7126ae0c98d601a7ee504c1122bcef553d1d5e0c3bfa77b16b3968d2734"}, - {file = "lazy_object_proxy-1.9.0-cp37-cp37m-win_amd64.whl", hash = "sha256:edd20c5a55acb67c7ed471fa2b5fb66cb17f61430b7a6b9c3b4a1e40293b1671"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2d0daa332786cf3bb49e10dc6a17a52f6a8f9601b4cf5c295a4f85854d61de63"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cd077f3d04a58e83d04b20e334f678c2b0ff9879b9375ed107d5d07ff160171"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:660c94ea760b3ce47d1855a30984c78327500493d396eac4dfd8bd82041b22be"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:212774e4dfa851e74d393a2370871e174d7ff0ebc980907723bb67d25c8a7c30"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f0117049dd1d5635bbff65444496c90e0baa48ea405125c088e93d9cf4525b11"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-win32.whl", hash = "sha256:0a891e4e41b54fd5b8313b96399f8b0e173bbbfc03c7631f01efbe29bb0bcf82"}, - {file = "lazy_object_proxy-1.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:9990d8e71b9f6488e91ad25f322898c136b008d87bf852ff65391b004da5e17b"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9e7551208b2aded9c1447453ee366f1c4070602b3d932ace044715d89666899b"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f83ac4d83ef0ab017683d715ed356e30dd48a93746309c8f3517e1287523ef4"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7322c3d6f1766d4ef1e51a465f47955f1e8123caee67dd641e67d539a534d006"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:18b78ec83edbbeb69efdc0e9c1cb41a3b1b1ed11ddd8ded602464c3fc6020494"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:09763491ce220c0299688940f8dc2c5d05fd1f45af1e42e636b2e8b2303e4382"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-win32.whl", hash = "sha256:9090d8e53235aa280fc9239a86ae3ea8ac58eff66a705fa6aa2ec4968b95c821"}, - {file = "lazy_object_proxy-1.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:db1c1722726f47e10e0b5fdbf15ac3b8adb58c091d12b3ab713965795036985f"}, -] - [[package]] name = "lucid3" version = "3.0.0" @@ -1374,7 +1235,6 @@ files = [ contourpy = ">=1.0.1" cycler = ">=0.10" fonttools = ">=4.22.0" -importlib-resources = {version = ">=3.2.0", markers = "python_version < \"3.10\""} kiwisolver = ">=1.0.1" numpy = ">=1.20" packaging = ">=20.0" @@ -1382,18 +1242,6 @@ pillow = ">=6.2.0" pyparsing = ">=2.3.1" python-dateutil = ">=2.7" -[[package]] -name = "mccabe" -version = "0.7.0" -description = "McCabe checker, plugin for flake8" -optional = false -python-versions = ">=3.6" -groups = ["dev"] -files = [ - {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, - {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, -] - [[package]] name = "mdit-py-plugins" version = "0.4.0" @@ -1525,11 +1373,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.21.0", markers = "python_version <= \"3.9\" and platform_system == \"Darwin\" and platform_machine == \"arm64\" and python_version >= \"3.8\""}, {version = ">=1.21.4", markers = "python_version >= \"3.10\" and platform_system == \"Darwin\" and python_version < \"3.11\""}, {version = ">=1.21.2", markers = "platform_system != \"Darwin\" and python_version >= \"3.10\" and python_version < \"3.11\""}, - {version = ">=1.19.3", markers = "platform_system == \"Linux\" and platform_machine == \"aarch64\" and python_version >= \"3.8\" and python_version < \"3.10\" or python_version > \"3.9\" and python_version < \"3.10\" or python_version >= \"3.9\" and platform_system != \"Darwin\" and python_version < \"3.10\" or python_version >= \"3.9\" and platform_machine != \"arm64\" and python_version < \"3.10\""}, - {version = ">=1.17.3", markers = "(platform_system != \"Darwin\" and platform_system != \"Linux\") and python_version >= \"3.8\" and python_version < \"3.9\" or platform_system != \"Darwin\" and python_version >= \"3.8\" and python_version < \"3.9\" and platform_machine != \"aarch64\" or platform_machine != \"arm64\" and python_version >= \"3.8\" and python_version < \"3.9\" and platform_system != \"Linux\" or (platform_machine != \"arm64\" and platform_machine != \"aarch64\") and python_version >= \"3.8\" and python_version < \"3.9\""}, {version = ">=1.23.5", markers = "python_version >= \"3.11\""}, ] @@ -1643,19 +1488,6 @@ tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "pa typing = ["typing-extensions"] xmp = ["defusedxml"] -[[package]] -name = "pkgutil-resolve-name" -version = "1.3.10" -description = "Resolve a name to an object." -optional = false -python-versions = ">=3.6" -groups = ["main"] -markers = "python_version < \"3.9\"" -files = [ - {file = "pkgutil_resolve_name-1.3.10-py3-none-any.whl", hash = "sha256:ca27cc078d25c5ad71a9de0a7a330146c4e014c2462d9af19c6b828280649c5e"}, - {file = "pkgutil_resolve_name-1.3.10.tar.gz", hash = "sha256:357d6c9e6a755653cfd78893817c0853af365dd51ec97f3d358a819373bbd174"}, -] - [[package]] name = "platformdirs" version = "4.3.6" @@ -1675,14 +1507,14 @@ type = ["mypy (>=1.11.2)"] [[package]] name = "pluggy" -version = "1.0.0" +version = "1.5.0" description = "plugin and hook calling mechanisms for python" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, - {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, + {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, + {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, ] [package.extras] @@ -1691,14 +1523,14 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "pre-commit" -version = "2.21.0" +version = "4.1.0" description = "A framework for managing and maintaining multi-language pre-commit hooks." optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pre_commit-2.21.0-py2.py3-none-any.whl", hash = "sha256:e2f91727039fc39a92f58a588a25b87f936de6567eed4f0e673e0507edc75bad"}, - {file = "pre_commit-2.21.0.tar.gz", hash = "sha256:31ef31af7e474a8d8995027fefdfcf509b5c913ff31f2015b4ec4beb26a6f658"}, + {file = "pre_commit-4.1.0-py2.py3-none-any.whl", hash = "sha256:d29e7cb346295bcc1cc75fc3e92e343495e3ea0196c9ec6ba53f49f10ab6ae7b"}, + {file = "pre_commit-4.1.0.tar.gz", hash = "sha256:ae3f018575a588e30dfddfab9a05448bfbd6b73d78709617b5a2b853549716d4"}, ] [package.dependencies] @@ -1965,36 +1797,6 @@ dev = ["black (>=25)", "flake8 (>=4)", "pyicat-plus[test]"] doc = ["pydata-sphinx-theme (<0.15)", "pyicat-plus[test]", "sphinx (>=4.5)", "sphinx-autodoc-typehints (>=1.16)"] test = ["coilmq", "h5py (>=3.5)", "numpy (>=1.15)", "psutil", "pyicat-plus[bliss]", "pytest (>=7)", "pytest-timeout (>=2.1)", "stomp.py (>=7)", "xmltodict"] -[[package]] -name = "pylint" -version = "2.17.4" -description = "python code static checker" -optional = false -python-versions = ">=3.7.2" -groups = ["dev"] -files = [ - {file = "pylint-2.17.4-py3-none-any.whl", hash = "sha256:7a1145fb08c251bdb5cca11739722ce64a63db479283d10ce718b2460e54123c"}, - {file = "pylint-2.17.4.tar.gz", hash = "sha256:5dcf1d9e19f41f38e4e85d10f511e5b9c35e1aa74251bf95cdd8cb23584e2db1"}, -] - -[package.dependencies] -astroid = ">=2.15.4,<=2.17.0-dev0" -colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -dill = [ - {version = ">=0.2", markers = "python_version < \"3.11\""}, - {version = ">=0.3.6", markers = "python_version >= \"3.11\""}, -] -isort = ">=4.2.5,<6" -mccabe = ">=0.6,<0.8" -platformdirs = ">=2.2.0" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -tomlkit = ">=0.10.1" -typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} - -[package.extras] -spelling = ["pyenchant (>=3.2,<4.0)"] -testutils = ["gitpython (>3)"] - [[package]] name = "pyparsing" version = "3.0.9" @@ -2054,7 +1856,6 @@ description = "A python binding for the Tango control system" optional = false python-versions = ">=3.6" groups = ["main"] -markers = "extra == \"tango\"" files = [ {file = "pytango-9.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:947c75256efd1c02f59d8b1a5dd5e2b2e0c844fadf6439681f02b71f12f22dec"}, {file = "pytango-9.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:32372e2e90319d20d2a0ae528efbdce1bd073aca8f7975dc35229b94e1d95033"}, @@ -2106,14 +1907,14 @@ tests = ["gevent (>=20)", "pytest", "pytest-forked"] [[package]] name = "pytest" -version = "7.3.1" +version = "8.3.4" description = "pytest: simple powerful testing with Python" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "pytest-7.3.1-py3-none-any.whl", hash = "sha256:3799fa815351fea3a5e96ac7e503a96fa51cc9942c3753cda7651b93c1cfa362"}, - {file = "pytest-7.3.1.tar.gz", hash = "sha256:434afafd78b1d78ed0addf160ad2b77a30d35d4bdf8af234fe621919d9ed15e3"}, + {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"}, + {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"}, ] [package.dependencies] @@ -2121,45 +1922,45 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=0.12,<2.0" -tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} +pluggy = ">=1.5,<2" +tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "pytest-cov" -version = "4.1.0" +version = "6.0.0" description = "Pytest plugin for measuring coverage." optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pytest-cov-4.1.0.tar.gz", hash = "sha256:3904b13dfbfec47f003b8e77fd5b589cd11904a21ddf1ab38a64f204d6a10ef6"}, - {file = "pytest_cov-4.1.0-py3-none-any.whl", hash = "sha256:6ba70b9e97e69fcc3fb45bfeab2d0a138fb65c4d0d6a41ef33983ad114be8c3a"}, + {file = "pytest-cov-6.0.0.tar.gz", hash = "sha256:fde0b595ca248bb8e2d76f020b465f3b107c9632e6a1d1705f17834c89dcadc0"}, + {file = "pytest_cov-6.0.0-py3-none-any.whl", hash = "sha256:eee6f1b9e61008bd34975a4d5bab25801eb31898b032dd55addc93e96fcaaa35"}, ] [package.dependencies] -coverage = {version = ">=5.2.1", extras = ["toml"]} +coverage = {version = ">=7.5", extras = ["toml"]} pytest = ">=4.6" [package.extras] -testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "virtualenv"] [[package]] name = "pytest-mock" -version = "3.10.0" +version = "3.14.0" description = "Thin-wrapper around the mock package for easier use with pytest" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "pytest-mock-3.10.0.tar.gz", hash = "sha256:fbbdb085ef7c252a326fd8cdcac0aa3b1333d8811f131bdcc701002e1be7ed4f"}, - {file = "pytest_mock-3.10.0-py3-none-any.whl", hash = "sha256:f4c973eeae0282963eb293eb173ce91b091a79c1334455acfac9ddee8a1c784b"}, + {file = "pytest-mock-3.14.0.tar.gz", hash = "sha256:2719255a1efeceadbc056d6bf3df3d1c5015530fb40cf347c0f9afac88410bd0"}, + {file = "pytest_mock-3.14.0-py3-none-any.whl", hash = "sha256:0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"}, ] [package.dependencies] -pytest = ">=5.0" +pytest = ">=6.2.5" [package.extras] dev = ["pre-commit", "pytest-asyncio", "tox"] @@ -2194,19 +1995,6 @@ files = [ pyasn1 = ">=0.3.7" pyasn1_modules = ">=0.1.5" -[[package]] -name = "pytz" -version = "2023.3.post1" -description = "World timezone definitions, modern and historical" -optional = false -python-versions = "*" -groups = ["docs"] -markers = "python_version < \"3.9\"" -files = [ - {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, - {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, -] - [[package]] name = "pyyaml" version = "6.0" @@ -2471,7 +2259,6 @@ babel = ">=2.9" colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} docutils = ">=0.18.1,<0.21" imagesize = ">=1.3" -importlib-metadata = {version = ">=4.8", markers = "python_version < \"3.10\""} Jinja2 = ">=3.0" packaging = ">=21.0" Pygments = ">=2.13" @@ -2666,19 +2453,7 @@ files = [ {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] -markers = {main = "python_full_version <= \"3.10.0\"", dev = "python_version < \"3.11\""} - -[[package]] -name = "tomlkit" -version = "0.11.8" -description = "Style preserving TOML library" -optional = false -python-versions = ">=3.7" -groups = ["dev"] -files = [ - {file = "tomlkit-0.11.8-py3-none-any.whl", hash = "sha256:8c726c4c202bdb148667835f68d68780b9a003a9ec34167b6c673b38eff2a171"}, - {file = "tomlkit-0.11.8.tar.gz", hash = "sha256:9330fc7faa1db67b541b28e62018c17d20be733177d290a13b24c62d1614e0c3"}, -] +markers = {main = "python_full_version == \"3.10.0\"", dev = "python_full_version <= \"3.11.0a6\" and (python_version < \"3.11\" or platform_python_implementation != \"CPython\")"} [[package]] name = "tqdm" @@ -2708,7 +2483,7 @@ version = "4.12.2" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" -groups = ["main", "dev"] +groups = ["main"] files = [ {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, @@ -2752,108 +2527,6 @@ platformdirs = ">=3.9.1,<5" docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2,!=7.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] -[[package]] -name = "wrapt" -version = "1.15.0" -description = "Module for decorators, wrappers and monkey patching." -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" -groups = ["dev"] -files = [ - {file = "wrapt-1.15.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:ca1cccf838cd28d5a0883b342474c630ac48cac5df0ee6eacc9c7290f76b11c1"}, - {file = "wrapt-1.15.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:e826aadda3cae59295b95343db8f3d965fb31059da7de01ee8d1c40a60398b29"}, - {file = "wrapt-1.15.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:5fc8e02f5984a55d2c653f5fea93531e9836abbd84342c1d1e17abc4a15084c2"}, - {file = "wrapt-1.15.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:96e25c8603a155559231c19c0349245eeb4ac0096fe3c1d0be5c47e075bd4f46"}, - {file = "wrapt-1.15.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:40737a081d7497efea35ab9304b829b857f21558acfc7b3272f908d33b0d9d4c"}, - {file = "wrapt-1.15.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:f87ec75864c37c4c6cb908d282e1969e79763e0d9becdfe9fe5473b7bb1e5f09"}, - {file = "wrapt-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:1286eb30261894e4c70d124d44b7fd07825340869945c79d05bda53a40caa079"}, - {file = "wrapt-1.15.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:493d389a2b63c88ad56cdc35d0fa5752daac56ca755805b1b0c530f785767d5e"}, - {file = "wrapt-1.15.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:58d7a75d731e8c63614222bcb21dd992b4ab01a399f1f09dd82af17bbfc2368a"}, - {file = "wrapt-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:21f6d9a0d5b3a207cdf7acf8e58d7d13d463e639f0c7e01d82cdb671e6cb7923"}, - {file = "wrapt-1.15.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce42618f67741d4697684e501ef02f29e758a123aa2d669e2d964ff734ee00ee"}, - {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41d07d029dd4157ae27beab04d22b8e261eddfc6ecd64ff7000b10dc8b3a5727"}, - {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54accd4b8bc202966bafafd16e69da9d5640ff92389d33d28555c5fd4f25ccb7"}, - {file = "wrapt-1.15.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fbfbca668dd15b744418265a9607baa970c347eefd0db6a518aaf0cfbd153c0"}, - {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:76e9c727a874b4856d11a32fb0b389afc61ce8aaf281ada613713ddeadd1cfec"}, - {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e20076a211cd6f9b44a6be58f7eeafa7ab5720eb796975d0c03f05b47d89eb90"}, - {file = "wrapt-1.15.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a74d56552ddbde46c246b5b89199cb3fd182f9c346c784e1a93e4dc3f5ec9975"}, - {file = "wrapt-1.15.0-cp310-cp310-win32.whl", hash = "sha256:26458da5653aa5b3d8dc8b24192f574a58984c749401f98fff994d41d3f08da1"}, - {file = "wrapt-1.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:75760a47c06b5974aa5e01949bf7e66d2af4d08cb8c1d6516af5e39595397f5e"}, - {file = "wrapt-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ba1711cda2d30634a7e452fc79eabcadaffedf241ff206db2ee93dd2c89a60e7"}, - {file = "wrapt-1.15.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:56374914b132c702aa9aa9959c550004b8847148f95e1b824772d453ac204a72"}, - {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a89ce3fd220ff144bd9d54da333ec0de0399b52c9ac3d2ce34b569cf1a5748fb"}, - {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3bbe623731d03b186b3d6b0d6f51865bf598587c38d6f7b0be2e27414f7f214e"}, - {file = "wrapt-1.15.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3abbe948c3cbde2689370a262a8d04e32ec2dd4f27103669a45c6929bcdbfe7c"}, - {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b67b819628e3b748fd3c2192c15fb951f549d0f47c0449af0764d7647302fda3"}, - {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7eebcdbe3677e58dd4c0e03b4f2cfa346ed4049687d839adad68cc38bb559c92"}, - {file = "wrapt-1.15.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:74934ebd71950e3db69960a7da29204f89624dde411afbfb3b4858c1409b1e98"}, - {file = "wrapt-1.15.0-cp311-cp311-win32.whl", hash = "sha256:bd84395aab8e4d36263cd1b9308cd504f6cf713b7d6d3ce25ea55670baec5416"}, - {file = "wrapt-1.15.0-cp311-cp311-win_amd64.whl", hash = "sha256:a487f72a25904e2b4bbc0817ce7a8de94363bd7e79890510174da9d901c38705"}, - {file = "wrapt-1.15.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:4ff0d20f2e670800d3ed2b220d40984162089a6e2c9646fdb09b85e6f9a8fc29"}, - {file = "wrapt-1.15.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:9ed6aa0726b9b60911f4aed8ec5b8dd7bf3491476015819f56473ffaef8959bd"}, - {file = "wrapt-1.15.0-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:896689fddba4f23ef7c718279e42f8834041a21342d95e56922e1c10c0cc7afb"}, - {file = "wrapt-1.15.0-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:75669d77bb2c071333417617a235324a1618dba66f82a750362eccbe5b61d248"}, - {file = "wrapt-1.15.0-cp35-cp35m-win32.whl", hash = "sha256:fbec11614dba0424ca72f4e8ba3c420dba07b4a7c206c8c8e4e73f2e98f4c559"}, - {file = "wrapt-1.15.0-cp35-cp35m-win_amd64.whl", hash = "sha256:fd69666217b62fa5d7c6aa88e507493a34dec4fa20c5bd925e4bc12fce586639"}, - {file = "wrapt-1.15.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b0724f05c396b0a4c36a3226c31648385deb6a65d8992644c12a4963c70326ba"}, - {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bbeccb1aa40ab88cd29e6c7d8585582c99548f55f9b2581dfc5ba68c59a85752"}, - {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:38adf7198f8f154502883242f9fe7333ab05a5b02de7d83aa2d88ea621f13364"}, - {file = "wrapt-1.15.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:578383d740457fa790fdf85e6d346fda1416a40549fe8db08e5e9bd281c6a475"}, - {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:a4cbb9ff5795cd66f0066bdf5947f170f5d63a9274f99bdbca02fd973adcf2a8"}, - {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:af5bd9ccb188f6a5fdda9f1f09d9f4c86cc8a539bd48a0bfdc97723970348418"}, - {file = "wrapt-1.15.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:b56d5519e470d3f2fe4aa7585f0632b060d532d0696c5bdfb5e8319e1d0f69a2"}, - {file = "wrapt-1.15.0-cp36-cp36m-win32.whl", hash = "sha256:77d4c1b881076c3ba173484dfa53d3582c1c8ff1f914c6461ab70c8428b796c1"}, - {file = "wrapt-1.15.0-cp36-cp36m-win_amd64.whl", hash = "sha256:077ff0d1f9d9e4ce6476c1a924a3332452c1406e59d90a2cf24aeb29eeac9420"}, - {file = "wrapt-1.15.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5c5aa28df055697d7c37d2099a7bc09f559d5053c3349b1ad0c39000e611d317"}, - {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a8564f283394634a7a7054b7983e47dbf39c07712d7b177b37e03f2467a024e"}, - {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780c82a41dc493b62fc5884fb1d3a3b81106642c5c5c78d6a0d4cbe96d62ba7e"}, - {file = "wrapt-1.15.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e169e957c33576f47e21864cf3fc9ff47c223a4ebca8960079b8bd36cb014fd0"}, - {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b02f21c1e2074943312d03d243ac4388319f2456576b2c6023041c4d57cd7019"}, - {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f2e69b3ed24544b0d3dbe2c5c0ba5153ce50dcebb576fdc4696d52aa22db6034"}, - {file = "wrapt-1.15.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d787272ed958a05b2c86311d3a4135d3c2aeea4fc655705f074130aa57d71653"}, - {file = "wrapt-1.15.0-cp37-cp37m-win32.whl", hash = "sha256:02fce1852f755f44f95af51f69d22e45080102e9d00258053b79367d07af39c0"}, - {file = "wrapt-1.15.0-cp37-cp37m-win_amd64.whl", hash = "sha256:abd52a09d03adf9c763d706df707c343293d5d106aea53483e0ec8d9e310ad5e"}, - {file = "wrapt-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cdb4f085756c96a3af04e6eca7f08b1345e94b53af8921b25c72f096e704e145"}, - {file = "wrapt-1.15.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:230ae493696a371f1dbffaad3dafbb742a4d27a0afd2b1aecebe52b740167e7f"}, - {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63424c681923b9f3bfbc5e3205aafe790904053d42ddcc08542181a30a7a51bd"}, - {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6bcbfc99f55655c3d93feb7ef3800bd5bbe963a755687cbf1f490a71fb7794b"}, - {file = "wrapt-1.15.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c99f4309f5145b93eca6e35ac1a988f0dc0a7ccf9ccdcd78d3c0adf57224e62f"}, - {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b130fe77361d6771ecf5a219d8e0817d61b236b7d8b37cc045172e574ed219e6"}, - {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:96177eb5645b1c6985f5c11d03fc2dbda9ad24ec0f3a46dcce91445747e15094"}, - {file = "wrapt-1.15.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5fe3e099cf07d0fb5a1e23d399e5d4d1ca3e6dfcbe5c8570ccff3e9208274f7"}, - {file = "wrapt-1.15.0-cp38-cp38-win32.whl", hash = "sha256:abd8f36c99512755b8456047b7be10372fca271bf1467a1caa88db991e7c421b"}, - {file = "wrapt-1.15.0-cp38-cp38-win_amd64.whl", hash = "sha256:b06fa97478a5f478fb05e1980980a7cdf2712015493b44d0c87606c1513ed5b1"}, - {file = "wrapt-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2e51de54d4fb8fb50d6ee8327f9828306a959ae394d3e01a1ba8b2f937747d86"}, - {file = "wrapt-1.15.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0970ddb69bba00670e58955f8019bec4a42d1785db3faa043c33d81de2bf843c"}, - {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76407ab327158c510f44ded207e2f76b657303e17cb7a572ffe2f5a8a48aa04d"}, - {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd525e0e52a5ff16653a3fc9e3dd827981917d34996600bbc34c05d048ca35cc"}, - {file = "wrapt-1.15.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d37ac69edc5614b90516807de32d08cb8e7b12260a285ee330955604ed9dd29"}, - {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:078e2a1a86544e644a68422f881c48b84fef6d18f8c7a957ffd3f2e0a74a0d4a"}, - {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2cf56d0e237280baed46f0b5316661da892565ff58309d4d2ed7dba763d984b8"}, - {file = "wrapt-1.15.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7dc0713bf81287a00516ef43137273b23ee414fe41a3c14be10dd95ed98a2df9"}, - {file = "wrapt-1.15.0-cp39-cp39-win32.whl", hash = "sha256:46ed616d5fb42f98630ed70c3529541408166c22cdfd4540b88d5f21006b0eff"}, - {file = "wrapt-1.15.0-cp39-cp39-win_amd64.whl", hash = "sha256:eef4d64c650f33347c1f9266fa5ae001440b232ad9b98f1f43dfe7a79435c0a6"}, - {file = "wrapt-1.15.0-py3-none-any.whl", hash = "sha256:64b1df0f83706b4ef4cfb4fb0e4c2669100fd7ecacfb59e091fad300d4e04640"}, - {file = "wrapt-1.15.0.tar.gz", hash = "sha256:d06730c6aed78cee4126234cf2d071e01b44b915e725a6cb439a879ec9754a3a"}, -] - -[[package]] -name = "zipp" -version = "3.19.1" -description = "Backport of pathlib-compatible object wrapper for zip files" -optional = false -python-versions = ">=3.8" -groups = ["main", "docs"] -markers = "python_version < \"3.10\"" -files = [ - {file = "zipp-3.19.1-py3-none-any.whl", hash = "sha256:2828e64edb5386ea6a52e7ba7cdb17bb30a73a858f5eb6eb93d8d36f5ea26091"}, - {file = "zipp-3.19.1.tar.gz", hash = "sha256:35427f6d5594f4acf82d25541438348c26736fa9b3afa2754bcd63cdb99d8e8f"}, -] - -[package.extras] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -test = ["big-O", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] - [[package]] name = "zope-event" version = "4.6" @@ -2921,10 +2594,7 @@ docs = ["Sphinx", "repoze.sphinx.autointerface"] test = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] -[extras] -tango = ["PyTango"] - [metadata] lock-version = "2.1" -python-versions = ">=3.8,<3.12" -content-hash = "5e2626ca0a0ff04ff424ca3dde452ae19622bbac86caa0efd820ccc3f0ed2563" +python-versions = ">=3.10,<3.12" +content-hash = "b4f11015132e5d18f8085535230d475043a536643a65a9385ed46a41f4b96734" diff --git a/pyproject.toml b/pyproject.toml index 6adc3af54e..1efd66f73c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,13 +1,15 @@ -[tool.poetry] +[project] name = "mxcubecore" version = "1.227.0" license = "LGPL-3.0-or-later" description = "Core libraries for the MXCuBE application" -authors = ["The MXCuBE collaboration "] +authors = [ + {name = "The MXCuBE collaboration", email = "mxcube@esrf.fr"}, +] maintainers = [ - "Marcus Oscarsson ", - "Rasmus H. Fogh ", - "Antonia Beteva ", + {name = "Marcus Oscarsson", email = "mxcube@esrf.fr"}, + {name = "Rasmus H. Fogh", email = "rhfogh@globalphasing.com"}, + {name = "Antonia Beteva", email = "beteva@esrf.fr"}, ] readme = "README.md" homepage = "http://github.com/mxcube/mxcubecore" @@ -22,15 +24,20 @@ classifiers = [ "Natural Language :: English", "Topic :: Scientific/Engineering", ] +requires-python = ">=3.10,<3.12" +dynamic = [ + # For the time being: keep using Poetry-specific notation for this field, + # but there does not seem to be anything blocking migration to standard notation. + "dependencies", +] +[tool.poetry] # Exclude some files from being added to *sdist* and * wheel* distribution packages exclude = [ "mxcubecore/configuration", ] - [tool.poetry.dependencies] -python = ">=3.8,<3.12" typing-extensions = "^4.3.0" tomli = { version = "^2.0.1", python = "<=3.10" } gevent = "^23.9.1" @@ -51,18 +58,17 @@ gipc = "^1.6.0" py4j = "0.10.9.7" f90nml = "1.4.3" lucid3 = "^3.0.0" -PyTango = { version = "^9.3.6"} +PyTango = "^9.3.6" python-ldap = "^3.4.0" requests = "^2.31.0" colorama = "^0.4.6" pyicat-plus = {version = "^0.5.1", optional = true} -[tool.poetry.dev-dependencies] -pylint = "^2.15.6" -pre-commit = "^2.20.0" -pytest = "^7.2.0" -pytest-cov = "^4.0.0" -pytest-mock = "^3.10.0" +[tool.poetry.group.dev.dependencies] +pre-commit = "^4.1.0" +pytest = "^8.3.4" +pytest-cov = "^6.0.0" +pytest-mock = "^3.14.0" [tool.poetry.group.docs.dependencies] furo = "^2023.9.10" @@ -71,9 +77,6 @@ sphinx = "<7.2" sphinx-last-updated-by-git = "^0.3.7" sphinxcontrib-mermaid = "^0.9.2" -[tool.poetry.extras] -tango = ["PyTango"] - [tool.autoflake] # # Exclude files below from autoflake checks until we get around fixing them. @@ -122,6 +125,11 @@ mxcubecore/HardwareObjects/XSDataMXv1.py, [tool.black] line-length = 88 +required-version = "25" +target-version = [ + "py310", + "py311", +] include = '\.pyi?$' force-exclude = ''' ( diff --git a/test/pytest/TestAbstractActuatorBase.py b/test/pytest/TestAbstractActuatorBase.py index 4ef0000555..78997e940e 100644 --- a/test/pytest/TestAbstractActuatorBase.py +++ b/test/pytest/TestAbstractActuatorBase.py @@ -22,11 +22,12 @@ __license__ = "LGPLv3+" import abc -from test.pytest import TestHardwareObjectBase import gevent import pytest +from test.pytest import TestHardwareObjectBase + test_object = TestHardwareObjectBase.test_object diff --git a/test/pytest/TestAbstractMotorBase.py b/test/pytest/TestAbstractMotorBase.py index f3244c6088..ddf697bff6 100644 --- a/test/pytest/TestAbstractMotorBase.py +++ b/test/pytest/TestAbstractMotorBase.py @@ -15,21 +15,21 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Test suite for AbstractMotor class. -""" +"""Test suite for AbstractMotor class.""" __copyright__ = """ Copyright © 2016 - 2022 by MXCuBE Collaboration """ __license__ = "LGPLv3+" import abc + +import gevent +import pytest + from test.pytest import ( TestAbstractActuatorBase, TestHardwareObjectBase, ) -import gevent -import pytest - test_object = TestAbstractActuatorBase.test_object diff --git a/test/pytest/TestAbstractNStateBase.py b/test/pytest/TestAbstractNStateBase.py index 22189bbecf..afdf415b88 100644 --- a/test/pytest/TestAbstractNStateBase.py +++ b/test/pytest/TestAbstractNStateBase.py @@ -24,10 +24,11 @@ __license__ = "LGPLv3+" import abc -from test.pytest import TestAbstractActuatorBase import pytest +from test.pytest import TestAbstractActuatorBase + test_object = TestAbstractActuatorBase.test_object diff --git a/test/pytest/test_aperture.py b/test/pytest/test_aperture.py index e79c5528fe..0813c082c9 100644 --- a/test/pytest/test_aperture.py +++ b/test/pytest/test_aperture.py @@ -21,10 +21,10 @@ __copyright__ = """ Copyright © by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest.TestAbstractNStateBase import TestAbstractNStateBase - import pytest +from test.pytest.TestAbstractNStateBase import TestAbstractNStateBase + @pytest.fixture def test_object(beamline): diff --git a/test/pytest/test_beam.py b/test/pytest/test_beam.py index 2dbcc19be0..b691a81a2a 100644 --- a/test/pytest/test_beam.py +++ b/test/pytest/test_beam.py @@ -19,14 +19,12 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Test suite for Beam hardware object. -""" - -from test.pytest import TestHardwareObjectBase +"""Test suite for Beam hardware object.""" import pytest from mxcubecore.HardwareObjects.abstract.AbstractBeam import BeamShape +from test.pytest import TestHardwareObjectBase __copyright__ = """ Copyright © 2016 - 2022 by MXCuBE Collaboration """ __license__ = "LGPLv3+" diff --git a/test/pytest/test_beam_definer.py b/test/pytest/test_beam_definer.py index 31aa8ee997..b0fb8ffd12 100644 --- a/test/pytest/test_beam_definer.py +++ b/test/pytest/test_beam_definer.py @@ -19,13 +19,12 @@ # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Test suite for BeamDefiner hardware object. -""" - -from test.pytest.TestAbstractNStateBase import TestAbstractNStateBase +"""Test suite for BeamDefiner hardware object.""" import pytest +from test.pytest.TestAbstractNStateBase import TestAbstractNStateBase + __copyright__ = """ Copyright © by MXCuBE Collaboration """ __license__ = "LGPLv3+" diff --git a/test/pytest/test_beamline_ho_id.py b/test/pytest/test_beamline_ho_id.py index 8e9ae29921..6a8642e4c6 100644 --- a/test/pytest/test_beamline_ho_id.py +++ b/test/pytest/test_beamline_ho_id.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from __future__ import ( absolute_import, diff --git a/test/pytest/test_detector.py b/test/pytest/test_detector.py index e5bc81f788..54470a79b9 100644 --- a/test/pytest/test_detector.py +++ b/test/pytest/test_detector.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from __future__ import ( absolute_import, @@ -26,10 +25,11 @@ ) import math -from test.pytest import TestHardwareObjectBase import pytest +from test.pytest import TestHardwareObjectBase + __copyright__ = """ Copyright © 2016 - 2020 by MXCuBE Collaboration """ __license__ = "LGPLv3+" diff --git a/test/pytest/test_detector_distance.py b/test/pytest/test_detector_distance.py index a9d41f51c4..6f093e1aa5 100644 --- a/test/pytest/test_detector_distance.py +++ b/test/pytest/test_detector_distance.py @@ -25,10 +25,10 @@ unicode_literals, ) -from test.pytest import TestAbstractMotorBase - import pytest +from test.pytest import TestAbstractMotorBase + __copyright__ = """ Copyright © 2016 - 2020 by MXCuBE Collaboration """ __license__ = "LGPLv3+" __author__ = "rhfogh" diff --git a/test/pytest/test_energy.py b/test/pytest/test_energy.py index a7a7b1dc82..a49d10c02f 100644 --- a/test/pytest/test_energy.py +++ b/test/pytest/test_energy.py @@ -21,10 +21,10 @@ __copyright__ = """ Copyright © 2019-2020 by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest import TestAbstractActuatorBase - import pytest +from test.pytest import TestAbstractActuatorBase + @pytest.fixture def test_object(beamline): diff --git a/test/pytest/test_flux.py b/test/pytest/test_flux.py index 36f21dff08..5b068122de 100644 --- a/test/pytest/test_flux.py +++ b/test/pytest/test_flux.py @@ -23,10 +23,10 @@ __copyright__ = """ Copyright © 2019-2020 by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest import TestAbstractActuatorBase - import pytest +from test.pytest import TestAbstractActuatorBase + @pytest.fixture def test_object(beamline): diff --git a/test/pytest/test_mach_info.py b/test/pytest/test_mach_info.py index 226aa5786b..a38f5e8c5e 100644 --- a/test/pytest/test_mach_info.py +++ b/test/pytest/test_mach_info.py @@ -15,13 +15,12 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -"""Test suite for MachineInfo hardware object -""" - -from test.pytest import TestHardwareObjectBase +"""Test suite for MachineInfo hardware object""" import pytest +from test.pytest import TestHardwareObjectBase + __copyright__ = """ Copyright © by MXCuBE Collaboration """ __license__ = "LGPLv3+" diff --git a/test/pytest/test_resolution.py b/test/pytest/test_resolution.py index 1ed8155eee..4b0dc45d00 100755 --- a/test/pytest/test_resolution.py +++ b/test/pytest/test_resolution.py @@ -19,10 +19,10 @@ Test the resolution hardware object. Dependant on detector_distance and energy hardware objects """ -from test.pytest import TestAbstractMotorBase - import pytest +from test.pytest import TestAbstractMotorBase + __copyright__ = """ Copyright © 2016 - 2022 by MXCuBE Collaboration """ __license__ = "LGPLv3+" diff --git a/test/pytest/test_sample_view.py b/test/pytest/test_sample_view.py index 82c2cf3115..3143a5224e 100644 --- a/test/pytest/test_sample_view.py +++ b/test/pytest/test_sample_view.py @@ -15,8 +15,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with MXCuBE. If not, see . -""" -""" +""" """ from __future__ import ( absolute_import, diff --git a/test/pytest/test_shutter.py b/test/pytest/test_shutter.py index ca19b45084..95bc054018 100644 --- a/test/pytest/test_shutter.py +++ b/test/pytest/test_shutter.py @@ -21,11 +21,10 @@ __copyright__ = """ Copyright © 2019-2020 by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest import TestAbstractNStateBase - import pytest from mxcubecore.BaseHardwareObjects import HardwareObjectState +from test.pytest import TestAbstractNStateBase @pytest.fixture diff --git a/test/pytest/test_transmission.py b/test/pytest/test_transmission.py index f799b89199..239069af83 100644 --- a/test/pytest/test_transmission.py +++ b/test/pytest/test_transmission.py @@ -18,15 +18,14 @@ # You should have received a copy of the GNU General Lesser Public License # along with MXCuBE. If not, see . -"""Test suite for Transmission hardware object. -""" +"""Test suite for Transmission hardware object.""" __copyright__ = """ Copyright © 2019-2020 by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest import TestAbstractActuatorBase - import pytest +from test.pytest import TestAbstractActuatorBase + @pytest.fixture def test_object(beamline): diff --git a/test/pytest/test_xrf.py b/test/pytest/test_xrf.py index 50358b4760..5b7e403d78 100644 --- a/test/pytest/test_xrf.py +++ b/test/pytest/test_xrf.py @@ -29,11 +29,10 @@ __copyright__ = """ Copyright © by the MXCuBE collaboration """ __license__ = "LGPLv3+" -from test.pytest import TestHardwareObjectBase - import pytest from mxcubecore.BaseHardwareObjects import HardwareObjectState +from test.pytest import TestHardwareObjectBase @pytest.fixture