Qcodes

Latest version: v0.49.0

Safety actively analyzes 682404 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 16

0.36.1

What's Changed
* Add changelog for 0.36.1 by jenshnielsen in https://github.com/QCoDeS/Qcodes/pull/4878
* make it a no op to mark a run completed twice by jenshnielsen in https://github.com/QCoDeS/Qcodes/pull/4876

**Full Changelog**: https://github.com/QCoDeS/Qcodes/compare/v0.36.0...v0.36.1

0.36.0

==========================

Breaking Changes:
-----------------

- The `test_intrument` and `test_intruments` functions are no longer available
from the toplevel qcodes namespace.
If you require these functions they must be imported from
`qcodes.instrument_drivers.test`. (461`)
- The deprecated imports of `Loop`, `Measure` and members of `qcodes.data` in the toplevel QCoDeS namespace has been
removed. (4674)
- Explicitly setting a sample id in the `qcodesrc.json` config file has been deprecated. This feature is
expected to be very lightly used. Please do get in touch if you rely on it. This will eventually
be replaced by a random string. For the same reason `load_by_run_spec` will no longer print
`sample_id` as part of the output when more than one potential match is found.
Note that this is different from the sample_name set as part of an experiment which is still supported. (4763)


Improved:
---------

- The sweeps used by doNd has gained the ability to perform a get call after setting the parameter and storing
that value in the dataset rather than the value set. (4759)
- `plot_dataset` will now correctly wrap long titles into multiple lines. (4770)
- Keithley calibration: adjust calibration date before saving new calibration (4779)
- Visa insturments have gained the ``pyvisa_sim_file`` argument. This allows easier instantiation of
simulated visainstrments in tests (both in QCoDeS and external) as well as use of simulated instruments in
station yaml files. (4790)
- dond functions now return the dataset after `KeyboardInterrupt` or `BreakConditionInterrupt`.
Instead of raising the interrupts, they are now logged as warning. (4801)
- The function ``qcodes.dataset.load_from_netcdf`` now always perservers order of the dependent coordinates
when loading a netcdf file into memory. (4802)
- Add ``rundescriber_from_json`` to dataset public API
for materializing ``RunDescriber`` objects from json strings (4811)
- Add ``RunDescriber``, ``InterDependencies_``, ``ParamSpecTree`` to dataset public API (4816)
- All public methods avilable in ``qcodes.dataset`` that takes a
path to a db or data file now accepts a ``pathlib.Path`` object in addition to a ``str``. (4818)


New:
----

- Add a callback to ``dataset.get_parameter_data``.
This is usefull to track the progress of the data download.
Since sqlite3 does not allow to keep track of the data loading progress,
we compute how many sqlite requests correspond to a certain percentage of
progress which is dictated by a config parameter "callback_percent".
Then we perform x sql request instead of one, running the callback everytime. (4688)

0.35.2

==========================

This is a bugfix to fix an issue where the ``qcodes.utils.helpers`` module had an unexpected dependency
on ``pytest``.

0.35.0

==========================

**NOTE**: this release includes changes from :doc:`0.35.0b1`,
refer to that changelog for details of those changes.

In this release a large refactoring of the QCoDeS modules organization has taken place.
Among other changes the ``instrument`` module has been split into a ``parameters`` and
``instrument`` module, the ``dond`` functions have been moved to the ``dataset`` module
and several methods removed from the public API of the ``utils`` module.

The new API is documented in the :ref:`api` section of the QCoDeS homepage.

Going forward we aim to establish a policy where the QCoDeS public API is defined
by modules explicitly documented in the :ref:`api` and importable from submodules at most
one level deep. I.e. ``from qcodes.instrument import InstrumentChannel`` is supported but
``f`rom qcodes.instrument.channel import InstrumentChannel`` is considered unsupported.

Importing from previously existing locations should continue to work
but it is recommended to update to the new API.
In the future we may deprecate and eventually remove these modules
but no firm date is set for this.

Please report any issues you may see with importing from the previously existing API
or if you depend on any functions, classes etc. not available from the new public API.

This release also includes a significant but still incomplete refactoring of the QCoDeS
instrument drivers in ``qcodes.instrument_drivers``. Many but not all drivers have been updated
to use names that conform to the standard documented
`here <../examples/writing_drivers/Creating-Instrument-Drivers.ipynbNaming-the-Instrument-class>`__
i.e. they use CamelCase as other classes and are named as ``InstrumentvendorModel``
and are importable directly from the instrument vendor module i.e.
``from qcodes.instrument_drivers.AimTTi import AimTTiPL068P`` .
Older names for the classes are still importable from their original places unless explicitly
documented otherwise. In the future we may deprecate and eventually remove the instrument driver classes whos names don't conform to the standard,
but no firm date is set for this.

Breaking Changes:
-----------------

- The standard metadata as defined by pep621 has moved from setup.cfg
to pyproject.toml. This should have no user facing consequences unless
you install qcodes from source using a very old version of pip (<19)
or use unusual pip configurations. (4382)
- :class:`VisaInstrument` no longer calls :meth:`VisaInstrument.set_address` as part of its
initialization. If you customize :meth:`VisaInstrument.set_address` in a subclass you may have
to adapt that class. (:pr:`4397`)
- The deprecated method check_error has been removed from the visa instrument class. (4426)
- The unused attribute shared_kwargs on the ``Instrument`` class has been removed. (4427)
- The following ``InstrumentChannel`` classes have changed name for consistency.
This is expected to be a change with few user facing implications unless you are explicitly
subclassing the mentioned classes.

* ``DG1062Burst`` has changed name to ``RigolDG1062Burst``
* ``DG1062Channel`` has changed name to ``RigolDG1062Channel`` (4538)
- ``DataSet.get_metadata`` method for retrieving a metadata value for a
given tag is now case-sensitive with respect to the tag.
For example, if metadata was added with ``dataset.add_metadata('something', 1)``,
it can only be retrieved by using its exact casing of the tag,
``dataset.get_metadata('something')``, and not e.g.
``dataset.get_metadata('SomeThinG')``. In the previous versions of QCoDeS,
any casing of the tag in ``DataSet.get_metadata`` would work and return the
value stored under that tag. Note that this change brings consistency
with how getting metadata via the ``dataset.metadata`` works:
``dataset.metadata['something']`` does return the value, and
``dataset.metadata['SomeThinG']`` does not. (4658)


Improved:
---------

- ``ChannelTuple`` and ``ChannelList`` has gained the ability to call methods defined on the channels
in the sequence in a way similar to how QCoDeS Functions can be called. (4292)
- ``dond`` has gained the ability to sweep multiple parameters at the same time enabling the creation of more complex
measurements. (4325)
- Improve performance of ``sqlite3`` converters and adapters used to write and read in the database.

Get rid of ``sqlite3.Row`` and irrelevant unpacking to ``list``. (4446)
- Settings of QCoDeS Validators are now available as properties (mostly read-only),
e.g. ``min_value`` and ``max_value`` of the ``Numbers`` validator can now be accessed
via ``numbers_validator_instance.min_value`` and ``numbers_validator_instance.max_value`` (4602)
- Fixed a bug in the QCoDeS JSON encoder that would trigger an infinite recursion for snapshots containing
bytes (bytestrings with a b prefix). (4621)
- InstrumentBase and ParameterBase now call snapshot() on _meta_attrs attributes that inherit from Metadatable. (4655)
- The Dataset no longer prints upgrade progressbars when upgrading an empty database. This means that
the progressbar will no longer be shown when creating a new database. (4969)


Improved Drivers:
-----------------

- A parameter `auto_freq_ref` was added to the `Keysight.N51x1` class.
From the Keysight manual:
This command enables or disables the ability of the signal generator to
automatically select between the internal and an external reference oscillator.

In addition, the val_mapping dictionary of the `rf_output` parameter is now using the `create_on_off_val_mapping` function. (4472)
- Add ``get_idn`` to AMI 430 3D virtual instrument driver so that it does not raise a warning when added to a station (4610)

New:
----

- :class:`InstrumentBase` has a property ``label`` that can host
a human-readable label/title of the instrument.
The label can be set in the __init__. (4460)

0.35.0b1

============================

This is a beta release of the upcoming QCoDeS 0.35.0 release.

In this release a large refactoring of the QCoDeS modules organization has taken place.
Among other changes the `instrument` module has been split into a `parameters` and
`instrument` module, the `dond` functions have been moved to the `dataset` module
and several methods removed from the public API of the `utils` module.

The new API is documented in the :ref:`api` section of the QCoDeS homepage.

Going forward we aim to establish a policy where the QCoDeS public API is defined
by modules explicitly documented in the :ref:`api` and importable from submodules at most
one level deep. I.e. `from qcodes.instrument import InstrumentChannel` is supported but
`from qcodes.instrument.channel import InstrumentChannel` is considered unsupported.

Importing from previously existing locations should continue to work
but it is recommended to update to the new API.
In the future we may deprecate and eventually remove these modules
but no firm date is set for this.

Please report any issues you may see with importing from the previously existing API
or if you depend on any functions, classes etc. not available from the new public API.

Breaking Changes:
-----------------

- Removed deprecated units property from `DataArray`. (4358)
- Removed deprecated ``qcodes.version`` module. Use ``qcodes.__version__`` (4307)

Improved:
---------

- :func:`qcodes.dataset.doNd` now logs more information about how parameters are
unpacked and grouped making it easier to debug. (4288)
- do_nd: save plot with 'tight' bbox to prevent tick marks with long labels
pusing out the axis label out of the canvas window and not visible (4360)
- Significant refactor of internal modules and public API (4357, 4355,
4353, 4351, 4350, 4349, 4348, 4334, 4330,
4326, 4316, 4309, 4307, 4306, 4300, 4294,
4286, 4283, 4275, 4274, 4272, 4266, 4237,
4224, 3972, 4265, 3536)
- Fixed bug in fallback code for Sphinx extension breaking documentation of certain attributes (4223)

New Drivers:
------------

- Add Keithley 2634B model to 2600 driver (4290)


Improved Drivers:
-----------------

- The Keysight N52 series drivers have gained a parameter to control RF output. (4301)
- Improved Keysight N51x1 driver: make frequency option detection compatible with multiple options installed on device. (4342)

0.34.1

==========================

Breaking Changes:
-----------------

- Restrictions on instrument names are now less strict than in ``0.34.0``. Submodules are allowed
to have names that are not valid identifier as long as the full name is an valid identifier. (4257)

Page 4 of 16

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.