8000 Releases · QuTech-Delft/QMI · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: QuTech-Delft/QMI

v0.49.0

19 May 12:26
Compare
Choose a tag to compare

[0.49.0] - 2025-05-19

Added

  • The log file existence is checked and necessary folder structure is created if needed.
  • The log file maximum size and number of backups can now be set. Defaults are 10GB size and 5 backups (total of 60GB).
  • An example of how to define logging options, in the docstring of logging_init.py module.

Changed

  • All entry point functions in bin scripts from main to run to avoid unintended modifications of pyproject.toml when executing release procedure.
  • The configstruct wrapper from qmi.core.config_struct now accepts only modern typing for field. Most (but not all) of the typing.<Type> will not be parsed anymore by the type parser.
  • The obsoleted "python3" commands were replaced with "python" in tools.proc.

Fixed

  • In context_singleton.py, the QMI 'log_dir' path is now correctly retrieved from QMI configuration file, if it is defined.
  • For QMI configuration and log file locations, the path is made OS-independent and the ~ character, if at start of the path, is replaced with full path.
  • Fixed pyproject.toml not to point to incorrect qmi location for package installation, but to root by removing [tool.setuptools.packages.find] lines.
  • The 'venv' executable path was made OS-dependent ("win" or else) for creating 'venv' in tools.proc.

Removed

  • The support for most old typing.<Type> types for configstruct wrapper.

[0.48.0] - Accidental tag push for release, release removed

v0.47.1

15 Apr 14:11
Compare
Choose a tag to compare

[0.47.1] - 2025-04-15

Fixed

  • Fixed pyproject.toml not to point to incorrect qmi location for package installation, but to root by removing [tool.setuptools.packages.find] lines.

v0.47.0

14 Mar 14:14
Compare
Choose a tag to compare

[0.47.0] - 2025-03-14

Added

  • Python 3.12, 3.13 support.
  • installing of py-xdrlib from GitHub source for Python 3.13 unit-tests.
  • HighFinesse Wavelength Meter (Wlm) driver with unittests, and license terms in wlmConst.py and wlmData.py.
  • RELEASE.md release procedure using bump2version with multiple configuration files.

Changed

  • qmi_tool script entry point to be at main function.
  • Package management to be done via pyproject.toml instead of setup.py.
  • Digilent and PicoTech devices' typing fixed and modernized.

Fixed

  • Full CI-test to install qmi package correctly and run unit-tests with all supported Python versions.
  • Some new typing issues, due to Mypy and Numpy updates, were fixed and respective modules were updated to 3.10+ Python style.
  • Possible fix on the badges not showing on Pypi page.

Removed

  • Python 3.8, 3.9 and 3.10 support, numpy and scipy version restrictions in dependencies.
  • qmi_run_contexts script as unused.

v0.46.0

08 Jan 08:25
Compare
Choose a tag to compare

[0.46.0] - 2024-10-14

Added

  • The QMI_Instrument and QMI_TaskRunner (which inherit from QMI_RpcObject) are now equipped with specific __enter__ and __exit__ methods, which in the case of QMI_Instrument
    also open and close the instrument when run with a with context manager protocol. Meanwhile QMI_TaskRunner starts and stops then joins a QMI task thread. In practise, these context managers
    can be used instead of the to-be-obsoleted open_close and start_stop_join context managers. The context manager protocol cannot be used for QMI_RpcObject directly.
  • The Bristol FOS has now a QMI driver version that works on Windows PCs. Also the respective CLI has been added in bin/instruments.

Changed

  • The CI pipelines are now using reusable workflows, placed in reusable-ci-workflows.yml.
  • The file names for the different pipeline actions were also changed to be more descriptive.

Fixed

  • mypy error on config_struct.py by adding extra logic check and not isinstance(val, type) on L236.
  • Also made in config_struct.py in L186 also tuples to be recognized as "untyped values".
  • workflow artifacts to be of @v4 instead of @V3 that are to be deprecated. For setup-python @v5 even.
  • Implemented the rtscts keyword in TransportDescriptorParser for the (serial) transport factory.

V0.45.0

18 Jul 07:40
Compare
Choose a tag to compare

[0.45.0] - 2024-07-17

Added

  • QMI driver for TeraXion TFN in qmi.instruments.teraxion with CLI client.
  • QMI driver for Thorlabs MPC320 in qmi.instruments.thorlabs.

Changed

  • In setup.py limited NumPy and SciPy versions to be <2. Also added missing line for Tenma 72 PSU CLI.
  • Refactored Newport single_axis_motion_controller.py to use context manager to enter and exit a configuration state.

Fixed

  • mypy errors not failing pipeline
  • In instruments.picoquant.support._decoders made the lexical sorting (numpy.lexsort) to temporarily retype the data to signed integer, as from Numpy 2.0 the integers are not allowed anymore to overflow.
  • The same fix is applied also in unit-tests.

Removed

  • Radon workflows as radon is no longer actively maintained. Pylint has taken over as the complexity checker.

V0.44.0

B0A4
25 Jan 14:53
b987a61
Compare
Choose a tag to compare

[0.44.0] - 2024-01-25

Added

  • More logging on levels from INFO to DEBUG into PicoQuant device drivers.
  • Added a new transport for communicating with instruments over UDP protocol. This works with transport string "udp:host:port".
  • The transport.py was introduced with common base class for TCP and UDP protocols, where several implementations are present
    for functions that work the same for both protocols. Some modifications, especially for read functions, were required for doing this.
    Other functions were implemented separately.
  • QMI drivers for Tenma 72-series power supply units in qmi.instruments.tenma

Changed

  • Refactored some unit-tests to use a QMI_Context patcher rather than the real thing, and adjusted the CI pipeline files and package requirements.
  • Changed the stopping of contexts in qmi_proc.proc_stop() to happen in reverse order to proc_start().
  • _RpcObjectMetaClass inherits from ABCMeta instead of type. This allows it to be used as a mixin with other ABCs.
  • PicoTech PicoSCope 3404 driver to accept also time-bases of 0 and 1 (sample intervals 1ns and 2ns).

Fixed

  • Improved PicoQuant unit-testing modules and comment line fixes on some other modules.
  • Bug in Newport Single Axis Motion Controller that did not allow for negative relative moves.

v0.43.0

23 Nov 09:59
d8a07ce
Compare
Choose a tag to compare

Update of QMI into v0.43.0. For further release details see CHANGELOG.md.

0