QCoDeS 0.58.0 (2026-05-04)
This will be the last version to support Python 3.11. Python 3.12 will be required starting from QCoDeS 0.59.0.
Breaking Changes:
- All arguments to Parameter classes and subclasses, except
name, are now keyword-only.
Previously deprecated positional arguments have been removed. #7911 - Yokogawa GS200: The
stepanddelayarguments oframp_voltageandramp_currenthave been deprecated in favor of theramp_stepandramp_rateinstrument parameters. #8025
Improved:
- Errors raised inside a
@propertygetter on a subclass of
:class:~qcodes.utils.DelegateAttributes(such as :class:~qcodes.instrument.Instrument)
are now surfaced with their original traceback, instead of being masked by a
genericAttributeError: ... object and its delegates have no attribute ...
message. The underlying cause of the failure is now visible in the traceback,
making misbehaving properties much easier to debug. #5518 - Parameters using
has_control_ofare now correctly handled when exporting to
xarray. Controlled parameters are no longer treated as independent top-level
parameters, preventing duplicate data rows. Additionally, inferred parameters
are now included as data variables in the xarray dataset when exporting via the
pandas-based path, and a warning is logged when the inferred parameter data size
does not match the expected xarray dataset dimensions. #7725 - Add
ParameterBaseKWArgsandParameterKWArgsTypedDicts for typing**kwargs
forwarded through theParameterclass hierarchy. Subclasses ofParametercan now
use**kwargs: Unpack[ParameterKWArgs]for statically checked kwargs forwarding. #8024 - Added calibration due date to Keithley calibration utility functions. #8040
- Fixed
_get_data_from_dsto correctly handle datasets with incorrect multi-index structure during export by adding a fallback data lookup. #8080
Improved Drivers:
- The
TektronixAWG5014driver has been refactored to useInstrumentChannel
submodules. Per-channel parameters (e.g.amp,offset,state) are now
accessed viaawg.ch1.ampinstead ofawg.ch1_amp, and marker parameters
viaawg.ch1.m1.highinstead ofawg.ch1_m1_high. The old flat attribute
names still work but emit a deprecation warning. The example notebook has been
updated accordingly. #7996 - Keysight 344xxA: Add SCPI mnemonics (
'MIN','MAX','DEF') to allowed values where allowed
Oxford Mercury IPS: Allow setting current ramp rate and target
Oxford Triton: Also assume magnet is not available if there is a communication timeout
Yokagawa GS200 Program: Validate program times on multiples of the internal clock rate of 0.1s
Yokagawa GS200 Program: Only add trigger parameter if monitor option is installed
Yokagawa GS200 Program: Add get parser tocount; allow setting to SCPI mnemonics'MIN','MAX'.
Yokagawa GS200 Program: Addhold(),pause(),cont()methods.
Yokagawa GS200: Add parameters reading out device registers (status_byte,standard_event_register,extended_event_register,condition_register)