Changelog for QCoDeS 0.27.0 =========================== The July 2021 release of QCoDeS. ----------------- Breaking Changes: ----------------- - DelegateInstrument takes `parameters` as an optional, keyworded input argument. Any arguments passed as positional arguments after this one will break with this change. (:pr:`3089`) ---- New: ---- - A generalized N-dimensional ``dond`` function has been created to work with sweep objects and measurement parameters. Currently available sweep objects are ``LinSweep`` and ``LogSweep`` that can be used for `dond` measurements. (:pr:`2990`) - The default value for `default_parameter_name` in the Loop QCoDeS dataset changed from ``amplitude`` to ``None``. The ``amplitude`` value interferes with datasets where one of the setpoint arrays is called `amplitude`. (:pr:`3095`) - Abstract parameters has been added which allow one to create abstract instrument types that have parameters which can be overwritten in a subclass allowing the creation of instruments subclasses with a well-defined api. (:pr:`3125`, :pr:`3217`, :pr:`3197`) - ``DataSetProtocol`` created to define the protocol that datasets must implement to be able to act as a storage device for the measurement class. (:pr:`3075`, :pr:`3092`) - Enable exporting complex numbers to netcdf. (:pr:`3126`) --------- Improved: --------- - DelegateInstrument can now support instrument channels. (:pr:`3089`) - Decouple measurement name from dataset results table name to allow special characters in the measurement name. (:pr:`3185`) - Update the get started document with installing and using spyder and jupyter. (:pr:`3179`) - Add ``underlying_instrument`` property to ``_BaseParameter`` and use it in ``call_params_threaded`` instead of ``root_instrument``. (3127) - Ensure that the per array metadata is also exported to dataarrays and not just datasets. (:pr:`3116`) - Use threaded setting from config in doNd functions, and make ``process_params_meas`` public. (:pr:`3096`) - Don't allow metadata tags that are not valid python identifiers (:pr:`3192`) - Pulled out ``dataframe_to_csv`` into it's own submodule ``export_to_csv`` from the ``data_set`` submodule for easier reuse. (:pr:`3061`) ----------------- Improved drivers: ----------------- - Fix to Rohde & Schwarz ZNB driver for setting npts in CW mode. (:pr:`3168`) - Update Keithley 2600 SMU current parameter to be aware of if current compliance is hit during measurement. (:pr:`3160`) - Alazar ATS drivers: Fix buffer size for mode='TS' and buffers_per_acquisition > 1. (:pr:`3118`) - New parameter ``complex_voltage`` has been added to the SR830 lockin amplifier. (:pr:`3078`) --------------- Under the hood: --------------- - Add logging to measurement runs in doNd functions (:pr:`3206`) - Fix to speed up and properly set experiment in delegate device test (:pr:`3199`) - Remove bare wait test due to random failures (:pr:`3198`) - Revert checking of abstract parameters in post init due to unintended side effects (:pr:`3197`) - Use public interface for instrument in parameters (:pr:`3187`) - Fix numpy deprecation for ragged arrays (:pr:`3184`) - Add documentation to explain automatic CI (:pr:`3169`) - Give threads time to start in tests (:pr:`3167`) - Minimum changes to allow type checking to pass with numpy 1.21 (:pr:`3150`) - Add customDimensionsFilter to inject custom dim, and inject pythonExecutable (:pr:`3143`) - Add export info metadata to dataset (:pr:`3135`) - Pin typing packages the same way as other test dependancies do (:pr:`3123`) - Do not preserve gh pages branch history significantly reducing the size of the full clone of the QCoDeS repository (:pr:`3122`) - Add typing packages to conda CI (:pr:`3115`) - Fix link to pyvisa intersphinx (:pr:`3106`) - Compare shapes in ``RunDescriber`` equality method (:pr:`3105`) - Fix invalid array syntax in json schema (:pr:`3097`)