Releases: microsoft/Qcodes
Changelog for QCoDeS 0.6.0
The September 2019 release of QCoDeS
New:
- Improvements to dataset performance. Especially when doing concurrent reads and writes from the db.
The QCoDeS experiment sqlite database is now created in WAL mode. Note that if you perform a manual backup
of a db in wal mode you should also backup any .wal file along with the .db file. See
https://www.sqlite.org/wal.html for additional details. (#1685) - New highlevel
tutorial for beginners <../examples/15_minutes_to_QCoDeS.ipynb>
_. (#1693)
Improved:
- Improvements to API docs. (#1660, #1691, #1702, #1706)
- Notebook Dataset Performance: Correct typos and add figure. (#1683)
- Add logging to measurement runner
__exit__
. (#1695) - Link tutorial to "Getting started", "README". (#1703)
- Don't use deprecated
matplotlib
cbar.get_clim
. (#1724) - Make DataSet.paramspecs always return ParamSpec. (#1720)
- Add
Station.close_all_registered_instruments
. (#1713, #1726) - Station: fail hard when adding an
Instrument
with a name that is already registered. (#1714)
New Instrument drivers:
- Rigol DS1074Z oscilloscope. (#1652)
Improved Drivers:
- Alazar: refactor
AcquisitionInterface
out ofAcquisitionController
. (#1694) - Alazar: Fix reference to method in error message. (#1697)
- Alazar: Simulator. (#1707)
- AMI430: Fix issue with changing field unit. (#1599)
- AMI430 test: fix flakiness from asserting timestamps of Parameters. (#1718)
- Dynacool: Add blocking and non-blocking ramp. (#1586)
- Keysight B1500: Sampling Measurement mode. (#1607)
- Keysight B1500: Show connection message on init. (#1677)
- Keysight B1500: Edit example notebook to set averaging during sampling measurement. (#1696)
- Keysight N6705B: Fix syntax error in parameter. (#1669)
- Keysight B220x: Show connection message on init. (#1677)
- Keysight E8267D: Add missing parameters. (#1705, #1708)
- Lakeshore 325: Add two parameters (resistance, heater_output). (#1711)
- Yokogawa GS200: Exclude/Include snapshot depending on mode. (#1699)
Under the hood:
- Significant improvements to import time of QCoDeS. (#1678)
- Updates to requirements. (#1686, #1690, #1688)
- Use recommended way of running xvfb on Travis. (#1687)
- CI: Link commands in all scripts by their exit code, use mostly 'bash'. (#1712)
- Make test GetLatest stricter about timestamps. (#1719)
- Test using python 3.8 prerelease. (#1722)
Breaking Changes:
- The default config value for
gui.plotlib
has changed from"all"
tonull
. This means the
legacy plot modulesMatPlot
andQtPlot
are no longer imported into the top level qcodes namespace by
default. To restore the original behaviour change your config file locally. capture_dataframe
is no longer available fromqcodes.logger
. To use it import it
fromqcodes.logger.log_analysis
.- Deprecate old QDac driver in favour of QCac_channels driver. (#1578)
- Adding an instrument to the QCoDeS station with an already existing name is now a hard error rather
than falling back to constructing a new unique name.(#1713) - Deprecate
qcodes.utils.helpers.make_unique
as it is unused in QCoDeS. (#1713)
QCoDeS v0.5.2
Changelog for QCoDeS 0.5.2
This is a bug fix release fixing the following issue.
- Use Environment Markers to define python 3.6 only dependencies (#1679)
QCoDeS v0.5.1
QCoDeS v0.5.0
Changelog for QCoDeS 0.5.0
The July 2019 release of QCoDeS
New:
ElapsedTimeParameter
(#1629)load_by_run_spec
enables to load data set given run specifications, including therun_id
(#1637)- Linking runs (#1639)
- allow parameters to be excluded from snapshot (#1653)
Improved:
-
improved docs
-
installed QCoDeS package marked as safe for type checking (#1634)
-
log installation info (#1648)
-
allow for using application insight for telemetry (#1648)
-
use Conda 4.7 (#1635), numpy 1.16.4, matplotlib 3.1 (#1643), sphinx 2.1.2 (#1609), mypy 0.720 (#1640)
-
export data to
.dat
file (#1646)
New Instrument drivers:
- Keysight N6705B (#1657)
Improved Drivers:
- KeithleyS46 (#1622)
add method to check whether channel is closed.
Example:s46.A1.is_closed()
- Tektronix AWG5014 (#1626)
Fixed validators - Spectrum M4i add
exact_sample_rate
parameter (#1654) - Tektronix DPO7200XX (#1656)
measurement statistics, measurement state - Oxford Triton (#893)
Add magnet control - Spectrum m4i (#1528)
fix bug in averaging blockavg - Keysight E8267D (#1655)
fix incorrect use of on_off_mapping
Under the hood:
- Stop redundantly writing to
layouts
anddependencies
(usingrun_description
instead) (#1572) - reorganizing
sqlite_base.py
to facilitate legacy database creation (#1570) - Base Sphinx makefiles on the modern template (#1636)
- Build travis against all branches (#1644)
- Deploy docs using Azure rather than Travis (#1647)
- Docsbuild: remove old files before checking in and use old style message (#1649)
- Change HDF5FormatMetadata to not sort keys in the metadata (#1581)
v0.4.0, June 2019 Release
Changelog for QCoDeS 0.4.0
The June 2019 release of QCoDeS adds final touches to support for complex-valued data, includes under-the-hood improvements, and ships a couple of new instrument drivers as well as improvements to existing instrument drivers.
New & Improved
-
Native support for complex-valued data:
-
QCoDeS Workflow:
- Add
plot_dataset
function to plot given data set without specifying id as inplot_by_id
(#1614)
- Add
-
Instruments
- Fix / snapshot_base
params_to_skip_update
behavior (#1584)
- Fix / snapshot_base
-
Database upgrades:
- DB version 6 - version contents of
run_description
column (#1577)
- DB version 6 - version contents of
-
Old dataset:
- Change
HDF5FormatMetadata
to not sort keys in the metadata (#1581)
- Change
Instrument drivers
-
New Drivers:
-
Improved Drivers:
Miscellaneous
- Documentation: Explicit experiment in notebooks (#1612)
Under the hood
- Use perf_counter, not monotonic for DB flushing (#1498)
- Don't get db location from config if sqlite connection supplied (#1618)
- Don't read from layouts and dependencies tables in QCoDeS (#1572)
- Reorganization of sqlite-facing modules (#1570)
- Reorganization of run descriptions module structure (#1577)
May 2019 release
Changelog for QCoDeS 0.3.0
The May 2019 release of QCoDeS contains a large backend re-structure of the Measurement.DataSaver logic
as well a handful of driver improvements and some new data saving functionalities.
New & Improved
-
New and Improved Drivers:
-
Data Saving Features:
-
Documentation:
- Increase title consistency (#1553)
-
Database upgrades:
- Schema version bumped to 5; snapshot column always present (#1562)
-
QCoDeS Workflow:
- Extend QCoDeS-Station to be configurable through yaml file (#1560)
Breaking Changes
- The DataSet no longer has an
add_parameter
method (#1547)
Miscellaneous
QCoDeS 0.2.1
Changelog for QCoDeS 0.2.1
This release fixes two small issues with execution of tests in 0.2.0 (#1540)
QCoDeS 0.2.0
This release contains large number of driver updates as well as significant improvements to the dataset and
documentation. It also introduces a new Parameter Class (ParameterWithSetpoints) that is intended to replace
ArrayParameter.
New & Improved
-
New and Improved drivers:
-
Alazar cards:
- Alazar 9870 Don't assign to instrument property (#1182)
- Alazar add buffer completed callback (#1234)
- updated/fixed ATS9870 driver (#1290)
- Alazar remove AlazarParameter support (#1184)
- Add firmware version to Alazar get_idn (#1308)
- Add Alazar ATS9373 driver (#1324)
- Add functions to read and write registers on Alazar and Trigger holdoff for 9360 (#1307)
- Alazar add get/set parameter (#1523)
- Alazar: refactor DLL API related things (#1471)
-
Lock-in amplifiers:
- Fix maximum frequency for SRS860 - it is 500 kHz (#1164)
- Standford Research SR860 lock-in amplifier driver improvements and bug fixes (#1160)
- SR86x lockin: get values of many parameters at once (#1245)
- SR830: Add increment/decrement sensitivity functions. (#1380)
- driver / SR830 : add the snap XY command to read X and Y together (#1333)
- Fix SR830's _change_sensitivity function. (#1411)
- Feature/dem 805/implement sampling rate float parameter (#1510)
- Feature/dem 804/implement missing uhfli commands (#1500)
- Driver: ziuhfli - demod{}_harmonic now return int (#1534)
-
Magnets:
- AMI430 driver setting set point despite being outside safe region (#1162)
- Driver/Mercury iPS with VISA (#897)
- driver / add block_during_ramp parameter to AMI430_3D (#1228)
- Fix / driver / mercury ips / firmware 2.6 (#1385)
- Homogeneous coordinates for field vectors in Mercury iPS (#1398)
- Add simultaneous blocking ramp parameters MercuryIPS (#1467)
- Various IPS120 driver improvements (#1402)
- Field Vectors attributes should only be floats (#1458)
-
Multi Meters:
- Keithley 2400 protect read commands (#1171)
- Refactor Keysight 344xxA code and small fixes (#1169)
- Fix keithley 2600 formatting (#1301)
- add driver for keithley6500 (#1233)
- Driver: Keysight 344xxA - flexible measurements and modularization (#1433)
- adds a very basic pyvisa-sim yaml for the Keithley 2600 (#1465)
- Driver/gentec maestro (#1507)
-
Oscilloscopes:
-
Signal and Waveform generators:
- Added support for N5183B Signal Generator (#1153, #1155)
- Refactor awg file handling in awg5014 driver (#1066)
- Rigol dg1062 (#1082)
- Hotfix/awg70000 makeseqxfile (#1213)
- AWG5208: Consider wait for trigger equivalent to running in wait for trigger (#1283)
- fix: N52xx various fixes (#1299)
- Use log instead of print in AWG70000A driver (#1390)
- Driver/awg5014 upload lomentum sequence (#1381)
- Feature/keysight 33xx pulsewidth (#1405)
- Feature/dem 564/driver for zi hdawg8 (#1331)
- feat: add specs for model '33512B' in KeysightAgilent_33XXX (#1422)
- Remove deprecated keysight waveform drivers drivers (#1435)
- Feature/rigol dg1062/adding duty cycle parameter (#1456)
- [DEM-831] Compiler warnings in ZIHDAWG8 should be logged or raised. (#1522)
-
Spectrum and Vector Network Analyzers:
-
Temperature controllers:
-
Others:
- Change loglevel for send/recv in IPInstrument (#1146)
- M4i: bugfix spectrum digitizer driver (#1145)
- Add set_parameter_bounds to IVVI.py (#1128)
- Reorder initialization of IVVI (#1212)
- Add new driver for Newport AG-UC8 (#1230)
- IVVI add missing underscore in parameter name (#1246)
- Fix decadac docstring (#1282)
- Remove all remaining uses of get/set in instrument drivers (#1325)
- Update CryogenicSMS driver (#1346)
- MiniCircuits: wrong USB packet size resulting in error on Windows 7 (#1366)
- Minicircuits USB_SPDT catch the correct error (#1376)
- add M2j driver (#1188)
- Feature/dem 613/update s5i driver (#1392)
- Driver dev/switch matrix (#1373)
- Driver / DynaCool PPMS (#1218)
- Driver/stahl (#1390)
- Driver/keithley s46 (#1409)
- Added driver for Basel current preamplifier. (#1327)
- add option for pretrigger memsize to channel readout (#1461)
- Dev/b2200 switch matrix multiple channel connect (#1480)
- Add boxcar average option to M4i driver (#1509)
- fix bug in averaging of m4i blockavg (#1528)
-
-
Other changes:
-
Config:
-
Dataset:
- Add some minor DataSet conveniences (#1211)
- Make data saver accept numpy type floats/ints (#1225)
- Dataset Context manager. Allow insertion of Data direcly as arrays (#1207)
- Fix requirements of ordering of setpoints as dependencies (#1250)
- Dataset support multiparameter (#1249)
- String-valued parameters support (#1248)
- Ensure that post actions are performed in some context managers (#1289)
- Enhance run table query performance with indices (#1277)
- DataSaver.add_result 'array' before 'numeric' now works (#1306)
- Refactor / dataset init method (#1323, #1332)
- Feature: access snapshot of a DataSet, and docs (also, Station bug fix + tests) (#1322)
- Meaningful exception when loading/creating dataset for non-existing run id (#1328)
- Fix JSON-dumping of snapshots with numpy-typed values (and other) (#1328)
- qcodes.dataset.* fool-proofing and minor fixes (#1334)
- Development/dependencies dsl (#1227)
- Add Subscribers from config (#1365)
- Improvement / dataset metadata (#1382)
- DataSet.get_data bugs with start/end arguments (#1386)
- Add function to fix wrong descriptions (#1396)
- Feature / let database show version without upgrading (#1395)
- Fix bug where atomic and ConnectionPlus might not commit to database (+ fix DataSet.unsubscribe) (+ deprecate DataSet modify_results, modify_result, add_parameter_values) (#1389)
- Feature / database extract runs (#1397)
- Add
get_parameter_data
akaget_columns
(#1400) - Ensure that partial run creation is completly rolled back (#1445)
- Hashable and Immutable ParamSpec (#1367)
- Don't allow connection to db that is newer than the one we support (#1454)
- Dataset: Fixed issue with legacy import (#1459)
- Add Pandas exporter to dataset (#1423, #1508)
- Fix issues with infered_from and add checks for infered_from and depends_on that are strings (#1453)
- Document exporting of data from dataset (#1462)
- Feature: give DataSet an explicit start method (#1482, #1486)
- Rename mark_complete to mark_completed (#1495)
- Cast array params to np array before inserting (#1497)
- Remove redundant reshape (#1499)
- fix: Handle 'inf' in _convert_numeric (#1449)
- Dataset: Fix/do not retrive nulls (#1512)
- Update Offline Plotting Tutorial with kwargs examples (#1516)
-
Documentation:
-
Instruments and Parameters:
- Add option to remove channels from ChannelList (#1045)
- Fix validation of steps (#1176)
- Add paramterScaler with an usage example (#1069)
- Bug: snapshot fails when instantiating InstrumentBase (#1209)
- Find or create an instrument without worrying about existing instances (#1210)
- GroupParameter and Group (for visa commands that set/get more than one parameter at once) (#1232, #1266)
- Make Array validators shape optionally callable (#1312)
- Ensure Parameter name is an identifer (#1326)
- Don't use deprecated add_parameters in tests (#1343)
- Snapshot diff and method chaining (#1363)
- Bugfix: removing a channel instance that was added with
extend
(#1368) - Discourage the use of QCoDeS functions (#1378)
- Extension/dynamic module (#1353)
- Fix unclarity about post_delay/inter_delay of Parameter, remove deprecated get/set delay and get/set step (#1387)
- Use getattr to get ask/write from instruments (#1451)
- New Parameter Class ParameterWithSetpoints (#1263)
- val_mapping creator function to solve on/off/true/false issue (#1413, #1502)
- Add origin to parameter warnings (#1481)
-
Legacy dataset:
-
Logging:
-
Plotting:
- Feature / add label to plot_by_id (#1235)
- Feature / rescale ticks and units in plot_by_id (#1239)
- Smart color scale (#1253, #1255, #1259, #1294)
- Format ticks for non-SI-unit axis in a more readable way (#1243)
- plot_by_id: pass kwargs to subplots and plot function (#1258)
- Fix potential divide_by_zero warning in scale selection (#1261)
- Plot_by_id rasterise 2d plots for large datasets ...
-
Fix of corrupt file in v0.1.10
Changelog for QCoDeS 0.1.11
This release fixes a corrupt file in release 0.1.10
Dataset beta release
Changelog for QCoDeS 0.1.10
This release drops support for python 3.5- and introduces the new dataset in a beta version.
New & Improved
-
New and Improved drivers:
- New Tektronix AWG5208 driver (#977)
- New Alazar ATS9360 driver (#860)
- Triton driver: magnet control added (#893)
- QDac driver: kwargs now correctly forwarded (#962)
- Decadac driver: minor fix (#964)
- Rohde&Schwarz ZNB driver: code cleaned up (#887)
- Spectrum Mi4 driver: awg function improved (#970)
- Keithley driver: resistance added (#974)
- SR860 driver: better snapshot (#1013)
-
New features:
-
Documentation improvements:
- The new dataset is sort of documented (#992)
-
News for devs:
- Mypy checking of the codebase (#824)
Breaking Changes
- The new dataset does not use the
Loop
. A whole new API is offered for performing measurements.