improved
SDK Version 1.7.0 Release
over 1 year ago by Derek Gervais
Version 1.7.0 of the Benchling SDK includes support for a number of new features like App Canvas, improvements to existing features like import performance, and some bug fixes related to plates, among other things
What’s changing?
Added
- New endpoint for listing App canvases in
benchling.v2.beta.apps.list_canvases
- Listing assay results now supports a filter for
automation_output_processor_id
inbenchling.assay_results.list
- Listing containers now supports several additional filters including
checkout_assignee_ids_any_of
,restricted_sample_party_ids_all_of
,restricted_sample_party_ids_any_of
,restricted_sample_party_ids_none_of
,restriction_status
,sample_owner_ids_all_of
,sample_owner_ids_any_of
, andsample_owner_ids_none_of
inbenchling.containers.list
Improvements
- There should be a significant performance increase when importing the SDK.
- Example: Using
from benchling_sdk.benchling import Benchling
, many models and internals are now lazily loaded on demand. This should not affect user code unless it’s performing imports relative to other modules in the SDK or otherwise dependent upon specific internal implementations. Please report any abnormal experiences or unexpected behavior.
- Example: Using
- A CanvasBuilder class is in alpha for more easily manipulating app Canvases. This includes operations like easily finding and changing blocks to produce a CanvasUpdate
Fixes
- SDK operations returning Plates should now deserialize to Well in
plate.wells
when appropriate. A previous version of the SDK released with improvements to harden deserialization inadvertently caused wells to deserialize as UnknownType. The API now returns a discriminator to allow this deserialization to happen correctly.
Changes
- The CanvasCreate class in
v2-beta
now requiresapp_id
. This is forwards compatible with an upcoming breaking change to the v2-beta API that will require the app_id (see this changelog post).
When is this happening?
Version 1.6.1 of the Benchling SDK is now live! Find the SDK in PyPI