Compatibility Notes
- The version for a measurement plug-in is now specified in the
.serviceconfig
file. If your plug-in specifies version using the constructor of the MeasurementService 'version' parameter and not with a 'version' element in the.serviceconfig
file, the version will be ignored and your service will be registered as version 0.1.0. - Configuration parameters with array types should be treated as
Sequence[T]
orIterable[T]
rather thanList[T]
. You can still index, iterate, slice, etc. but some operations such as concatenating with another list or tuple are not supported. If you need the parameter to be converted to a list or a tuple, you should do that in your measure() function. See this example.
New Measurement Plug-In Client Generator
- Added the client generator, allowing users to call into a measurement service from Python (#841, #854, #856, #870, #871, #872, #874, #880, #882, #883, #889, #891, #892, #900, #901, #902, #920, #921, #934, #938, #947, #951, #952)
Bug Fixes and Minor Changes
- Replaced internal encoders with message encoder calling public API (#767)
- Create a top-level ni-measurement-plugin-sdk meta package (#781)
- Change the generator tool name to ni-measurement-plugin-generator (#798)
- Added check for metadata validation (#807)
- Fix invalid test default values and allow double/float parameters take integers (#832)
- Add enumerate services API (#826)
- Update measurement service to get version from .serviceconfig (#827)
- Update default channel pool options when creating grpc channels (#887)
- Update Plug-in to Plug-In (#898)
- Do not specify version in the MeasurementService constructor (#907)
- Update version checking to warn that version is deprecated and error if there is no .serviceconfig version (#935)
- Add resolve service with information API in the discovery client (#950)
Examples
- Rename TestStand sequences to append _example (#776)
- Add .serviceignore files to the examples (#784)
- Add Plug-in Library installs scripts to the examples (#789)
- Use the tuple with the updated "in_compliance" value (#842)
- Replace strings with the constant variable in NI VISA DMM and Output Voltage (#812)
- Update service class of Game of Life example (#877 #933)
- Don't assume array parameters are implemented as lists (#936)
New Contributors
- @nick-beer made their first contribution in #784
- @jasonmreding made their first contribution in #887
- @rajatkumar87 made their first contribution in #968
Full Changelog: 2.0.0...2.1.0