Skip to content

Files

Latest commit

 

History

History
2273 lines (1651 loc) · 329 KB

CHANGELOG.md

File metadata and controls

2273 lines (1651 loc) · 329 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

3.21.2 (2020-10-16)

Bug Fixes

  • api: Be fault-tolerant to bad deck cal data (#6803) (43ba721)
  • app: add analytics and support tracking to ignore app update (#6790) (079c2e9)
  • app-shell: ensure robot update download folder exists before caching manifest (#6787) (200b3d5), closes #6786

3.21.1 (2020-10-14)

Features

  • app: allow app update pop-up notifications to be disabled (#6715) (7982d5f), closes #6684
  • components: add primitives-based BaseModal layout component (#6687) (dfa0b0d)

3.21.0 (2020-09-30)

Bug Fixes

  • api: can't inhibit creating Session in build_and_prep if http protocol sessions are enabled because.... THATS HOW PROTOCOL SESSIONS RUN PROTOCOLS (#6345) (b49c2a1)
  • api: Document deck slot deletion (#6260) (b37e23a), closes #6214
  • api: fix Deck.get_slot_center z value (#6435) (ddc8965)
  • api: fix InstrumentContext.home_plunger (#6367) (120d68a)
  • api: limit calibration jogs when going upward (#6565) (5a82384), closes #6562
  • api: Prevent extra pipette movement after homing (#6364) (1ea97c7)
  • api: thermocycler hold_time bug (#6479) (b9d6498)
  • api: typo in should_dodge_thermocycler (#6458) (8e446e1)
  • app: cache robot releases manifest for offline usage (#6494) (5308562), closes #5992
  • app: do not set the user's Intercom name to "Unknown User" (#6468) (66662a4), closes #6461
  • app: Ensure cal check exit button on the title modal only displays if there is no primary exit (#6616) (88bb0a8)
  • app: fix layout of calibration panel complete confirmation button (#6509) (093bddb)
  • app: flip modules on deck map when in slots 3, 6, or 9 (#6383) (d0347da), closes #4422
  • app: make cal commands chain instead of race (#6561) (20f01bc), closes #6535
  • app: make tip length calibration use generic calibration move to tiprack command (#6489) (b5a59e0)
  • app: properly enable/disable robot update from file button (#6483) (a996cdc), closes #5429
  • app: sync robot time with app time on connect (#6501) (66dc626), closes #3872
  • app: temporary fix for chained command race conditions in cal flows to unblock user testing (#6530) (3c17d9e)
  • app, app-shell: use mtime for custom labware date display (#6396) (45f7ec8), closes #6381
  • labware-library: fix test protocol well order bug (#6393) (d6c42bf)
  • protocol-designer: fix dismissing warnings for unsaved step forms (#6503) (1d37f09), closes #6263
  • protocol-designer: fix scroll position of MoreOptionsModal (#6515) (2bf776b), closes #6156
  • protocol-designer: Rename aspirate/dispense delay tip position fields (#6324) (bf4a959), closes #6300
  • robot-server: add inspectingTip state to deck calibration (#6313) (c1fd90a)
  • robot-server: calibraiton flows - fix assert statements (#6529) (a269b0f)
  • robot-server: correct move to deck safety buffer in y (#6478) (a124bb5)
  • robot-server: datetime responses are missing timezone. (#6375) (1a65835), closes #6374
  • robot-server: deck calibration flow clean up (#6430) (986e5d1)
  • robot-server: fix multi channel move in tip length cal (#6319) (898a24b)
  • robot-server: make systemd startup more tolerant (#6397) (86fbc47)
  • robot-server: only import type_extension during type checking (#6462) (b3c844d)
  • robot-server: pip offset: save offset from reference point (#6586) (ef722ba)
  • robot-server: pipette offset - uses z ref height to move to point (#6514) (58116d0), closes #6424
  • robot-server: pipette offset cal - add missing arg to save offset data (#6520) (13c2b27)
  • robot-server: tip length cal - use nozzle height for tip length calculation (#6527) (b87df49)
  • shared-data: fix typos (themocycler->thermocycler) (1689fa8)

Features

  • api: Add all tip handling and tracking functions for the paired instrument context (#6550) (d9cf00e)
  • api: Add pipette pairing to the command log and support in rpc (#6577) (75a7545)
  • api: Add skeleton Pipette pairing context (#6472) (eb030d1)
  • api: adding deep_get utility function (#6338) (f83dc3e)
  • api: Allow pipette pairing for aspirate and dispense functions (#6450) (f1cbe81)
  • api: Lay foundation on the backend to support simultaneous axis movement (#6373) (82e5edf)
  • api: Save new robot calibration in a separate location (#6281) (03c3051)
  • api: Support pipette pairing for pickup and drop tip (#6390) (a3d4d12)
  • api, robot-server: expose pipette offset cal via http (#6563) (ffd3439), closes #6429
  • api,robot-server: Robot server rpc http ff (#6310) (ba0fc92), closes #6305
  • app: add Jupyter Notebook button to robot's Advanced Settings (#6474) (d615d2d), closes #6102
  • app: rename base -> block for TC copy (#6524) (abd6b65), closes #6086
  • protocol designer: remove mix tip position fields (#6590) (eb058a2), closes #6589
  • protocol-designer: account for two air gaps when bumping down multi aspirate to single path (#6477) (897e711), closes #6469
  • protocol-designer: add 3.20 export warning modal (#6436) (70cb5bb), closes #6278
  • protocol-designer: add air gap commands and export protocols as v5 (#6401) (a16351e)
  • protocol-designer: add air gap formToArgs (#6334) (16684e4), closes #6219 #6217
  • protocol-designer: Add defaults for air gap and delay (#6341) (8b9ba81), closes #6058
  • protocol-designer: add delay field to mix form (#6574) (70b5344), closes #6347
  • protocol-designer: add migration for new fields; bump to 5.0.0 (#6357) (3377ff7), closes #6183 #6276
  • protocol-designer: add new air gap / delay announcement (#6414) (2ea012f), closes #6411
  • protocol-designer: add OT_PD_ENABLE_MIX_DELAY feature flag (#6525) (862ab14), closes #6523
  • protocol-designer: adjust disposal volume and path for air gap (#6372) (aa70623), closes #6022
  • protocol-designer: apply delays to aspirates/dispenses in a mix (#6365) (a34e3f4), closes #6306
  • protocol-designer: apply delays to pre-wet (#6380) (516783a), closes #6021
  • protocol-designer: clamp air gap volume when tiprack changes (#6320) (1af3bae), closes #6264
  • protocol-designer: export airgap protocols as v5 (#6433) (a3c960d), closes #6400
  • protocol-designer: implement formToArgs for delays (#6301) (6681cfb), closes #6219
  • protocol-designer: minor copy change for aspirate delay tooltip (#6449) (e00fcc1), closes #6448
  • protocol-designer: remove air gap + delay FF (#6434) (e3906f5), closes #6277
  • protocol-designer: setup Mixpanel and add initial events (#6511) (1959639), closes #6057
  • protocol-designer: update mixFormToArgs with new delay fields (#6575) (ff69de7), closes #6348
  • protocol-designer: update tooltips for air gap + delay (#6404) (89e63b4), closes #6402
  • robot_server: add system/time GET & PUT endpoints (#6403) (c3e5b46)
  • robot-server: Executor for protocol session (#6262) (7b473c1), closes #6192 #6194 #6195 #6196
  • robot-server: Robot server protocol session model (#6371) (973ee18), closes #6225
  • robot-server,app: add download deck calibration button (#6453) (b3b365d), closes #6055

Performance Improvements

  • protocol-designer: strip no-op mixes from robot state generation (#6488) (4885b50), closes #6176

3.20.1 (2020-08-25)

Bug Fixes

  • api, app: Ensure index file exists before reading from it (#6410) (d616d0b), closes #6394

3.20.0 (2020-08-13)

Bug Fixes

  • api: use the hash-with-parent for rpc cal hashes (#6355) (6675154)
  • api: Save v2 labware in api v1 with URIs (#6325) (c6e3688)
  • robot-server: Robot server createParams bug (fa7a35e)
  • app: fix tip probe button in apiV1 protocols (#6318) (3b75f5d)
  • app: fix labware list uniqueing logic for file info page (#6309) (ca85b7e)
  • api: add missing space to runlog entry for set block temperature (#6259) (2c24069), closes #6258
  • api: avoid hitting endstop during retract fast home (#6299) (997e156)
  • api: Clarify what is behind GPIO connection problems (#6204) (5148f96), closes #6164
  • api: Commands log: misleading "rate" for aspirate/dispense (#6189) (74dad72)
  • api: db write optimization (#6033) (a62b833), closes #6029 #5983
  • api: don't stomp other loggers in log config (#6286) (b6d6e18)
  • api: Ensure old calibration index entries are migrated over before displaying data (#6297) (f242c4b)
  • api: fix APIv1 GPIO ctl for cmdline and jupyter protocol execution (#6091) (09b6459), closes #6045
  • api: fix load tip length calibration exception handling (#6206) (e89cda2)
  • api: get_parent_identifier should get parent identifier (#6295) (9ef28a8)
  • api: move TypedDicts to dev_types for type checking only (#6185) (34633f8)
  • api: set parent for in-slot offsets to empty (#6211) (463d56d)
  • api: verify lid target temp has propagated to TC status after set_lid_temperature (#6143) (676f129)
  • api, app: Clear instrument offset before performing deck calibration, don't restart (#6208) (cefa633), closes #5022
  • api, robot-server: remove the deprecated useV1HttpApi config setting and use_fast_api feature flag. (#6082) (83d7c7d), closes #6079
  • app: correctly namespace calibration check command (#6127) (59faac6)
  • app: don't doublecount labware on modules (#6246) (837f153)
  • app: fix calibrate to trough bottom image for multi pipettes (#5974) (dac535f), closes #4734
  • app: fix data reads from JSON Protocols later than v3 (#6284) (f0f7109), closes #6235
  • app: show alert if WS closes or robot becomes unhealthy (#6233) (2cd4fd1)
  • app: simplify discovery state to avoid stale IPs and health data (#6193) (0e089a7), closes #5985 #5250
  • app: update link to support center (#6087) (be05ef9)
  • comp-lib: Update SlotMap prop names (#6124) (392e35c)
  • docs: Remove legacy intercom script (#6298) (7d38504)
  • protocol-designer: fix TC profile step lid label text (#6069) (39ed163), closes #6060
  • protocol-designer: lazy load air gap/delay FF from local storage (#6252) (414dc0b)
  • protocol-designer: new TC steps default to last TC module state (#6090) (1d79fdc), closes #6068
  • protocol-designer: Update TC timeline text alignment (#6202) (98eeec1), closes #6138
  • protocol-designer: Update temperature field min sizing tc state (#6113) (1163a36)
  • robot-server: correct return tip height, only load block when present (#6224) (3bf6b26)
  • robot-server: fix a merge race condition. (#6030) (628049c)
  • robot-server: fix typo in change pipette position (#6083) (67c3332)
  • robot-server: force pydantic to version 1.4 as that is what is on the robot. (#6037) (aa5bcc2)
  • robot-server: Log uncaught exceptions (#6209) (0e1b15b)
  • robot-server: tavern test setup fix (#6025) (7b17c83)
  • robot-server: websockets has a 1mb upload limit. Use wsproto instead. (#6229) (c23e980), closes #6159
  • robot-server, app: fix broken chained commands in tip length cal (#6212) (727ba64)
  • shared-data: do not show calibration block defs in the labware library (#6031) (c248d32)
  • shared-data: fix well bottom shape of nest_96_wellplate_2ml_deep (#6216) (6350511), closes #6171

Features

  • api: Use 10mm/s-equivalent flow rates for GEN2 singles in API Version 2.6 (#6283) (70c54e2), closes #6279 #5968
  • api: add JSON v5 executor and schema (#6239) (17969d6), closes #6228
  • api: ensure stable load_module order in JSON executor (#5995) (c34aa22)
  • api: load tip length calibratioin in v1 (#5936) (598f7e6), closes #5608
  • api: support air gap command in V3+V4 executors (#6003) (4e85f4d)
  • app: Expose Labware Calibration Status on the FileInfo Page (#6100) (2a22f59)
  • components: add primitive btns and fix useHover on disabled buttons (#5972) (57cc219)
  • labware-library: avoid adding info to 'group' field in LC (#5975) (c6f1fa9), closes #5801
  • labware-library: make LC test protocol go to bottom last (#5958) (b1bc683), closes #4625
  • protocol-designer: add air gap command creator (#6179) (db071cb), closes #6053
  • protocol-designer: add air gap form validation (#6226) (46958b3)
  • protocol-designer: add aspirate delay commands (#6290) (08ad8db), closes #6019
  • protocol-designer: add commands for delay after dispense (#6294) (d94bb47), closes #6019
  • protocol-designer: Add delay field validation (#6145) (e26ca78), closes #6008 #6108
  • protocol-designer: add delay form fields (#6085) (eeb56cc)
  • protocol-designer: add FF for air gap + delay (#6048) (5fd5f4d), closes #6005
  • protocol-designer: add form level errors for missing TC block + lid temperatures (da8bb24), closes #6114
  • protocol-designer: add initial step to new tc cycles (#6092) (ee0d583), closes #6064
  • protocol-designer: add move to slot command creator (#6261) (fd45dd7), closes #6221
  • protocol-designer: add moveToWell command creator (#6244) (762a956), closes #6240
  • protocol-designer: add new air gap UI fields (#6190) (c07682f), closes #6005
  • protocol-designer: add profile button tooltips (#6076) (13259ff), closes #6062
  • protocol-designer: add profile step numbers to TC side bar (#6099) (8bd03f8), closes #6059
  • protocol-designer: air gap default value (#6218) (1fb272d), closes #6017
  • protocol-designer: change default lid open state to false (#6129) (6b5acce), closes #6128
  • protocol-designer: do not default select TC state form (#6158) (2444f07), closes #6097
  • protocol-designer: do not display calibration blocks (#6118) (081ac74), closes #6117
  • protocol-designer: offload timeline computation from UI thread (#5917) (7bd381b)
  • protocol-designer: only show one labware name in sidebar tooltip (#6088) (d697b35)
  • protocol-designer: promote thermocycler to full feature (#5921) (9681aca), closes #5889
  • protocol-designer: replace computing overlay with wait cursor (#6150) (e16e05e)
  • protocol-designer: show confirm modal before losing form's unsaved changes (#6040) (e32cc01), closes #5472 #6042
  • protocol-designer: update tc profile button copy (#6094) (7f98f1f), closes #6065
  • protocol-designer: warn before deleting cycle; update confirm modals (#6101) (33ae860), closes #6081 #6096
  • robot-server: Add endpoints to access labware calibration (#5811) (6e24726)
  • robot-server: add started_at and completed_at to command response. (#5940) (b626f67), closes #5828
  • robot-server: protocol manager and api (#6182) (f296bb4), closes #6071
  • robot-server: return created_at in session response (#6011) (f5865be)
  • robot-server: Robot server command namespaces (#6098) (73152e3), closes #6089
  • robot-server: Robot server default session (#5967) (754057b), closes #5768
  • robot-server: Robot server protocol session mockup (#6215) (d137be0), closes #6072
  • robot-server: Session create parameters (#6144) (ee1b504), closes #6149
  • robot-server, api: async hardware initialization after HTTP server starts. (#6116) (b4eb2ca), closes #6109
  • shared-data: add labware definitions for calibration block (#5993) (f56e2f4), closes #5618

3.19.0 (2020-06-29)

Bug Fixes

Features

  • api: add warning when a wrong tiprack is used for the pipette in the protocol (#5997) (24b7756)
  • api: add info to debug warning on how IS_ROBOT is determined (#5783) (fbbf1b6)
  • api: add skeleton state machine instance for tip length calibration (#5805) (dd36d53), closes #5605
  • api: define data architecture for tip length calibration in v2 (#5820) (f149cb6), closes #5606
  • api, app: Check Robot Deck Transform (#5845) (ed67383)
  • api, app: implement automatic door safety stop feature (#5706) (ad94d07), closes #2820 #2752
  • api, docs: add GPIO rail lights and door control to ProtocolContext (#5862) (4d5d89f), closes #5775 #5703
  • app: add network interface collection to system-info (#5764) (7d64efa), closes #5397
  • app: introduce Robot Calibration Check tool (#5960) (bc7d5d5)
  • app, app-shell: add ability to disable discovery cache (#5759) (5ad57d9)
  • components: add position props to primitive components (#5926) (9b0a666)
  • components: add useConditionalConfirm hook to shared components (#5735) (8e5248f)
  • js: update lodash to 4.17.15 (#5788) (5a145dc)
  • labware-library: use loadname not displayname for LC file (#5945) (3869c63), closes #5722
  • labware-library: use slot 2 instead of 3 in LC test protocol (#5950) (fbd1506), closes #5019
  • protocol-designer: add atomic thermocyclerRunProfile command creator (#5843) (e20bbda), closes #5839
  • protocol-designer: Add ending hold state fields to TC profile (#5750) (d388237), closes #5519
  • protocol-designer: add ending hold to TC profile substeps (#5884) (edcfadc), closes #5522
  • protocol-designer: Add number maskers to tc duration fields (#5848) (e7523a8), closes #5737
  • protocol-designer: Add profile step numbers and tooltips (#5819) (4cfc25d), closes #5515
  • protocol-designer: Add profiles settings to TC profile form (#5771) (ce484cb)
  • protocol-designer: Add step grouping and styles for tc cycles (#5836) (f335d77), closes #5516 #5517 #5518
  • protocol-designer: add support for TC cycles (#5809) (5cb55bc), closes #5516 #5517 #5518
  • protocol-designer: add TC announcement modal (#5898) (e5894c5), closes #5887
  • protocol-designer: add TC profile deck visualization (#5896) (47b4329), closes #5523
  • protocol-designer: add TC profile state updater (#5856) (83eff59), closes #5837
  • protocol-designer: Add validation to profile settings and end hold (#5802) (c303e38), closes #5520 #5753
  • protocol-designer: create barebones setup for TC profile steps (#5751) (a2c6ca6)
  • protocol-designer: create barebones TC profile substeps (#5865) (ab29038), closes #5522
  • protocol-designer: disable save for dynamic field errors (#5769) (9a36b87), closes #5737
  • protocol-designer: finish form-level errors for dynamic fields (#5818) (9ca9911), closes #5814
  • protocol-designer: implement form-level errors for dynamic profile fields (#5784) (56588f0), closes #5737
  • protocol-designer: implement formToArgs for TC profile (#5842) (4b3e008), closes #5838
  • protocol-designer: implement thermocyclerProfileStep CC (#5858) (cc3be8e), closes #5835
  • protocol-designer: replace v4 protocol export hint (#5897) (179f638), closes #5888
  • protocol-designer: Reset TC form on form type toggle (#5871) (8192afd), closes #5754
  • protocol-designer: reverse multi channel substep arrows in sidebar (#5931) (ade4cca)
  • protocol-designer: Style dynamic step fields (#5795) (eb950b6), closes #5513
  • protocol-designer: style TC profile substeps (#5876) (615866c), closes #5522
  • robot-server: Add skeleton of tip calibration session including integration test.' (#5868) (c66f8ae)
  • robot-server: Mock up of access control models and router. (#5749) (05348ec), closes #5746
  • robot-server: session manager (#5796) (c1fd7e8), closes #5763 #5765
  • test: add button names to edit pipette, swap pipette, and continue to liquids (#5826) (cc3ba61), closes #5724
  • test: add test id to Pipette Select component (#5791) (845b508), closes #5724

Features

  • api: add info to debug warning on how IS_ROBOT is determined (#5783) (fbbf1b6)
  • api: add skeleton state machine instance for tip length calibration (#5805) (dd36d53), closes #5605
  • api, app: implement automatic door safety stop feature (#5706) (ad94d07), closes #2820 #2752
  • app: add network interface collection to system-info (#5764) (7d64efa), closes #5397
  • app, app-shell: add ability to disable discovery cache (#5759) (5ad57d9)
  • components: add useConditionalConfirm hook to shared components (#5735) (8e5248f)
  • js: update lodash to 4.17.15 (#5788) (5a145dc)
  • protocol-designer: add atomic thermocyclerRunProfile command creator (#5843) (e20bbda), closes #5839
  • protocol-designer: Add ending hold state fields to TC profile (#5750) (d388237), closes #5519
  • protocol-designer: Add profile step numbers and tooltips (#5819) (4cfc25d), closes #5515
  • protocol-designer: Add profiles settings to TC profile form (#5771) (ce484cb)
  • protocol-designer: Add step grouping and styles for tc cycles (#5836) (f335d77), closes #5516 #5517 #5518
  • protocol-designer: add support for TC cycles (#5809) (5cb55bc), closes #5516 #5517 #5518
  • protocol-designer: Add validation to profile settings and end hold (#5802) (c303e38), closes #5520 #5753
  • protocol-designer: create barebones setup for TC profile steps (#5751) (a2c6ca6)
  • protocol-designer: disable save for dynamic field errors (#5769) (9a36b87), closes #5737
  • protocol-designer: finish form-level errors for dynamic fields (#5818) (9ca9911), closes #5814
  • protocol-designer: implement form-level errors for dynamic profile fields (#5784) (56588f0), closes #5737
  • protocol-designer: implement formToArgs for TC profile (#5842) (4b3e008), closes #5838
  • protocol-designer: Style dynamic step fields (#5795) (eb950b6), closes #5513
  • robot-server: Mock up of access control models and router. (#5749) (05348ec), closes #5746
  • robot-server: session manager (#5796) (c1fd7e8), closes #5763 #5765
  • test: add button names to edit pipette, swap pipette, and continue to liquids (#5826) (cc3ba61), closes #5724
  • test: add test id to Pipette Select component (#5791) (845b508), closes #5724

3.18.1 (2020-05-26)

Bug Fixes

  • app: workaround issues with Realtek's website and driver versions (67d6d89)

3.18.0 (2020-05-20)

Bug Fixes

  • api: cal check: terminal drop tips during delete (#5664) (872140e)
  • api: cal check: use plan_arc to blend critical points (#5663) (ed70395)
  • api: cal check: use real trash labware (#5666) (a90f675)
  • api: calcheck: move the slot 5 check point -y (#5667) (11cec65)
  • api: Correctly grab slot from labware object (#5532) (39cd384)
  • api: don't return defaultdicts for labware accessors (#5593) (6b2c9e8)
  • api: make delay wait for existing pause before pausing itself (#5558) (3935adc), closes #4801
  • api: make reading door switch state unblocking (#5658) (4efa400), closes #5536
  • api: Move multi-channel pipettes to the correct location in cal check (#5544) (f29861f)
  • app: tighten filter logic that identifies Realtek U2E adapters (#5707) (ea9a6c4)
  • protocol-designer: fix multichannel well selection bug (#5607) (e20d645)
  • protocol-designer: set lower bound for temp module target temp to 4 degrees (#5644) (9ae81db), closes #5548
  • robot-server: /modules was not returning the right module specific data (9ba54e4)
  • robot-server: Fixup failing tests in robot-server (#5673) (d307e12)
  • robot-server: prevent nmcli connection states from causing a 500 response (e380837), closes #5698
  • robot-server,api: bug in deck calibration (e0c1754), closes #5688

Features

  • api: Add type of deck calibration and remove ability to start the program without pipettes (#5645) (334be7f)
  • api: support thermocycler commands in executor (#5557) (b4ca09e)
  • api, app: add state change information to rpc (#5512) (ca3ef95), closes #5502
  • app: add UI to clear cached robots (#5629) (330acc0), closes #2435
  • app: alert user if Windows U2E driver is out of date (#5656) (02cd054), closes #5493
  • app: collect pipette and module load analytics from protocol runs' (#5675) (11feca3), closes #5540
  • app,robot-server: add support for sessions API (#5628) (441d682)
  • components: add Box primitive to components library (#5665) (73614d0)
  • components: add Flex and Text primitives to components library (#5637) (b1b318e)
  • components: Add ToggleField form component and tests (#5579) (4272cc6)
  • protocol-designer: add 'mini' command creators for TC (#5643) (e6654a8), closes #5598
  • protocol-designer: Add base thermocycler form (#5585) (ec469a4), closes #5566
  • protocol-designer: add custom tiprack on protocol creation (#5489) (485bb7c), closes #4736
  • protocol-designer: add groundwork for 5421 (#5494) (03ba3c4)
  • protocol-designer: Add thermocycler state form (#5615) (51b04e0), closes #5568
  • protocol-designer: Add validation to TC state form (#5659) (7849b5c), closes #5569
  • protocol-designer: confirm when creating a new step when needed (#5634) (7b0cf77)
  • protocol-designer: Implement presaved step form for TC state (#5641) (32b191b), closes #5596
  • protocol-designer: implement TC robot state updaters (#5657) (34ff540), closes #5611
  • protocol-designer: implement thermocyclerFormToArgs for TC State (#5640) (b8d5f11), closes #5597
  • protocol-designer: make steps transient until saved (#5560) (2067b62)
  • protocol-designer: Remove custom tiprack feature flag (#5631) (3e83e78)
  • protocol-designer: removes form level warnings for pause until temperature form (#5655) (5165f07)
  • protocol-designer: set up tc module state (#5636) (e61e731), closes #5609
  • robot-server: session response must contain session_id (#5635) (52313f5)
  • robot-server, api: calibration check fastapi (#5581) (b44360d)
  • robot-server,api: robot-server's fastapi endpoints are now the default (f69f276), closes #5510

3.17.1 (2020-05-06)

Bug Fixes

  • api: fix tempdeck simulate freeze (#5563) (ae2bdcb), closes #5561
  • app-shell: upgrade Electron, avoid hoisting dependencies, and fix devtools (#5545) (f993925), closes #5537 #5541
  • api: Correctly grab slot from labware object (#5534) (8a3850a)
  • api: home only the axis probing after error (#5525) (c0d640c)
  • api: allow protocol delay to be cancelled (#5403) (c0ed09d), closes #5400
  • api: avoid tc lid when pathing (#5390) (4a7fe0b), closes #5263
  • api: Load the correct gantry calibration upon deck calibration exit (#5469) (b03038d)
  • api: verify the structure of v2 protocol ast (#5454) (b45af1e)
  • app: ensure only one RPC connect request can go out at once (#5322) (9465cef), closes #5241 #5307
  • protocol-designer: add field level validation for magnetic module engage height (#5339) (5e2aff6), closes #5274
  • protocol-designer: allow adding labware to slots again (#5378) (e49e162), closes #5370
  • protocol-designer: Default to GEN1 model for TC (#5443) (14c68c8), closes #5389
  • protocol-designer: default to non-i18n step-gen errors if no i18n title (#5360) (644b2db)
  • protocol-designer: fix dnd steps vs labware bug (#5370) (a6f6594), closes #5367
  • protocol-designer: fix module substep text styling (#5306) (61b94ab), closes #5305
  • protocol-designer: Hide CrashInfoBox when module restrictions disabled (#5295) (692f307), closes #5276
  • protocol-designer: Only show slot access warnings for Gen1 modules (#5313) (74d9d64), closes #5309
  • protocol-designer: Remove mm unit from engage height field (#5365) (fc18eea)
  • protocol-designer: rename 'module' variables to something else (#5308) (e5536da), closes #5284
  • protocol-designer: Unify pause step item spacing (#5408) (d75f471), closes #5387
  • protocol-designer: Update TC image proportions (#5442) (0e5f284), closes #5388
  • protocol-designer: updates module slot placement after warning modal is confirmed (#5393) (0adc97e)
  • protocol-designer e2e: Add custom command to close the 3.17 announcement modal (#5355) (77af8ac)
  • robot-server: add robot-server to monorepo's package.json #5433 (705b5cc)
  • robot-server: unavailable is a valid network connection state (#5316) (7438453)

Features

  • api: Add labware required to session status (#5298) (c602cd6)
  • api: Allow move, jog and tip handling for a cal session (#5402) (d5ff537)
  • api: Allow moves to crosses and slot 5 (#5415) (98ca207), closes #5099 #5098
  • api: Allow Non-Full plate Thermocycler Configuration (#5498) (60f6b16)
  • app: guide the user through leveling gen2 multis (#5348) (185d0ad), closes #5344
  • components: add hooks-based tooltip component to library (#5362) (7ef3ca9), closes #5120
  • components: add useHover and useHoverTooltip hooks (#5364) (874d749)
  • protocol-designer: add PD Pause form migration for 3.0.x -> 4.0.0 (#5373) (e3ce552), closes #5371
  • protocol-designer: add warning modal switching mag model (#5329) (2cfe3e1), closes #5251
  • protocol-designer: allow GEN1 multi pipette access N/S of GEN2 modules (#5341) (dc6af21), closes #5331
  • protocol-designer: allow moving empty module under compat labware (#5396) (57ef5ce), closes #5384
  • protocol-designer: allow user to select module model when adding or editing modules (#5284) (8ad1607), closes #5188
  • protocol-designer: Enable magnetic and temperature module support (#5304) (8235e71), closes #4968
  • protocol-designer: hide slot placement tooltip when slot dropdown enabled (#5405) (8a8b757), closes #5385
  • protocol-designer: Implement custom tiprack UI behind flag (#5440) (1fc35fd), closes #5332
  • protocol-designer: preserve engage heights if already default (#5294) (9cac165), closes #5232
  • protocol-designer: Remove multi gen2 feature flag (#5351) (4a2a1fd), closes #5336
  • protocol-designer: remove unnecessary comment (#5379) (12277df)
  • protocol-designer: update export v4 protocol modal copy (#5356) (81489a0)
  • protocol-designer: update intro announcement modal copy (#5345) (20e2a96), closes #5334
  • protocol-designer: update pause until temp modal copy (#5434) (441f30e), closes #5432
  • protocol-designer: use model-specific engageHeight diagram (#5273) (a85f206), closes #5228
  • robot-server: create middleware to support api versioning (#5438) (6fed41a), closes #4633
  • robot-server: make fastapi return v1 style errors (#5404) (906c399), closes #5285
  • robot-server: return correct error format based on endpoint (e6a98ad), closes #5401
  • robot-server: Robot server logging and settings (#5398) (041c313), closes #5013
  • robot-server, api: calibration check overhaul (#5465) (4feeeba)
  • shared-data: add nest_96_wellplate_2ml_deep (#5503) (3002453)

3.17.0 (2020-04-23)

Note: Version bump only for package opentrons

3.17.0-beta.1 (2020-04-14)

Bug Fixes

3.17.0-beta.0 (2020-04-01)

Bug Fixes

  • api: correctly handle magdeck engage kwargs (#5330) (57c0382)
  • api: fix missing arg in v1 move splitting during cache instr models (#5338) (057bea5)
  • api: move splitting: strip step postfix (#5337) (e36217a)
  • api: fix blocking module tasks (#5315) (0f4e2c1), closes #5312
  • api: fix update module firmware (#5317) (63808c2), closes #5314
  • app: alignment and time formatting in thermocycler card (#5320) (3c7fcc8)
  • app: fix tiprack in tip probe instructions when tipracks are shared (#5319) (7d5f4ab), closes #5311
  • api: add ThreadManager.cleanup() calls in test fixtures (#5109) (45f81db)
  • api: Avoid Python 3.8 unsupported str in Enum expression (#5088) (6f399ba)
  • api: call module functions across threads (#5194) (ba1afe2)
  • api: compare smoothie version before hardware controller on boot (#5165) (285211f)
  • api: exec protocol contents in module mode (#5292) (0174ab3), closes #4982 #4981
  • api: fix recent change breaking api server init (#5003) (01fccdf)
  • api: fix server crash due to unresponsive motor controller at boot (#5277) (103e3d1)
  • api: make api coroutine properties sync for polls during pause (#5166) (e9dcd9e)
  • api: make hardware control gantry fns observe execution manager (#5180) (c143bcf)
  • api: make sure we move plunger to bottom after home (#5253) (f298b6e), closes #5164
  • api: properly parse escaped nmcli responses (#5246) (91178f0)
  • api: remove unnecessary pipette movement during mix (#5128) (88e1893), closes #4640
  • api: reset location cache before tip probe (#5269) (53977ec), closes #4793
  • api: return tips to tipracks from the same height as drop tip (#5187) (82187ed), closes #5186
  • api: ThreadManager hides builder exceptions (#5108) (9c50a79)
  • app: accept mixed-case extensions for protocols and custom labware (#5153) (12cce54), closes #5151
  • app: build RPC pipette tip rack list from both containers and instruments (#5147) (2c5fc9f)
  • app: Deck cal: Tell users to attach an Opentrons tip, not a GEB tip. (#5048) (336bb17)
  • app: disable module commands when protocol paused (#5209) (b313c95)
  • protocol-designer: fix bug with selecting magnet > disengage step (#5257) (42e6a65), closes #5247
  • protocol-designer: fix failing action test (#5002) (46f6d3f)
  • protocol-designer: fix tests for FileSidebar after merging #5029 (#5077) (62a4461)
  • protocol-designer: fix typo in deck setup explanation modal (#5104) (5a70562), closes #5102
  • protocol-designer: null out deleted module IDs from step forms (#5017) (5a94de5), closes #4883
  • protocol-designer: removes error when fn cannot find temperature or thermocycler on deck (#4994) (951a3e1), closes #4841
  • protocol-designer: round caption under engage height to match input box (#4993) (f5c2c47), closes #4912
  • protocol-designer: set magnetic module params for both pristine … (#4990) (9b3fef1), closes #4908
  • protocol-designer: Update conditional experimental settings warning text (#4978) (cd3d645), closes #4911
  • protocol-designer: Update SlotMap and CrashInfoBox styles (#4996) (845b465), closes #4989
  • protocol-designer: Update temperature modules disengage text (#5159) (bc9d503), closes #5111
  • robot-server: cannot import log control (#5207) (74191db)
  • robot-server: fix failure in fw_version reading in health endpoint. (#5185) (1944fe6)
  • robot-server: fix typing_extensions bug introduced in json response work (#5281) (dd3a915), closes #5275
  • shared-data: fix typo in v4 protocol schema (#4997) (2483b00)

Features

  • api: Add API calibration check session (#5197) (6fa9346)
  • api: add start set temperature to api (#5179) (cdf0c8a), closes #5176
  • api: add v4 JSON executor (#5221) (e81cb56)
  • api: add wifi disconnect capability (#4957) (67155a8)
  • api: create a centralized hw execution manager (#5138) (af10af2), closes #4871
  • api: Define existing endpoints using FastAPI/Pydantic (#4962) (6ec838f), closes #4917
  • api: invert management of hw control thread (#5078) (b8f543a), closes #4870
  • api: robot server replaces api (#5139) (ab7905d), closes #5049
  • api: robot-server sub project created (#5130) (9671575), closes #5011 #5012
  • api: support gen2 modules (#5039) (fa7a320), closes #4960
  • api: updated images for all modules (#5210) (7e80a5b), closes #4224
  • api: use instrument max achievable height in plan_moves (#5193) (65425da), closes #5156
  • app: add Wi-Fi disconnect to app (#5296) (f6620ee)
  • app: enable gen2 multi pipettes (#5297) (707f0ab), closes #4698
  • app: report PAPI version during protocol analytics events (#5053) (493a2ea), closes #4971
  • app, components: Support gen2 modules (#5177) (3a938ff), closes #4960
  • js: update Formik to v2 (#5190) (b15d360)
  • labware-library: Support more pipettes in custom labware test protocol (#5084), and use opentrons_96_tiprack_20ul instead of 10ul (19dce65)
  • protocol-designer: add border to module tag when hovering over step (#5161) (b04ee69), closes #5110
  • protocol-designer: add modal to add a pause after set temp (#5182) (dbae680), closes #5117
  • protocol-designer: Add module prefix to labware (#5205) (1f979dd), closes #5119
  • protocol-designer: Add V4 export warning modal (#5092) (e63577b), closes #4934
  • protocol-designer: allow custom labware on modules (#5175) (1c4e1b5), closes #4910
  • protocol-designer: allow modules to be placed on compatble labware (#4972) (5abd33f), closes #4726
  • protocol-designer: allow selection of gen 2 modules and use formik (#5265) (71b59ce), closes #5150
  • protocol-designer: allow setting initial settings w env vars (#5268) (ba52ae4)
  • protocol-designer: allow user to bypass typeform modal (#5169) (e7ecaf6), closes #5126
  • protocol-designer: clear out engageHeight (#5254) (2417071), closes #5225
  • protocol-designer: create modal component to show announcements (#5091) (225c12a), closes #4995
  • protocol-designer: disambiguate module model vs type (#5029) (a1f4740), closes #4897
  • protocol-designer: remove warnings and display correct version for gen 2 modules (#5224) (a24a544), closes #5152
  • protocol-designer: reset time fields in pause step (#4950) (4297a54), closes #4949
  • protocol-designer: save v3/v4 files correctly (#5100) (53e8ddf), closes #4919
  • protocol-designer: unify "button row" styles (#5056) (06c74d9)
  • protocol-designer: use different ranges for gen1 vs gen2 engageHeight (#5262) (434ca61), closes #5230
  • robot_server: add missing endpoints to robot_server from api (#5167) (a0b0e50)
  • robot-server: add formatted json responses and error handling (#5208) (25e9298)
  • scripts: python_build_utils supports upcoming api split (#5113) (be46e64)
  • shared-data: correct existing labware defs engageHeight (#5261) (767054d), closes #5226
  • include all vscode configs in gitignore (#5222) (30a4e97)

3.16.1 (2020-02-25)

Bug Fixes

3.16.0 (2020-02-19)

Bug Fixes

  • api: make probe failures raise the actual error (#5015) (bc74517), closes #4980
  • api: swallow hard-halt-related errors and hold lock in session.stop() (#4980) (c42d4dc), closes #4979
  • api: Add back in useProtocolApi2 feature flag (#4665) (5c3fae3)
  • api: amend temperature module old bootloader check (#4942) (dbc90cb)
  • api: apiv2: allow multi to access all 384 wells in transfer (#4678) (975915a), closes #4669
  • api: bug in MalformedProtocolError.str (28a0eca)
  • api: Clarify intended use of "Use older pipette calibrations" flag (#4677) (0f2d7e3)
  • api: detect old bootloaders, fix tc enter bootloader, remove ununused paths (#4935) (cfa5374), closes #4575
  • api: do not pick up returned tips (#4681) (5d358f2), closes #4668
  • api: Ensure position is fully updated after a home (#4915) (00b8d5b)
  • api: Fix simulate file from python shell (#4660) (7fc6bbe)
  • api: more specific errors for bad json protocols (#4967) (885a6f8), closes #4735 #4515
  • api: properly clean up threads in opentrons_simulate, _execute (#4694) (31bd02d)
  • api: restore plunger current before move to bottom after drop tip (#4831) (d07efcb)
  • api: set default move timeout to 12000 instead of 60 (#4768) (6e28b2b), closes #4755
  • api: smoothie driver: Limit high currents to moving axes (#4729) (7e728ea), closes #4714
  • api: split out tc deactivation at driver level (#4624) (ae15a7f)
  • api: typo in Session.turn_off_rail_lights (#4948) (44bf050)
  • api: Use specified port in tools (#4812) (5351183)
  • api: Utilize return tip height from pipette configs (#4828) (b388c4e)
  • app: add spinner to "Save" button in Pipette Settings (#4685) (b8a9aac), closes #4583
  • app: clear lw calibration state if top level home is called (#4703) (8fe7120)
  • app: home all axes after lw calibration to allow deck access (#4687) (6e0ad61), closes #4034
  • protocol-designer: fix warnings not displaying during timeline creation process (#4840) (111f36b), closes #4829
  • protocol-designer: Update magnetic module recommended labware (#4827) (42ec004), closes #4825
  • protocol-designer: Update maskToNumber to allow for negatives and 0 (#4709) (79c7818), closes #4305
  • protocol-designer: when adding new module only update mag steps … (#4839) (ea014fc), closes #4823 #4823

Features

  • api: Add an OpenAPI spec for the HTTP API (#4691) (cb195a5), closes #4635
  • api: add module def schema v2 and v2 defs (#4805) (4018254), closes #4222
  • api: add p10m v1.6 (#4722) (c25c887)
  • api: add perform module fw update endpoint (#4889) (5354eff), closes #4576
  • api: apiv2: add height_from_base arg to MagneticModuleContext.engage() (#4707) (ffaee78), closes #4213
  • api: change attach pipette positions to match leveling blocks (#4888) (b10fe2e), closes #4679
  • api: make modules aware of available fw updates in file system (#4856) (4ede522), closes #4575
  • app: allow custom labware dir to be opened and reset to default (#4918) (03c438a), closes #4878 #4879
  • app: enable module firmware update button when update available (#4923) (1edc587), closes #4575
  • components: Add mini slot map to shared components (#4890) (8b2904c)
  • labware-library: add decks 1 and 7 to labwareTestProtocol before labware test (#4647) (f1e560a)
  • protocol-designer: Add awaitTemperature substep items (#4945) (d576961), closes #4863
  • protocol-designer: Add clarity around engage height (#4921) (8f84e34), closes #4727
  • protocol-designer: add commands for temperature step (#4770) (6aff0e8)
  • protocol-designer: add field and form level validation for pause temperature (#4944) (ec6c1dd), closes #4937
  • protocol-designer: add labware hover highlighting to modules (#4843) (dfe9bda), closes #4696
  • protocol-designer: Add missing labware hint to magnet step (#4592) (a947a14), closes #4303
  • protocol-designer: Add module missing labware hint to temperature step (#4644) (f142e1c), closes #4643
  • protocol-designer: Add module slot placement guidance (#4916) (ae06796), closes #4815
  • protocol-designer: add temperature step form validation (#4593) (f869c4c), closes #4592
  • protocol-designer: allow temperature deck to be updated (#4865) (c392d68), closes #4693
  • protocol-designer: Auto-select module in set temperature form (#4661) (ce9d4ce), closes #4642
  • protocol-designer: Autoselect !previous magnet action (#4662) (d4375dd), closes #4449
  • protocol-designer: change volume label to volume per well (#4645) (f808a59), closes #4015
  • protocol-designer: Conditionally disabled pause until temp (#4885) (d83646d), closes #4867
  • protocol-designer: Hide incompatible labware (#4753) (9d55c56), closes #4728
  • protocol-designer: Hide thermocycler functionality behind flag (#4704) (053d9f0), closes #4695
  • protocol-designer: hook up wait for temp in PD (#4926) (710cffa), closes #4732
  • protocol-designer: hookup magnet step (#4628) (33177a1), closes #4450
  • protocol-designer: Make moduleId field required for temperature step (#4716) (d25b9d4)
  • protocol-designer: Pause until temperature reached (#4745) (fbbcac1), closes #4306
  • protocol-designer: Populate engageHeight field with previous values (#4794) (b68b52d), closes #4764
  • protocol-designer: render substep section in timeline for set temperature step (#4932) (69938be), closes #4862
  • protocol-designer: show magnetic module status in substeps and on deck (#4724) (8b71b4a), closes #4304
  • protocol-designer: use immer in step generation (#4769) (7915393), closes #4697
  • shared-data: add 20uL filter tiprack (#4532) (423da87)
  • shared-data: add new v4 JSON protocol schema (#4846) (bd49812), closes #4836 #4897

Performance Improvements

  • protocol-designer: improve timeline generation performance (#4701) (ee63163)

Reverts

  • protocol-designer: Revert change default exports to named exports (#4938) (49d81c9)

3.15.2 (2019-12-17)

Bug Fixes

  • api: fix cancelling during the pre-protocol home (#4627) (94852cf)
  • api: allow labeling and versioning for module labware (#4605) (d4d66a3)
  • api: allow labels on old magdeck containers in v1 (#4608) (37ab7b8), closes #2310
  • api: apiv1: move instrument in Z-axis prior to touch tip in XY (#4585) (c946d5b)
  • api: do not allow robot.connect() in rpc protocols (#4589) (929baea), closes #4252
  • api: fix homing timeouts (#4554) (31ab73b)
  • api: fix temp connect to attached modules during lw calibration (#4614) (e2848f8), closes #4613
  • api: limit air_gap in transfer to <max volume (#4588) (d7a3b70), closes #364
  • api: make sure the robot is connected before querying instrs (#4611) (286f1ce), closes #4590
  • api: remove unnecessary tip return (#4566) (94df11e)
  • api: special case pause at end of protocol (#4603) (0080d7b), closes #3238
  • api: specify v_offset in v1 transfer touch_tip (#4602) (5605c37), closes #3703
  • api: update settings reset copy to avoid confusion (#4572) (0cf9132), closes #4568
  • app: disable tip probe for unused pipettes (#4584) (9388391), closes #4570
  • app: naïve loading state for tc open lid during lw cal (#4616) (c4a4cdf)
  • labware: "retire" eppendorf tiprack definitions (#4526) (ddc2800), closes #4518
  • protocol-designer: filters out non trash labware for blowout options (#4559) (aaf189d), closes #4348 #4348
  • shared-data: require well(s) in labware schema (#4621) (4dcbff5), closes #4506

Features

3.15.1 (2019-12-09)

Bug Fixes

  • api: shadow the magdeck height in v1 (#4561) (d7b4351)
  • api: Allow Location types for multichannels in transfer (#4555) (6449401)
  • api: always do equivalent v1 factory resets (#4556) (87abf31)

3.15.0 (2019-12-05)

Features

  • app: add simple aggregate event tracking for custom labware (#4544) (b4fd536), closes #4537
  • app: put bundle upload + exec under ff (#4541) (9023d95)
  • app: enable custom labware management in the app (#4525) (e1c9958)
  • api: add extra labware in session (#4490) (27666db)
  • api: add http endpoint for robot settings dump (#4344) (bb91107)
  • api: Add locks on direct data access for mag and temp module (#4501) (17a27c7)
  • api: add the maximum supported protocol api version (#4363) (086723d)
  • api: add volume parameter to thermocycler temperature commands (#4500) (ad3d77f), closes #4264
  • api: apiv2: backcompat: implement LegacyWell position methods (#4448) (222cf37)
  • api: apiv2: implement instruments backcompat (#4458) (ffb2942), closes #3540
  • api: apiv2: Limit protocols to max supported version (#4365) (8decf1a), closes #4342
  • api: apiv2: v1-backcompat: implement module backcompat (#4438) (2a42591), closes #3655
  • api: check papi version on method call (#4399) (493029c), closes #4343
  • api: enable v2 internals by default (#4474) (e25bb55)
  • api: Migrate DB Labware into V2 Format (#4256) (d0c3f4a)
  • api: register module instances on os events (#4441) (89afd64), closes #3580
  • api: surface protocol apiv1 backcompat in apiv2 (#4473) (831e963)
  • api: warn tc-lid/gantry collision in simulation (#4394) (b22a3b3), closes #4044
  • api,shared-data: support p20/300/1k single v2.1 (#4392) (e743d2b), closes #4389
  • app: Display robot and protocol api versions (#4502) (00f333e), closes #4362
  • app: parse subnest out of CIDR-notation IP address (#4372) (ac74c12), closes #4075
  • app,api: allow rich version specification for python protocols (#4358) (b0adef5), closes #4338
  • protocol-designer: add compatibility info to LabwarePreview (#4393) (df9f41d), closes #4135
  • protocol-designer: Add edit modules modal (#4320) (bb71ae8)
  • protocol-designer: Add magnet step form field validation (#4469) (07d7905), closes #4300
  • protocol-designer: Add magnet step UI (#4455) (963288b)
  • protocol-designer: Add module placement warning and validation (#4425) (9034128), closes #4137
  • protocol-designer: add module slot visualization (#4355) (187fae0), closes #4310
  • protocol-designer: add warning when using expt features (#4447) (15fcbd7), closes #4129
  • protocol-designer: blocking hint on adding custom labware to modal (#4383) (f04d67e), closes #4329
  • protocol-designer: Disable module step creation when module missing (#4468) (f2e1a9e), closes #4456
  • protocol-designer: Enable adding and editing modules in file page (#4385) (6d975fd), closes #4317
  • protocol-designer: Enable slot selection for modules when FF enabled (#4347) (31fa641), closes #4133
  • protocol-designer: enforce labware<>module compat (#4427) (4d42156), closes #4136
  • protocol-designer: expose GEN2 pipettes in pipette select (#4351) (6195a2d), closes #4295
  • protocol-designer: fix labware duplication bug (#4429) (a0b321a), closes #4407
  • protocol-designer: hook up module creation in NewFileModal (#4319) (c2dba36)
  • protocol-designer: ignore labware<>module collision error in rogue mode (#4437) (99526ae), closes #4130
  • protocol-designer: labware<>module incompat DnD behavior (#4409) (e7f0334), closes #4136
  • protocol-designer: move deck setup guidance to hint modal (#4463) (ae4e7be), closes #4328
  • protocol-designer: Render crash warning for modules with Gen1 multi pipettes (#4410) (9981193), closes #4373
  • protocol-designer: render modules on deck (#4309) (20514f0)
  • protocol-designer: save/load protocols with modules in prepro PD (#4419) (2b98da2)
  • protocol-designer: show module<>pipette collision error (#4436) (21cbca1), closes #4130
  • protocol-designer: show special-case warning for north/south (#4361) (86912e8), closes #4332
  • protocol-designer: updates to LabwareSelectionModal (#4325) (04d8fea), closes #4323
  • protocol-designer: Wire up modules card with actual data (#4354) (33c5952)
  • protocol-library-kludge: support v2 labware (#4507) (8117289), closes #4505

Bug Fixes

  • api: ensure load name is attached to RPC "containers" (#4530) (4580aa4)
  • api: Fix critical points and gantry config backup in http deck cal (#4527) (cfefab4)
  • api: present loaded but unused pipettes and modules to rpc (#4538) (fe27ef7)
  • api: prevent liquid handling without a tip (#4528) (e1724ab), closes #4219
  • app: consolidate nav state to disable calibrate link on file info page (#4514) (842f15c)
  • shared-data: increase GEN2 pipette plunger & drop tip current (#4523) (e6909b9)
  • api: clear running module tasks on cancel (#4464) (5135da9)
  • api: connect context to real thermocycler during calibration (#4454) (1d40fd6)
  • api: fix bad adv settings crash (#4489) (34fb8e7)
  • api: fix calibration issues in backcompat (#4480) (7153be3)
  • api: flag move to tc with in-between lid as unsafe (#4488) (1741088)
  • api: Suppress error log during check for pipettes (#4374) (b68caac), closes #4096
  • api: tools: fix write_pipette_memory on host (#4434) (f3eef16)
  • api: wrap modules hc instance in async adapter on load (#4492) (99d3a47)
  • api,shared-data: fix gen2 multi positioning (#4412) (54be7f9)
  • APIV2: Make tipracks always calibrate from top (#4418) (bf2cf8c)
  • app: add handling for legacy(location,well,labware) in rpc (#4478) (4528c7a)
  • app: Call correct create method depending on protocol (#4509) (a3ec421), closes #4202
  • app: display robot ip not robot ip subnet base (#4411) (57cdfee), closes #4372
  • app: prevent user from proceeding if uploaded protocol has no steps (#4381) (a8344e9), closes #3121
  • app-shell: improve context menu and log handling (#4472) (de15135), closes #4293
  • app,api: display session error messages in SessionAlert (#4378) (19d3e00), closes #4367
  • docs: v2/writing: 'left' = 'right', use pipette name (662279c)
  • protocol-designer: fix bug in manualIntervention step (#4350) (2648052), closes #4334
  • protocol-designer: fix labware incompat drag warning (#4428) (467c2e4)

Performance Improvements

3.14.1 (2019-11-11)

Note: Version bump only for package opentrons

3.14.0 (2019-10-31)

Bug Fixes

  • api: apiv2: initialize simulator runflag (#4330) (9405695)
  • api: Modify list check to return first item of source and dest (#4331) (4802beb)
  • api: update all pose tree state when calibrating labware (#4322) (24841ab), closes #4288
  • api: Allow Location types in advanced liquid handling functions (#4276) (8f015b8)
  • api: always touch tip before blow out (#4265) (1e54098)
  • api: api1: consider model offset in cli deck cal tip pickup (#4253) (e1963ae), closes #4250
  • api: apiv1: touch tip before blowing out during transfers (#4231) (294aa8f), closes #419
  • api: apiv2: correctly set smoothie speed (#4263) (3e6d26d)
  • api: apiv2: fix air gap in complex commands (#4259) (e4ba931)
  • api: correctly handle mix optional arguments (#4237) (e5fa621)
  • api: Do not throw warning if run flag is set (#4294) (150c784)
  • api: Use proper currents for plunger home (#4167) (b17eaff), closes #3572
  • api,shared-data,labware-creator: do not touch tip on troughs (#4271) (d7e76cd), closes #4258
  • labware-creator: fix radio group touched on change in Mac FF (#4210) (8c89022), closes #4209
  • labware-library: Remove global CSS that's breaking filter link styling (#4239) (11bdec4)
  • protocol-designer: fix copy & link for custom labware (#4232) (1490f65)
  • shared-data: swap X/Y spacing for 24-well nest tuberacks (#4240) (34330ed)

Features

  • api: Allow backwards compatibility with gen2 pipettes in apiv2 (#4326) (4609172)
  • api: reflect original instrument name via rpc (#4312) (8bf0c85)
  • app: allow inexact cross-generational pipette compatibility (#4311) (95dae6a), closes #3598
  • app: allow p1000 gen2 to fallback to specced p1000 gen1 (#4316) (0e33f65), closes #3598
  • shared-data: add "GEN1" to gen 1 pipette display names (#4313) (cbdc814)
  • api: add ability to update TC firmware from robot (#4277)
  • api: Add bundle creation to opentrons_simulate (#4125) (b1d9d66)
  • api: apiv2: add max speed control (#4187) (ed48382)
  • api: apiv2: conditionally enable backcompat (#4234) (806af2c)
  • api: apiv2: implement robot methods backcompat (#4201) (685599f), closes #3539
  • api: deprecate api support for JSON v1/2 (#4155) (61361a8), closes #4128
  • api: implement deck item spanning first pass (#4160) (1b621a4), closes #3107
  • api: Specify if a restart is required after changing some ffs (#4233) (9452ffa)
  • api: v1: Add version specification to labware.load (#4218) (37060ce), closes #4216
  • app: add robot restart alert for FF changes that require restart (#4285) (96408a1)
  • app: Enable GEN2 pipettes (#4297) (f9d2c3b), closes #3601
  • app: improve modules on run tab, enable module temp control for tc and td (#4172) (c11de69), closes #4021
  • app: restrict calibrate and run on incompatible pipettes (#4185) (02fcd4c)
  • labware-creator: add analytics events skeleton (#4168) (3593171)
  • labware-creator: Guide user to labware test (#4153) (4bc00c4), closes #4118
  • labware-library: Add link for LC to LL sidebar (#4154) (4117e8e), closes #4147
  • labware-library: add P20 tip rack image to library (#4280) (63032fb)
  • labware-library: hook up LC analytics and opt-in (#4177) (bad03e1), closes #4115 #4116 #4117
  • protocol-designer: add new actions for module interactions (#4275) (5e9fa80)
  • protocol-designer: add reducers for module placement (#4287) (7973d2a)
  • protocol-designer: Add unrestricted module placement FF (#4289) (4c59d4d), closes #4134
  • protocol-designer: promote custom labware upload to full feature (#4207) (c19634e)
  • shared-data: add NEST labware (#4156) (0d2491d)
  • update-server: add clear all keys endpoint link local (#4182) (5b04918)

3.13.2 (2019-10-10)

Bug Fixes

3.13.1 (2019-10-09)

Bug Fixes

  • api: change trash definitions to avoid y head crash (#4188) (68b6201)

3.13.0 (2019-10-02)

Bug Fixes

  • api: Only load labware for modules from bundles (#4162) (f3eb988)
  • api: Put camera images in tempdirs (#4163) (1411da8), closes #4122
  • api: Do not run out of memory when dumping large logs (#4157) (56354f2)
  • api: Fix sim and exec entrypoints for bundled protocols (#4149) (7163924)
  • api: reflect protocol text over rpc (#4152) (dae2de5)
  • app: fix zip mimetype bug (#4150) (9f4c357)
  • api: apiv2: allow pipette name or model in cache_instruments (#4063) (f29ab14), closes #4062
  • api: apiv2: allow transfer with uneven sources and targets (#4107) (036eca1)
  • api: apiv2: pass correct locations for mix in TransferPlan (#4076) (067098d)
  • api: apiv2: Separate tip overlap per pipette (#4106) (1bac2a9), closes #4103
  • api: cache location before pick up tip during labware calibration (#4033) (8dc8bb9)
  • api: dont parse the smoothie response to udpate_pipette_config (#4112) (109cdcc)
  • api: Expand infer_version_from_metadata to catch more (#4094) (1f7ad77), closes #3949
  • api: fix format string in module slot assertion (#4039) (2a88233)
  • api: Fix miscellaneous bugs in deck CLI (#4119) (7e7196a)
  • api: Fix usage of return tip height v1 (#4040) (3f4ace6)
  • api: Force the permanent mac address for wifi connections (#4121) (7cfa929)
  • app: Disable run start button if missing modules (#3994) (5c75152), closes #2676
  • app: ensure gantry not blocking pcr seal placement (#4071) (01d6858), closes #4034
  • app,labware-library: Upgrade to react-router 5 and fix imports (#4084) (5595f8d)
  • protocol-designer: fix tip position bug with zero (#4079) (be82a73), closes #4057
  • protocol-designer: show form error state in StepItems (#4080) (2aa1556), closes #3678

Features

  • api: apiv1: load magdeck engage height from labware definitions (#4042) (f232659), closes #3832
  • api: apiv2: improve accessors for loaded lw/mods/instrs (#4068) (fc289dd)
  • api: Explicit cmdline and jupyter entrypoints (#4032) (b534096)
  • api: replace format with quirks for rectangular well behavior (#4027) (42deac2), closes #3894
  • api: support experimental bundle execution (#4099) (1c503ed)
  • components, app: add custom pipette select with category support (#3996) (47f0713)
  • labware-library: add Labware Creator (#4031) (0a4aa7c)
  • protocol-designer: avoid use of labware "format" (#4070) (f8603a6), closes #3894
  • protocol-designer: disallow standard labware def upload (#4077) (5670823), closes #4009
  • app: show spinner while robot logs are downloading (#4158) (cd50c42)

3.12.0 (2019-09-13)

Bug Fixes

  • api: check instrument name or type, allow gen2's (#3933) (6c0c49b)
  • api: fix overeager homing during smoothie errors (#3979) (1cc86f3)
  • api: fix tip probing not fully self-centering (#4001) (6d42fc3), closes #3983
  • api: remove protocol file size limit and ack immediately (#4006) (2a82724), closes #3998
  • app: Add tip rack name to tip probe wizard instructions (#3940) (e053008)
  • app: compensate for differences in app and robot clocks (#3875) (a3ee4eb), closes #3872
  • app: Improve tip probe wizard state and error handling (#3959) (b88c73b), closes #3948 #3944 #3943 #2008
  • app: make shell remote check lazier to avoid spurious assertions (#3895) (7aaad6d)
  • app: Remove incorrect data removal warning from change pipette (#3942) (27b315c)
  • app-shell: Update Electron and add macOS app notarization (#4011) (246d6db), closes #3997 #2567
  • docs: Fix OT 1 API link and PDF link (#3993) (921e2cb)
  • labware-library: Fix incorrect tree hydration with query params (f9ba169)
  • shared-data: fix tipOvelap value for P20 tiprack (#3990) (9982ceb)
  • update-server: Fix hash in SSH key upload response message (#3947) (b070205)

Features

  • api: Allow starting tip selection for pipettes (#3935) (e383034)
  • app: display custom labware on deckmap (#3891) (f3ee4b3), closes #3826
  • protocol-designer: add copy with custom labware button (#3991) (edb5d75), closes #3924
  • protocol-designer: allow user to upload custom labware (#3863) (2dfe404)
  • protocol-designer: output minified json (#3999) (44d9a5b), closes #3998
  • protocol-designer: put custom labware upload under feature flag (#3923) (a61dfc2)
  • shared-data: add 24-well NEST tube racks (#3916) (eaa30dc)
  • shared-data: add NEST 96 PCR well plate 100 uL (#3827) (2a9a986)
  • shared-data: add NEST 96 wellplate 200 uL Flat (#3862) (39835e9)
  • shared-data: add NEST conical tuberacks (#3906) (a39c3e7)

3.11.4 (2019-08-29)

Note: Version bump only for package opentrons

3.11.3 (2019-08-28)

Bug Fixes

  • api: do not swallow smoothie errors with certain patterns (#3955) (5c95c59)
  • api: Restore the name, desc of tip probe reset in v1 (#3952) (27a4e95), closes #3950

3.11.2 (2019-08-21)

Bug Fixes

  • app: Fix regression breaking trash removal modal before tip probe (f0d1da3)

3.11.1 (2019-08-21)

Bug Fixes

  • app: Fix paths to BR premigration wheels on Windows (0ff8638)

3.11.0 (2019-08-21)

Bug Fixes

  • shared-data: fix "strict" arg for labware creation (#3874) (bd604e2)
  • api: apiv1: fix transfer volume (#3792) (e3099af)
  • api: apiv2: fix mix, blowout in advanced steps (#3799) (48fc442), closes #3719
  • api: apiv2: fix overaspiration after blowout (#3801) (61e82c3), closes #3797
  • api: Do not publish commands for RPC pause/resume in APIv1 (#3850) (72952ba)
  • api: duplicate mix with blowout during transfer (#3810) (9a70c36), closes #2607
  • api: force nmcli to actively check for connectivity (#3811) (c200de3), closes #3768
  • app: eagerly fetch modules and instruments on robot connect (#3854) (88f5aec), closes #3844
  • app: Remove Electron RPC remote objects from Redux state (#3820) (d5f3fe3)
  • protocol-designer: update typeform version (#3794) (46c6503)

Features

3.10.3 (2019-07-26)

Bug Fixes

  • api: revert: "feat(api): prevent over-aspiration with filter tips in v1 (#3692) (bd0808d)

3.10.2 (2019-07-25)

Bug Fixes

  • api: Allow gen2 reference in protocol without pipette attached (#3760) (e6c0b48)
  • api: apiv1: handle partial db schema changes (#3783) (5d52cd7)
  • api: Save the difference between offsets in labwarev2 cal (#3782)
  • api: apiv2: Correctly handle flow rates and plunger speeds (#3739) (01c0fcb), closes #3737 #3270
  • api: apiv2: Display locs for drop/pickup from implicit locs (#3774) (cf7710f), closes #3364
  • api: apiv2: fix protocol cancel (#3725) (b2b8c46)
  • api: apiv2: simulator should find pipettes by name versus model (#3779) (a0fd72b)
  • api: fix blow out logic (#3764) (fb99bf0)
  • api: Modify delay and motors which are disengaged (#3770) (1eb760c)
  • api: Remove model name check for non-gen2 pipettes (#3761) (263b536)
  • api: Use pip config presses by default (#3778) (8fce1a9)
  • factory_scripts: Remove old func name and refactor IP look-up (#3763) (2847cad)
  • protocol-designer: update various styles to match designs (#3714) (ad0562c), closes #2122

Features

  • api: Make blow out flow rate settable (#3735) (e12b4fd), closes #3733
  • api: prevent over-aspiration with filter tips in v1 (#3692) (487927a)
  • app: add GEN2 images to change pipette (#3734) (1016c16), closes #3630
  • protocol-designer: update migration modal copy (#3709) (e3d1ffa), closes #3696
  • shared-data: add displayCategory to pipetteNameSpecs and schema (#3731) (3b39dea)
  • shared-data: labwareV2: add filter tip racks (#3777) (0dd5285)

3.10.1 (2019-07-19)

Bug Fixes

Features

3.10.0 (2019-07-15)

Bug Fixes

  • api: Account for tip length in deck cal move-to-front (#3495) (01dfaa8)
  • api: Add new biorad def name to engage height list (#3717) (9b8ce91)
  • api: always ensure labware db is up to date (#3713) (e0a5cc1)
  • api: Correct labwarev2 reservoirs on apiv1 (#3706) (397f17e)
  • api: do not handle smoothie alarms from halt() (#3721) (1e72261)
  • api: Fix api v2 deck cal (#3550) (953abad)
  • api: Fix first-boot smoothie updates for apiv2 (#3519) (2c0800d), closes #3501
  • api: Fix gen2 model offsets (#3614) (dd1680a)
  • api: Fix module calibration in API V2 (#3675) (d214c5a)
  • api: increase serial response timeout for thermocycler (#3711) (4018870)
  • api: Make BCRobot fw_version sync again (#3688) (067fe4c)
  • api: Remove usage of time.clock() (#3635) (a9c7237)
  • api: Synchronize access to the smoothie and rpc (#3528) (628c6c4), closes #3527
  • api: unrestrict thermocycler lid at api level for testing (#3705) (f46ad49)
  • api: Use npx shx instead of shx directly (#3524) (29b7c91)
  • app: Add reservior calibration instruction support (#3704) (1464772)
  • app: Do not swallow protocol run errors (#3723) (73d06d8), closes #1828
  • app: Stop long labware names overflowing calibration screens (#3715) (22fd8ad)
  • app-shell: Add missing existence check to FF object (#3638) (3e784c4)
  • app-shell: Clean up main window and DC on app quit (#3622) (d4a5c3e), closes #3482
  • app,pd: Truncate long labware names (#3644) (abe4bc7), closes #3617 #2444
  • components: add remove scroll override prop to Modal (#3671) (2abaea2)
  • components: fix console error with invalid transform (#3624) (47dcbb7)
  • flow: declare node_modules and shared-data defs as untyped (#3577) (befded9)
  • labware: Fix generator well y calculation, update docs/schema (#3697) (31a2963), closes #3602
  • protocol-designer: add "fixed-trash" labware type to v1->v2 shim (#3512) (03f0716)
  • protocol-designer: darken "drag to new slot" text (#3660) (c31a816), closes #3649
  • protocol-designer: fix bug with pipette field change (#3585) (851edf4)
  • protocol-designer: fix bug with protocol title (#3640) (ed6c2a7), closes #3639
  • protocol-designer: fix bug with timeline idx out of range (#3621) (eca6181), closes #3603
  • protocol-designer: fix labware nickname µL capitalization (#3673) (8b596fb)
  • protocol-designer: inner mix in move liquid predictable tip height (#3418) (95feefc), closes #3414
  • protocol-designer: keep edit nickname to one line (#3659) (158c270), closes #3648
  • protocol-designer: left-align labware text in labware selection modal (#3658) (aaa7803), closes #3647
  • protocol-designer: mend and extend scroll to top, fix reorder crash (#3681) (9b4f601), closes #3679
  • protocol-designer: redo disambiguation nums for labware (#3600) (98bd916), closes #2424
  • shared_data: Change deep well name, modify tipracks (#3513) (9c883d5)
  • shared_data: Fix module path in shared data (#3556) (4742458)
  • shared-data: patch some v2 labware from drawings (#3623) (84ecef1), closes #3618
  • shared-data: patch v2 opentrons 15 and 50 mL tube racks (#3712) (66f1200)

Features

3.9.0 (2019-05-29)

Bug Fixes

  • api: Add separate key for new steps per mm shape (#3499) (50bb2a9)
  • api: Don't talk about apiv2 if you can't find a labware (#3435) (d31f1a5)
  • api: Fix default transfer tip behavior (#3486) (4534e6f)
  • api: Handle smoothie update better (#3437) (d2569d8)
  • app: Allow valid pipette+ model names for display images (#3413) (1f77a08)
  • app: Re-enable change pipette and pipette settings (#3475) (2419110)
  • app: Verify attached/protocol pipettes (#3458) (20988b8)
  • protocol-designer: cast offsetFromBottomMm values to number (#3387) (893f83a)
  • protocol-designer: update document title to reflect project status (#3390) (9ea495d)

Features

  • api: Add backwards compatibility to old pipette constructors (#3438) (25cf5fe)
  • api: Add G Code for pipette config in driver (#3388) (77fffa6)
  • api: add pipette plus constructors (#3407) (f4feee9)
  • api: Add pipette v2.0 config (#3394) (f7739b9)
  • api: Add pipette+ to write_pipette_memory (#3405) (1b35ed1)
  • api: Allow loading labware v2 definitions directly into apiv1 (#3466) (a3201fb)
  • api: apiv2: allow returning tips to the tip tracker (#3470) (0c73aa1)
  • api: buildroot: allow separate setting of upstream log level (#3436) (ebc41a4), closes #3422
  • api: Detect and change behavior for buildroot system (#3367) (a439f5b)
  • api: Enable Double Drop Quirk (#3485) (e864150)
  • api: Make pipette quirks configurable (#3463) (3513794)
  • api: support running v3 protocols in APIv1 (#3468) (0ff1ab6), closes #3449
  • app: Enable pipette quirks in pipette config (#3488) (b17f568)
  • components: dynamic props for Labware component (#3408) (ab83662), closes #3328
  • protocol-designer: make "labware views" use new v2 labware components (#3448) (ec6598b)
  • protocol-designer: v2 labware selection from definitions (#3439) (0ae7129), closes #3335 #3291 #3290
  • repo: change v2 labware len/width fields (#3410) (0ef0bd5)
  • shared-data: add layers to deck schema and definitions (#3385) (d84cc35), closes #3325
  • shared-data: add version, schemaVersion, and namespace keys to v2 labware (#3469) (da03025), closes #3454
  • shared-data: deck component from physical data (#3415) (ddf9e78), closes #3326
  • update-server: buildroot: use sd-notify and better hostname (#3416) (e38944c)

3.8.3 (2019-04-30)

Features

3.8.2 (2019-04-23)

Bug Fixes

  • api: Correctly specify jsonschema in setup.py install_requires (#3377) (a79d7ab)
  • api: Do not sleep in simulated delays (#3347) (e12e200), closes #3346
  • api: Remove module load regression in V2 (#3288) (7fe143a)
  • app: Clear deck cal request states on wizard exit (#3378) (408b8aa)
  • app: Disable manual ip double submit on enter keypress (#3376) (81291ca)
  • app: render correct image for vial and tube racks (#3298) (b9e1ebb), closes #3294
  • labware-library: Take cornerOffsetFromSlot into account with render (#3297) (04a1ab8)
  • protocol-designer: fix trough over-aspirate bug (#3280) (c0b0333)
  • shared-data: fix v2 labware definition (#3289) (e652fb7), closes #3271
  • update-server: Create ~/.ssh/authorized_keys if needed (#3351) (c2836bb)
  • update-server: Fix some issues with br update, test, fast flow (#3352) (6e4d2f6)

Features

  • api: Add Geometry Logic For Thermocycler Configurations (#3266) (4d8e463)
  • api: add P10M 1.5 config data (#3365) (1332f63)
  • api: define & execute v3 json protocols (#3312) (988407d), closes #3110
  • api: publish pause and delay commands in python and JSON (#3310) (5656d65), closes #3308
  • api: Set P10M1.5 pick up increment to 3mm (#3374) (f5b63d0)
  • api: validate JSON protocols before executing (#3318) (9c15f7d), closes #3250
  • api: wire up TC deactivate, and add module cmd exec endpoint (#3264) (483122a), closes #2981
  • app: Enable adding manual robot IP addresses in app settings (#3284) (c34fcfa), closes #2741
  • components: use transparent gray for button hover (#3281) (b724151)
  • protocol-designer: show tooltips on disabled fields in Transfer form (#3286) (a9cc612), closes #3259
  • shared-data: update P300M 1.5 pick up current to 0.9 A (#3355) (a2d9024)
  • update-server: add buildroot migration (#3321) (76d6b28), closes #2880 #2881
  • update-server: Add SSH public key management for buildroot (#3339) (ef02433), closes #3320
  • update-server: Set buildroot hostname (#3356) (1addcf7)

Performance Improvements

  • protocol-designer: avoid selector recomputation in step forms (#3292) (41c40c5)
  • protocol-designer: fix selectors used by allSubsteps (#3287) (54dfa53)

3.8.1 (2019-03-29)

Bug Fixes

  • api: Correctly migrate probe center settings (#3246) (84d3b00)
  • api: simulate needs to set loglevel (#3268) (37c00fb)
  • api,shared-data: Lowercase labware names and camelCase categories (#3234) (55e332e), closes #3231
  • app: Fix modules not populating the modules card (#3278) (1fd936d)
  • components: Revert addition of "sideEffects": false (#3236) (4616504)
  • protocol-designer: do not create labware ids if can't create labware (#3255) (916a10c), closes #3254
  • shared-data: Ensure all volumes are µL; remove displayLengthUnits (#3262) (031f2b9), closes #3240
  • shared-data: fix case of 'brand' text (#3258) (3dbe35a)

Features

3.8.0 (2019-03-19)

Bug Fixes

  • api: Access wells in calibration so 1-well containers are ok (#3187) (05ad4b1)
  • api: force update tempdeck target temp cache (#3223) (175461b), closes #3218
  • api: cache modules in singleton for apiV1 protocols (#3219) (058319f), closes #3205
  • api: Clear globals in simulate script thing (#3156) (58ddfb6)
  • api: cli deck cal pipette control and tests (#3222) (0e95e08)
  • api: Fix mistakenly-changed pick up current for p10s1.4 (#3155) (7474752)
  • api: Fix the mount calibration pipette control (#3228) (962b0a7)
  • api: Manually publish to broker in param-mangling commands (#3159) (17e86bf), closes #3105
  • docs: Catch some last api v4 references (#3224) (f1940c6)
  • docs: Fix broken support link in docs (#3230) (95663fe)
  • docs: Fix typo and clarify intro in docs, deploy on edge (#3154) (0e2c994)
  • protocol-designer: fix drop tip offset bug (#3126) (6db63f4), closes #3122 #3123
  • protocol-designer: fix mistake with load file error reporting (#3190) (3f648ad), closes #3172
  • protocol-designer: fix mix disabled fields (#3192) (51846d5), closes #3049
  • protocol-designer: fix move liquid tooltip; remove old unused tooltips (#3147) (c1cc891)
  • protocol-designer: update disposal volume knowledge base link (#3132) (1431cbd), closes #3130
  • shared-data: fix y axis svg value for fixed trash (#3151) (248f3ec)

Features

  • api: Add interruptable poller to Thermocycler driver & API with lid open/close (#3118) (b04add2)
  • api: add pipette config endpoint (#3128) (b6b958b)
  • api: Add set_temperature command to API and driver (#3152) (bde3b1c), closes #2979
  • api: add udev rule for thermocycler board, include rule file in makefile (#3203) (d47fee0), closes #3144
  • app: Enable pipette config modal and form (#3202) (49c1fe9), closes #3112
  • protocol-designer: add 404 redirect page (#3193) (10658b8), closes #3167
  • protocol-designer: add change tip and reasons for disabled path (#3139) (6c3f0f0), closes #3137
  • protocol-designer: add emailListName param to confirmEmail call (#3174) (af40d4b), closes #3166
  • protocol-designer: add favicon (#3176) (0410731), closes #3171
  • protocol-designer: auto-select well of single well labware (#3157) (8424c15), closes #3146
  • protocol-designer: expose current version in settings page (#3135) (ce30ab6), closes #3114
  • protocol-designer: gate entry by user identity (#3153) (1a257b2), closes #3149 #3150
  • protocol-designer: hash favicon (#3184) (153c596)
  • protocol-designer: hide GateModal in dev by default (#3210) (3b01ee8), closes #3189
  • protocol-designer: pd version metadata in code and analytics (#3178) (9319198)
  • protocol-designer: point to staging or prod resources accordingly (#3181) (8a2befc), closes #3180
  • protocol-designer: show info modal when file has been migrated (#3148) (1150068), closes #3057
  • protocol-designer: update title and add beta tag (#3131) (09322d7), closes #3127

3.7.0 (2019-02-19)

Bug Fixes

  • api: Add gpio.set_button_light() to QC tools scripts, so they work with 3.6 changes (#2890) (aca6931)
  • api: api2: Do not do a "safety move" when homing the plunger (#2965) (28edc68)
  • api: Avoid resource contention on smoothie serial during boot (#3035) (3f9a4e3)
  • api: Correctly format acceleration from settings as dict (#2964) (45a49e0)
  • api: Flush and sync config file writes immediately (#2899) (3905e72)
  • api: use twine directly for pypi deploys (ad98402)
  • components: do not convert humanized labware type decimal to space (#3031) (c9aba2f), closes #2766
  • components: remove padding from empty AlertItems (#2891) (7fcd6fb)
  • docs: Fix broken support article link (#2850) (819ba16)
  • protocol-designer: fix bug where 'default-values' shape did not conform to JSON schema (#3032) (6c86496)
  • protocol-designer: fix bug where auto-populated fields aren't pristine (#2884) (e2d2160), closes #2883
  • protocol-designer: fix dropdown font-size for pipettes and tips (#2991) (77ba111)
  • protocol-designer: fix inner mix inside moveLiquid form (#3050) (886bd68), closes #3048
  • protocol-designer: fix liquid placement modal overlay height (#2819) (318ffa3), closes #2203
  • protocol-designer: fix well order modal height; remove unused .labware_field class (#3024) (c4a5f88)
  • protocol-designer: make rename labware set correct key (#2927) (a72822f), closes #2923
  • protocol-designer: migrate old and new step names and descriptions (#2888) (16c1887)
  • protocol-designer: resolve bug where PD failed to save correct labware slots (#2967) (1179d04)
  • protocol-designer: restrict move labware to manual intervention step (#2897) (1fdbcac)
  • protocol-designer: revert changes to source_well / dest_well constants (#2931) (bb630f2)
  • shared-data: add tests to ensure filename matches name/loadName (#2849) (e821079)
  • shared-data: fix irregular labware generator (#2855) (f405c8e)

Features

  • api: Add ability to use papi2 in protocol (#2803) (6bbb83c)
  • api: Add calibrate labware and tip probe with new protocol API (#2846) (3264cff), closes #2719
  • api: Add json protocol execution to new protocol API (#2854) (48bbcb1), closes #2248
  • api: Add set_temperature command to Thermocycler (#3017) (e78238d), closes #2960
  • api: Add skeleton of Thermocycler API class (#3015) (b42f318), closes #2992
  • api: add thermocycler driver connect/disconnect methods (#2996) (6d3e41e), closes #2984
  • api: Allow advanced settings to be null (unset) (#3029) (256d736), closes #3026
  • api: api2: Move multichannel center for certain labwares (#2900) (dfb60a5), closes #2892
  • api: decrease plunger acceleration and add drop tip speed to config (#2904) (dc64b0d)
  • api: Limit config settings to single directory (#3000) (a52e6f0), closes #2970 #2969
  • api: Load and save per-pipette-id config overrides (#3018) (9459010), closes #2936
  • api: pipette config plunger position (#2999) (cbd559a)
  • api: top-level simulate script and entrypoint (#3005) (5969748), closes #2971
  • app: Add robot pipettes, versions, FFs to mixpanel and intercom (#3059) (de4a15f), closes #3009 #3010
  • app: Configure analytics to send Python and JSON protocol info (#2946) (22f419d), closes #2615 #2618
  • app: Enable new app update modal (#3044) (d36071e)
  • app: Replace P10 update warning with one for all pipettes (#3043) (9bd3eb2), closes #3011
  • protocol-designer: add animated path field tooltips (#3004) (3dec97a), closes #2914
  • protocol-designer: add perSource/perDest changeTip options to transfer.js (#2913) (0224a8f)
  • protocol-designer: avoid aspirate/dispense below pipette min volume (#2804) (2430e09), closes #1603
  • protocol-designer: build up the ui for new step form (#2949) (7c3b553)
  • protocol-designer: change pipette<>labware incompatible copy (#2989) (71669b0), closes #2674
  • protocol-designer: disabled distribute's fallback to transfer (#2998) (784c587), closes #2921
  • protocol-designer: drag and drop to move labware, duplicate (#2857) (44e449a)
  • protocol-designer: hook up flexible step to handleFormChange and gen commands! (#2985) (2cad201)
  • protocol-designer: implement form-level field disabling in new form (#2978) (ae72b9f)
  • protocol-designer: implement handleFormChangeMoveLiquid (#2947) (c32d700)
  • protocol-designer: implement moveLiquidFormToArgs (#2908) (147f1cd), closes #2906
  • protocol-designer: improve ux behavior of disposal volume (#3021) (e2b3c48)
  • protocol-designer: migration of mix form and migration tests (#3034) (e18ac3e)
  • protocol-designer: migration version and tcd to flexible steps (#3002) (316643b), closes #2917
  • protocol-designer: new placeholder form for moveLiquid stepType (#2928) (fc133ae)
  • protocol-designer: polish up new transfer form layout and styling (#2983) (b00166b)
  • protocol-designer: separate field processing from casting (#2993) (e1d5aca)
  • protocol-designer: use SelectField for change tip (#3001) (b477f34), closes #2915

Performance Improvements

  • api: New aspiration functions for all pipettes (#3014) (ae850ce), closes #3012
  • protocol-designer: optimize substep components to render less often (#3007) (5b2ed7d)

3.6.5 (2018-12-18)

Bug Fixes

  • api: Fix extract metadata (#2833) (0930915)
  • api: Remove the intermingled old aspirate function from p10s (#2839) (696184c)
  • protocol-designer: ensure pipettes are removed from step forms when nuked (#2813) (46fee8b)

Features

  • protocol-designer: display timeline and form alerts in same fashion (#2817) (e27d2ae), closes #1990

3.6.4 (2018-12-17)

Bug Fixes

  • protocol-designer: fix bug with null distribute step (#2826) (3eecb29)

Features

  • api: Adds optional arg to QC scripts to specify UART port (#2825) (5d622ad)

Performance Improvements

3.6.3 (2018-12-13)

Bug Fixes

  • api: raise p300s droptip pose by 1mm to increase QC yield (#2808) (40759b2)

Features

3.6.2 (2018-12-11)

Bug Fixes

  • api: Do not overwrite settings every time we get config files (#2802) (c679c5c)
  • app: Show main nav notification dot for updatable connected robot (#2801) (6a67c86), closes #2642
  • protocol-designer: finish implementing flow rate in PD (#2782) (fda0920), closes #2773
  • protocol-designer: fix bug where new protocol w 1 pipette deleted fixedTrash (#2797) (2052f49)
  • protocol-designer: fix changeTip once bug in distribute step (#2784) (64111f6), closes #2748
  • protocol-designer: fix distribute aspirate touchtip offset (#2795) (c9a4e3f)
  • protocol-designer: fix missing disposal volume in new distribute forms (#2733) (5657164), closes #2705
  • protocol-designer: fix regression of #2370 (#2791) (8a4f470)
  • protocol-designer: fix swap pipettes button dispatch (#2798) (68c16c2)
  • protocol-designer: fix when add liquid hint is shown (#2787) (eb59fec), closes #2777

Features

  • api: Add metadata to session for Python protocols (#2799) (1da19bb), closes #2616
  • api: p10 behavior feature flag (#2794) (c468b06), closes #2792
  • protocol-designer: allow user to re-enable dismissed hints (#2726) (af52d1e), closes #2652
  • protocol-designer: drag and drop step reordering (#2714) (13d6fe3), closes #2654
  • protocol-designer: enable sharing tip racks between pipettes (#2753) (45db100)
  • protocol-designer: highlight tips per substep (#2716) (eb2c2ce), closes #2537
  • protocol-designer: new protocol modal defaults and visual updates (#2739) (333ad5a), closes #2721
  • protocol-designer: place tipracks on protocol creation (#2750) (a110a8d), closes #1327
  • protocol-designer: remove delay from advanced settings of all step types (#2731) (b26abdd), closes #2579
  • protocol-designer: remove option of tiprack-1000ul-chem from pd (#2745) (3d5f276)
  • protocol-designer: scroll to top of page when step created/selected (#2785) (8d91f8a)
  • protocol-designer: show file created and modified date (#2754) (7fe3f0f), closes #1623
  • protocol-designer: standardize blowout and disposal volume destinations (#2732) (586f045), closes #1989
  • protocol-designer: use pipette min vol as default/recommended disposal volume (#2788) (2276619), closes #2777
  • shared-data: Add more new labware definitions to shared-data (#2703) (9737196)

3.6.1 (2018-12-05)

Bug Fixes

  • api: Fix bad P10S config causing under-aspirations (#2774) (9c5e0a2)
  • protocol-designer: fix missing disposal volume in new distribute forms (#2733) (5657164), closes #2705

Features

  • protocol-designer: allow user to re-enable dismissed hints (#2726) (af52d1e), closes #2652
  • protocol-designer: drag and drop step reordering (#2714) (13d6fe3), closes #2654
  • protocol-designer: highlight tips per substep (#2716) (eb2c2ce), closes #2537
  • protocol-designer: new protocol modal defaults and visual updates (#2739) (333ad5a), closes #2721
  • protocol-designer: place tipracks on protocol creation (#2750) (a110a8d), closes #1327
  • protocol-designer: remove delay from advanced settings of all step types (#2731) (b26abdd), closes #2579
  • protocol-designer: remove option of tiprack-1000ul-chem from pd (#2745) (3d5f276)

3.6.0 (2018-11-29)

Bug Fixes

  • api: Fix the flaky tempdeck test (#2725) (f721163)
  • shared-data: fix total-liquid-volume of opentrons-tuberack-50ml (#2744) (aef8cc8), closes #2743

Features

  • protocol-designer: add tooltip to advanced settings icon (#2727) (0deb6b7), closes #2706
  • protocol-designer: make multichannel substeps collapsed by default (#2729) (b419a72), closes #2678
  • protocol-designer: remove label from 200ul/300ul tiprack image (#2722) (fe5cf6a), closes #2704

3.6.0-beta.1 (2018-11-27)

Bug Fixes

  • api: re-position p1000 droptip/blowout positions (#2681) (f0cf01b)
  • protocol-designer: de-hydrate disposal and blowout labware in st… (#2669) (b6246b2)
  • protocol-designer: well selection modal refresh on step change (#2671) (941916f)

Features

  • api: Add 1.5ml tuberack to old labware definition section (#2679) (2739038)
  • api: Adds pipette models v1.4 to robot config (#2689) (fd9c38a)
  • protocol-designer: allow user to set touch-tip offset (#2691) (d5b7d8a), closes #2540
  • protocol-designer: disambiguate left/right pipette names when they match (#2698) (2f43a0e), closes #2078
  • protocol-designer: disconnect well selection modal from hovered step state (#2662) (973a8a5), closes #2558
  • protocol-designer: liquid placement modal performance boost (#2661) (ecc8569), closes #2557
  • protocol-designer: make settings tab always active (#2700) (036e2ee), closes #2697
  • protocol-designer: use tip max vol, not pipette max vol (#2656) (418665d), closes #2160

Performance Improvements

  • api: Decrease plunger motor max speed by 20% (#2682) (f8b7ccf)

3.6.0-beta.0 (2018-11-13)

Bug Fixes

  • api: Correct well ordering for custom labware (#2633) (8e7530c), closes #2631
  • api: Fix bug where drop-tip current is not used while actually dropping tip (#2572) (d7c7f60)
  • protocol-designer: add vertical spacing back to form fields (#2644) (c7173da), closes #2580 #2597
  • protocol-designer: fix sidebar for liquid placement modal (#2649) (8da2f7d)

Features

3.5.1 (2018-10-26)

Bug Fixes

  • api: Correct GET /wifi/keys response to match documentation (#2532) (9e577b2)
  • app: Show the correct release notes for robot update (#2560) (7b0279c)

3.5.0 (2018-10-25)

Bug Fixes

  • api: Correct GET /wifi/keys response to match documentation (#2532) (9e577b2)
  • api: Fix height of p1000 tip rack definition (#2547) (8a92e82)
  • api: Make the Makefile have more real prerequisites/targets (#2510) (1eb207a)
  • api: Write .env with absolute path for conf on make install (#2500) (ec469ed), closes #2495
  • protocol-designer: close liquid placement form when clear wells is clicked (#2533) (e0727e6), closes #2528
  • protocol-designer: do not add air on blowout (#2545) (b35cfa9), closes #2498
  • protocol-designer: fix LiquidPlacementForm onBlur typo (#2546) (c6a9f38)
  • protocol-designer: fix localization refactor mistakes (#2499) (4ef34f2)
  • repo: increase flow merge timeout (#2514) (b1ba303)
  • shared-data: Fix corner offset from slot logic; add in container offset to well coordinates (#2519) (c79684b)

Features

  • api: Add ability to save new delta from calibrating labware (#2503) (a6e3a24)
  • api: Add error checking on generated labware def (#2476) (242ffe4)
  • api: Clear labware calibrations in new labware system (#2513) (cb3d12e), closes #2276
  • api: Use deck-absolute coords in hardware_control (#2502) (36c9f73), closes #2238
  • app: Show all labware of same type as confirmed (#2525) (ab8fdd9), closes #2523
  • protocol-designer: add tooltip for labware name/type on steplist (#2497) (4890374), closes #2421
  • protocol-designer: allow user to delete entire liquid groups (#2524) (dce806b), closes #2437
  • protocol-designer: continue to liquids not design page (#2539) (49da7b1), closes #2534
  • protocol-designer: implement "clear wells" button (#2528) (145977f), closes #2430
  • protocol-designer: liquid tooltips on well selection, popper and portal (#2521) (12d8adb), closes #2487
  • protocol-designer: replace liquid placement form (#2518) (3a6b06f), closes #2429
  • protocol-designer: use formik for liquid edit form (#2512) (3e7456f), closes #2460

3.5.0-beta.1 (2018-10-16)

Bug Fixes

  • api: Filter out missing SSIDs from network list (#2493) (82584bd), closes #2489
  • api: Fix docs build failure after move to legacy_api (#2469) (cbe686a), closes #2468
  • app: Check semver validity of API returned version strings (#2492) (d9a48bf)
  • protocol-designer: unhighlight wells on deselect in well selection modal (#2491) (5dfbf25), closes #2463
  • repo: fix gitattributes hex crlf bug (#2482) (c01f6c4)

Features

  • api: Add /networking/status endpoint to get all interface info (#2471) (7555e26), closes #2445
  • api: Add labware load to protocol API (#2472) (bae6ef6), closes #2240
  • api: Add newly formatted labware defs and update labware schema (#2457) (690c0f2)
  • api: Store pipette function params as data (#2466) (4e557dd)
  • app: Move deck calibration to robot controls (#2470) (b6ef29c), closes #2377
  • components: Add wifi connectivity icons (#2473) (6baf532)
  • protocol-designer: add tooltips on hover of final result wells (#2479) (73d2bf3), closes #2409
  • protocol-designer: create view to browse final liquid state (#2451) (5a436c3), closes #2335
  • protocol-designer: implement liquids page interactivity (#2478) (7e85673), closes #2427
  • protocol-designer: implement rounding properly (#2458) (6ef6bf0), closes #2405

3.5.0-beta.0 (2018-10-11)

Bug Fixes

  • api: Bind jupyter notebook to 0.0.0.0 (#2398) (be24335), closes #2394
  • api: Change api update ignore route to be accessible to client (#2368) (b581f2a), closes #2367
  • api: Remove unnecessary return in hardware controller (#2450) (5e28aff)
  • app: Allow portal to re-check for root element (#2440) (5930a34)
  • app: Use type for labware table, not name (#2441) (cf91003), closes #2407
  • discovery-client: Ensure IPs are actually de-duped (#2404) (928dcab)
  • discovery-client: Monkeypatch uncatchable throw from mdns-js (#2433) (c177f87)
  • protocol-designer: fix tiprack diagram only displaying right (#2340) (3d4d57b)
  • protocol-designer: tweak analytics copy for accuracy (#2366) (b3f4b45)

Features

  • api: Add a displayName field to EAP types in /wifi/eap-options (#2448) (1232448), closes #2439
  • api: Add accessor functions in new labware class (#2418) (d963cfc)
  • api: Add function for p1000 ul-to-millimeter conversions (#2425) (4a26340)
  • api: add hardware control move_to(), move_rel() (#2389) (c14ca14), closes #2234
  • api: Add hardware_control submodule (#2349) (ea25b15), closes #2232
  • api: add instrument cache to hardware control (#2402) (bcc7040), closes #2236
  • api: add module firmware update endpoint (#2173) (19f9a0d), closes #1654
  • api: Add new protocol API stubs (#2375) (82d28c5), closes #2233
  • api: Add skeleton of new Labware class (#2363) (3488612), closes #2261
  • api: Add top, bottom, and center methods to Well (#2379) (9ef7dd1), closes #2369
  • api: change tempdeck temperature resolution,fix temp in docs (#2359) (343e845), closes #2358
  • app: Add release notes to robot update modals (#2397) (f5e5fd9), closes #2353
  • app: Add upgrade and downgrade logic to robot updates (#2376) (d44386a)
  • app: Display reachable but non-connectable robots (#2455) (8785ea8), closes #2345
  • app: Display unreachable robots in list (#2434) (9b47f2d), closes #2344
  • app: Only display instrument settings for selected robot (#2406) (9150e21), closes #2362
  • app: Prompt user to update app in robot update modal (#2386) (c389750), closes #2354
  • app: Remove 'opentrons-' prefix in robot displayNames (#2459) (06f158a), closes #2357
  • components: change default border width to 1px (#2385) (1fbb749)
  • components: create new tab-styled vertical nav bar (#2371) (0202b53), closes #1923
  • discovery-client: Add mdns flag and health responses to services (#2420) (0c06d32)
  • labware-designer: set up labware-designer skeleton for use in browser console (#2392) (85fadd0)
  • protocol-designer: add "app build date" field to PD saved files (#2350) (d2bf281)
  • protocol-designer: add liquids tab and sidebar (#2454) (0aedda6), closes #2426
  • protocol-designer: implement "metadata.created" in JSON file (#2403) (a9c3d07), closes #2189
  • protocol-designer: implement selective redux persistence (#2436) (6591104)
  • protocol-designer: modify the "name new labware" overlay for new design (#2422) (4934c47), closes #2410
  • protocol-designer: refactor and performance audit of labware components (#2442) (09f4eb3), closes #2285
  • protocol-designer: show hints as modal (#2447) (9a3509f)
  • shared-data: Add generator function to create regular labware defs (#2380) (bc81574)

Performance Improvements

  • app: Upgrade Electron to v3 and remove Node in renderer (#2374) (778b9af)

3.4.0 (2018-09-21)

Bug Fixes

  • api: Patch resources/scripts to always be executable (#2314) (7db14bc), closes #2313
  • api: Update definitions for tuberacks (#2317) (4ce2595), closes #2290
  • api: Update the aluminum block definitions to match drawings (#2342) (4c1e4c2), closes #2292
  • api: When reseting the robot singleton, clear added tips (#2323) (710e2d6)
  • app: Fix robot list scroll clipping (#2288) (28556ef), closes #2046
  • app: Open external links in browser instead of app window (#2327) (5bf5d5f)
  • app: Prevent keypresses from changing jog jump size (#2315) (1b32d6d)
  • app: Wrap runscreen modals in portal (#2308) (aefad0a)
  • protocol-designer: close tooltips and step creation button (#2326) (f99445b)
  • protocol-designer: correct alignment of form fields (#2281) (419c55a), closes #2196
  • protocol-designer: fix bug with well access for rect wells (#2296) (309a8bf), closes #2081
  • protocol-designer: fix recurring deleted labware bug (#2299) (ebb44e1)
  • protocol-designer: fix whitescreen on deleting blowout labware (#2341) (44196c6)

Features

3.4.0-beta.0 (2018-09-14)

Bug Fixes

  • api: Do not bind the api server to localhost if socket specd (#2258) (d534c6f), closes #2256
  • api: Fix pipette volume params and revert change in param order (#2255) (55d2cd5)
  • api: throw early error on bad json delay cmd (#2219) (3d907d1)
  • discovery-client: Fix health state latching regression (#2280) (9176758)
  • protocol-designer: correctly null out blowout if unchecked in form (#2226) (6179b18)

Features

  • api: Add new container defs to shared data (#2225) (20e2751)
  • api: Add wifi key upload endpoints (#2254) (250101c), closes #2253
  • api: Added min and max volume keywords to pipette constructors (#2084) (f68da5a), closes #2075
  • app: Add protocol file info page (#2221) (e861365)
  • app: Parse JSON protocols into state (#2231) (b5f3666)
  • app: Populate FileInfo page with JSON protocol metadata (#2278) (995038a), closes #2129
  • discovery-client: Add /server/update/health check to poller (#2206) (d08a87d)
  • protocol-designer: add ux analytics with opt in settings and modal (#2177) (4a8ebbe), closes #2119 #2172
  • protocol-designer: allow tenths of µl pipette volumes (#2222) (827f3ee), closes #2120
  • protocol-designer: auto dismiss no liquid hint (#2220) (d2982e1)
  • protocol-designer: replace 200µl tiprack with 300µl tiprack (#2223) (8a8fc0f), closes #1955
  • protocol-designer: warn changes will be lost on import/create (#2168) (0a5a071)
  • protocol-library-kludge: set up OT2 deckmap mini-app kludge (#2210) (e4cf249), closes #2145
  • protocol-library-kludge: support modules and nicknames (#2224) (15a3790)

3.3.1-beta.0 (2018-09-10)

Bug Fixes

  • api: delete pipette-config.json (#2166) (034edc7)
  • api: Delete the labware database journal on reset (#2098) (0579fb5)
  • api: Fix container definitions of biorad PCR and 10ul tiprack (#2191) (b261dfa)
  • api: opentrons.nmcli security types should be nmcli key-mgmt (#2190) (4873dc4), closes #2178
  • app: Grab intercom handler from window on every call (#2179) (a90aaae)
  • protocol-designer: change copy for excessive aspirate warning (#2214) (de1b714), closes #2213
  • shared-data: fix tube-rack-15_50ml labware def (#2063) (b32df5e)

Features

  • api: Add container definitions for opentrons alumnium block set (#2205) (107d6b0)
  • api: Add definitions for the modular tuberack (#2167) (be902f6)
  • api: add engage custom height and offset params (#2171) (4b1f8bd), closes #2155
  • api: Add hidden ssid wifi support (#2193) (ffc702f)
  • api: Add net config info to /wifi/status (#2188) (cb51b86)
  • api: support flow rate (uL/sec) in JSON protocols (#2123) (b0f944e)
  • app: Add attached pipette info to intercom support (#2140) (b06e845), closes #2019
  • protocol-designer: add tooltips for advanced settings (#2170) (af09a4b), closes #1981
  • protocol-designer: add tooltips for step creation button (#2163) (e34e636), closes #1979
  • protocol-designer: default form fields from old protocols (#2162) (54585e6)
  • protocol-designer: flow rate field more dependent on pipette (#2154) (ac778ea)
  • protocol-designer: implement ui for flow rate (#2149) (e0e25c1)
  • protocol-designer: restyle selected TitledList carat hover (#2165) (48c488a), closes #1977
  • protocol-designer: support mm from bottom offset in JSON protocols (#2180) (db22ae8), closes #2157

3.3.0 (2018-08-22)

Bug Fixes

  • api: change udev rule to include multiple modules (#1995) (91ffc7e)
  • api: Fix /server/restart failing in api-server-lib (#2104) (5220b4f)
  • app: Fix copy typos in update error modal (#2027) (37795ce)
  • protocol-designer: fix serialized name in ingred list (#2002) (d19d29b), closes #1294
  • protocol-designer: tweak timeline alert copy (#2086) (5108f21)
  • update-server: Fix issues with 3.2 api on 3.3 system (#2097) (bad6e3a)
  • update-server: Set the cwd to the venv when running an otupdate selftest (#2070) (bd9502a)

Features

3.3.0-beta.1 (2018-08-02)

Bug Fixes

  • api: check virtual smoothie before copying udev file on server start (#1960) (9a31f3d)
  • api: Fix pipette.delay() so it does not sleep during protocol simulation (#1902) (f63bdba)
  • api: Fix the database migration script geometry logic (#1959) (7ae9756)
  • api: Home Z axes before run to guarantee that pipettes will be retracted (#1914) (7252a73)
  • api: support touch-tip for JSON protocols (#2000) (43125b7), closes #1997
  • app: Check if modulesRequired when displaying review modals (#1940) (14a54a5)
  • docker: Switch out dumb-init, add modules tools & udev config (#1952) (caac645), closes #1822
  • protocol-designer: fix bug where tips not dropped at end of protocol (#1911) (945ff6a), closes #969
  • protocol-designer: fix destination well pills in substeps (#1896) (60481b5), closes #1812
  • protocol-designer: fix file load bug w mismatched pipette ids (#1918) (9ec52d1)
  • protocol-designer: fix styling of pause and mix step items (#1948) (16c2a30), closes #1947
  • protocol-designer: fix substeps for consolidate using inner mix (#1921) (e59cc7e), closes #1919
  • protocol-designer: make well selection modal show pipette display name (#1907) (07ad9ff), closes #1888
  • protocol-designer: Only show deck setup prompt text when selected (#1894) (32656ef)

Features

  • api: Add "modules" field to RPC (#1890) (f80ad18), closes #1733
  • api: Add clear method to RPC SessionManager (#1969) (8228e6d)
  • api: Add endpoints to get robot logs (#1928) (9224719)
  • api: add magdeck api object (#1925) (b016eec), closes #1889 #1887 #1886 #1645
  • api: Add tempdeck api object (#1962) (cb7f107), closes #1965 #1648 #1649
  • api: Brings back the shake after drop-tip (#1871) (304c71d)
  • app: Add and implement module selectors in calibration (#1895) (2cf1b4d)
  • app: Add continuous polling to modules during run (#1961) (5f7d6f4)
  • app: Add deck map to module review modal (#1910) (f2e63e3), closes #1737
  • app: Add realtime status TempDeck card to run panel (#1932) (75c8df4), closes #1740
  • app: Add support for modules to RPC API client (#1891) (331305f)
  • app: Render calibrate to bottom instructions when enabled (#1865) (c427599)
  • app: Show connect modules modal when session modules detected (#1897) (8306130), closes #1738
  • app: Show module name over labware on deckmaps (#1913) (c40905b), closes #1739
  • app: Show modules on review and calibration deckmaps (#1898) (5917a2b)
  • app: Wire modules card to API calls (and keep stubbed response) (#1860) (a30912f)
  • comp: Add IntervalWrapper to interaction enhancers (#1942) (21e1869)
  • components: implement hover tooltip and include react popper (#1855) (c44e0eb), closes #921
  • components: restyle field caption (#1991) (910b510), closes #1936
  • compute: Use IPv4 link-local ethernet networking (#1970) (094ca28)
  • protocol-designer: add continue to design button to file data page (#1876) (cd8ea5e), closes #1782
  • protocol-designer: add help link to PD nav (#1945) (1525cf5), closes #1941
  • protocol-designer: add max volume to ingred selection modal volume field (#1993) (807c289), closes #1835
  • protocol-designer: alert user of unsaved changes to protocol (#1856) (e195363), closes #1602
  • protocol-designer: auto fill well volume field if inferrable (#1870) (ab5a40e), closes #1668
  • protocol-designer: change copy for pipette missing tip error (#1915) (cd8b920), closes #1815 #1880 #1815
  • protocol-designer: change copy ingredients -> liquid (#1905) (9f9b989), closes #1864
  • protocol-designer: deactivate non-beta step settings, add tooltip (#1875) (267b5b3), closes #1873
  • protocol-designer: enable user to swap pipette mounts (#1883) (d5e40cd), closes #1536
  • protocol-designer: implement move labware in place of copy (#1938) (c51ce66), closes #1908
  • protocol-designer: make form warnings & errors match TimelineAlerts (#1924) (c355be8), closes #1882
  • protocol-designer: make pipettes eagerly drop tips (#1946) (9fb0725), closes #1706
  • protocol-designer: make WellSelectionInput label change for multi-channel pipette (#1927) (7df3c29), closes #1537
  • protocol-designer: re-order and restyle file sidebar buttons (#1926) (4ae1f5b), closes #1784
  • protocol-designer: refactor and restyle LabwareSelectionModal (#1929) (7c9891e)
  • protocol-designer: refactor and restyle timeline terminal items (#1967) (a2421fd), closes #1706 #1930 #1974
  • protocol-designer: remove disposal volume field from all but distribute (#1868) (7d98355), closes #1867
  • protocol-designer: restyle labware hover buttons (#1916) (799d1b1), closes #1519
  • protocol-designer: save version in PD file with git-describe (#1987) (7040727)
  • protocol-designer: show no pipette on mount in file details (#1917) (74e077c), closes #1909 #1783
  • protocol-designer: support tiprack-to-pipette assignment (#1866) (6a4f19d), closes #1573
  • protocol-designer: swap pen icons to pencil (#1906) (70a9fc0), closes #1861
  • protocol-designer: switch well order colors (#1878) (a86aa3e), closes #1862
  • protocol-designer: update copy for 'no tip on pipette' error (#1994) (3a64530), closes #1975
  • protocol-designer: update well selection modal's TitleBar (#1884) (8ce9a4c), closes #1502

Performance Improvements

  • api: Set axis-testing speed to 8mm/sec to avoid resonance (#1912) (d7bb03b)

3.3.0-beta.0 (2018-07-12)

Bug Fixes

  • api: Allows floating-point temperatures to be set/read to/from temp-deck (#1798) (856134a)
  • api: Fix QC script which uses 85% current to use default speeds for Y axis (#1802) (aa8a319)
  • api: Remove incorrect call to cache_instrument_models (#1810) (2f80ece)
  • app: Call GET /pipettes before starting calibration (#1830) (011a3a8)
  • app: Disable calibration page unless protocol is fresh (#1821) (c9168c8), closes #1817
  • app: Make WiFi card more lenient and understandable (#1771) (6f2f37d)
  • app: Remove holdover /calibrate/instruments missed by #1765 (#1787) (03dd305)
  • app: Remove tip-probed check in calibrator selector (#1847) (bb50677)
  • app: Show spinner during home on deck calibration exit (#1760) (b6999a8), closes #1613
  • components: fix Deck component viewBox (#1807) (bff921f)
  • components: Make preventDefault call in HandleKeypress opt-in (#1768) (9e64fb2), closes #1764
  • protocol-designer: allow scroll when NewFileModal too tall (#1777) (e6238ab), closes #1776
  • protocol-designer: do not navigate on FilePage form submit (8f98a08)
  • protocol-designer: fix labware copy mirroring (#1859) (3742bb7), closes #1616

Features

  • api: Add advanced settings endpoints to api server (#1786) (b89b4ea), closes #1656
  • api: Add GET /modules endpoint with stub for module discovery (#1858) (8dedb68)
  • api: Add Magdeck driver (#1840) (e731c78), closes #1809
  • app: Add advanced settings card to robot settings page (#1762) (b70f9b8), closes #1632
  • app: Add attached modules card UI to instrument settings page (#1854) (3a57807), closes #1735
  • app: Add GET /modules to API client (#1837) (da88936)
  • app: Add keyboard shortcuts to jog controls (#1761) (7c51e98), closes #1476
  • app: Add modules and pipettes settings page (#1785) (7ce12b3)
  • app: Add robot settings toggles to Advanced Settings card (#1795) (73f7528), closes #1632
  • app: Log tracebacks from failed RPC calls (#1846) (0c07c52), closes #1841
  • components: use labware defs from shared-data for Deck component (26493f4)
  • protocol-designer: add diagrams & copy to new file modal (#1766) (6ad44b6), closes #1695
  • protocol-designer: add form level validation errors and warnings (#1823) (9cdd66f), closes #1090 #1595 #1592 #1594
  • protocol-designer: allow file upload (11f582b)
  • protocol-designer: change copy for deck setup clarity (#1839) (a713ed0), closes #1811
  • protocol-designer: change edit labware nickname icon to pen (#1842) (512f62c), closes #1660
  • protocol-designer: clear everything when new protocol is created (#1852) (eab21a3), closes #970
  • protocol-designer: implement full protocol file loading (#1804) (bf57e9a), closes #1604
  • protocol-designer: make timeline warnings dismissable (#1791) (f9b1dee)
  • protocol-designer: move Delete button from MoreOptionsModal to StepEditForm (#1770) (3df8444), closes #1555
  • protocol-designer: pipette tiprack assignment (e0555af), closes #1750
  • protocol-designer: remove numbers from step names (#1838) (2277e15), closes #1820
  • protocol-designer: save all PD-required protocol data to file (#1796) (9403898), closes #1789
  • protocol-designer: show file upload errors in modal (#1829) (5ffed81), closes #1610
  • protocol-designer: support distribute with volume over pipette max (#1827) (9b1a3df), closes #1763
  • protocol-designer: user can collapse selected StepItem (ed02098), closes #1681
  • shared-data: annotate labware with format and other metadata (9d4082d)
  • update-server: Add basic update server (#1701) (02d92c7)
  • update-server: Add endpoint to update API Server, ot2serverlib, and Smoothie FW (#1797) (464ed7f), closes #1549
  • update-server: Add restart endpoint to Update Server and shorten restart sleep to 1s (#1793) (1bf8bd7), closes #1794

Performance Improvements

  • api: Slightly increase probing speed, avoid resonance and pipette shaking (#1801) (8f28ad4)

3.2.0 (2018-07-10)

Note: Version bump only for package opentrons

3.2.0-beta.3 (2018-06-25)

Bug Fixes

  • api: Fix row order in labware.create (#1749) (40ac527), closes #1748
  • app: Fix overlay and redirect duplication in robot settings page (#1759) (ce94b22)
  • components: Resize main navbar and title bar to match designs (#1757) (4d46011), closes #1285

Features

  • protocol-designer: allow button to look hovered via .hover class (#1732) (04173b7), closes #1690

3.2.0-beta.2 (2018-06-22)

Bug Fixes

  • api: Sanitize wifi inputs to handle special characters (#1743) (18f8d0f)
  • protocol-designer: set max width of form field rows (#1723) (c3a0dc6), closes #1488

Features

  • api: Log API server and Smoothie FW versions on API server boot (#1728) (6c3c3c4), closes #1120
  • app: Connect home button to API on robot settings (#1726) (103d8c0), closes #856
  • protocol-designer: disallow saving ingred form w/o name & volume (#1724) (206d378), closes #1609 #1671

3.2.0-beta.1 (2018-06-19)

Bug Fixes

  • api: Add ignore update endpoint implementation to fallback file (#1720) (2a68dc5)
  • api: Fix RPC reporting wrong models for v1.3 pipettes (#1691) (e302382)
  • api: Fixes bug in replacing substring of old p50 pipettes written with v13 instead of v1.3 (#1717) (1322055)
  • app: Enable robot update even if API reports up-to-date (#1721) (16bb8eb)
  • app: Fix alignment issues in modals, fix titlebar on page (#1719) (ccf4881)
  • app: Switch to hash routes to enable goBack in prod (#1722) (9bf2398)
  • protocol-designer: fix styles for SelectionRect (#1714) (295940e)

Features

3.2.0-beta.0 (2018-06-13)

Bug Fixes

Features

  • app: Add firmware version to robot settings page (#1633) (9a32383)
  • app: Add resources page to more section (#1631) (443afc0), closes #1607
  • app: Capture and display errors during deck calibration (#1680) (4f75ed7), closes #1641
  • app: Pass server-lib and firmware to /server/update (#1679) (4dc8a76), closes #1115
  • app: Toggle devtools feature flag in app settings (#1678) (6676903), closes #1632
  • components: make info title text selected-dark (5eeec11)
  • protocol-designer: Darken font in labware selection modal (#1646) (aacc76c), closes #1341
  • protocol-designer: elaborate on deck setup in title bar (#1637) (6bda925), closes #1339
  • protocol-designer: increase selected pipette font-size (#1629) (b90e767), closes #1325
  • protocol-designer: update behavior for well setup (#1511) (8c611b5)

Performance Improvements