Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Merge chore_release-7.2.0 into edge #14495

Merged
merged 25 commits into from
Feb 14, 2024
Merged

chore: Merge chore_release-7.2.0 into edge #14495

merged 25 commits into from
Feb 14, 2024

Conversation

SyntaxColoring
Copy link
Contributor

@SyntaxColoring SyntaxColoring commented Feb 14, 2024

Overview

This is an incremental merge of the in-progress chore_release-7.2.0 branch into edge.

We had to make a synchronized change between this repo's chore_release-7.2.0 branch and Opentrons/oe-core's main branch. (PRs #14480 and Opentrons/oe-core#134.)

So, we also need to synchronize this repo's edge branch. Otherwise, builds with this repo's edge and Opentrons/oe-core's main — which is most of them — will be broken because this repo's edge is missing the change.

Test Plan

Changelog

Resolve one merge conflict in the top-level Makefile, between #14464 (added pip install --upgrade pip and bumped the Pipenv version) and #14469 (moved that Makefile bit to a separate recipe).

Review requests

Is my premise about our automatic builds correct?

Risk assessment

Low.

ncdiehl11 and others added 25 commits February 8, 2024 11:52
Fix empty card styling for instrument cards and border radius for instrument and module cards

closes RQA-2262
* chore: use api tokens for pypi deploys

* enforce latest pip

* perhaps latest pipenv
Trashbin support is required for API 2.16

Co-authored-by: Anurag Kanase <79215426+anuwrag@users.noreply.github.com>
When we parse python protocols, we were doing it by (1) making it into a
string with decode('utf-8') and then (2) passing the string ast.parse().
The problem with this is that decode('utf-8') does not apply "universal
newlines", which means that the code object created by compiling the ast
will have line numbers that are around twice what they should be under
certain circumstances (windows machine, crlf file, mercury in the
seventh house, etc). Then, when we go and display a nice error message
about a syntax error or whatever, the user says "why is this error
message pointing to a place past the end of my protocol".

This should fix that by keeping the protocol contents in bytes form all
the way through to passing ast.parse() a bytes that _has never been
through str.decode('utf-8')_ which should preserve everything.
…14457)

* fix(app): update useIsRobot busy hook to check for firmware update

closes RQA-2293
)

Closes RQA-2291, RQA-2307, RQA-2306, RQA-2304

* fix(app): fix non polling notify hooks not always refetching data appropriately

Instead of checking the refetchInterval property to see if a notification refetch should occur, we
should check if staleTime is infinity. This accurately captures the refetchHTTP behavior that we
actually want.

* fix(app): fix infinite cancelling run state when run status is idle->stop-requested
* refactor(app): add robot serial number to mixpanel analytics

closes RAUT-899
* docs: update nodejs version in the doc
toggles between slightly different greens and purples based on window.matchMedia matching to the
touchscreen height and width

closes RAUT-966
…/runs/:runId/setup (#14486)

Closes RQA-2290

Notification changes uncovered a bug in which a RecentRunProtocolCard caused redirection to the
/runs/:runId/setup page before the actual run had loaded, which caused the TopLevelRedirect hook to
bounce back to the /protocols page until the run loads. Instead of relying on run within
TopLevelRedirect for this one off route case, move the redirect within ProtocolSetup and redirect if
run status is stopped. This creates the same end behavior without the temporary redirect to
/protocols.
…ns (#14477)

Closes RQA-2339, RQA-2321, RQA-2319, RAUT-962, RQA-2346

* fix(app-shell, app-shell-odd): fix intermittently dropped notifications

Because subscription logic is directly tied to the component lifecycle, it is possible for a
component to trigger an unsubscribe event on dismount while a new component mounts and triggers a
subscribe event. For the connection store and MQTT to reflect correct topic subscriptions, do not
unsubscribe and close connections before newly mounted components have had time to update the
connection store.
Closes RQA-2296

The staleTime property was not handled correctly by the useNotifyService notification hook. In
addition to disabling notifications when using staleTime, we must also alert the HTTP hook that it
is responsible for refetching HTTP data.
@SyntaxColoring SyntaxColoring requested review from a team as code owners February 14, 2024 18:09
@SyntaxColoring SyntaxColoring requested review from b-cooper and removed request for a team February 14, 2024 18:09
@SyntaxColoring
Copy link
Contributor Author

Reminder to self to normal-merge this, not squash.

Copy link

codecov bot commented Feb 14, 2024

Codecov Report

Attention: 64 lines in your changes are missing coverage. Please review.

Comparison is base (0a410c8) 67.79% compared to head (bcd312d) 67.78%.
Report is 1 commits behind head on edge.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             edge   #14495      +/-   ##
==========================================
- Coverage   67.79%   67.78%   -0.01%     
==========================================
  Files        2518     2517       -1     
  Lines       72004    72044      +40     
  Branches     9244     9274      +30     
==========================================
+ Hits        48815    48838      +23     
- Misses      20987    20991       +4     
- Partials     2202     2215      +13     
Flag Coverage Δ
app 64.64% <56.19%> (+0.05%) ⬆️
components 48.90% <0.00%> (-0.52%) ⬇️
g-code-testing 92.43% <ø> (ø)
hardware 57.54% <ø> (ø)
hardware-testing ∅ <ø> (∅)
labware-library 41.11% <ø> (ø)
protocol-designer 37.93% <ø> (ø)
react-api-client 66.38% <100.00%> (+0.21%) ⬆️
shared-data 75.24% <ø> (ø)
step-generation 86.90% <ø> (ø)
system-server 96.04% <ø> (ø)
update-server 50.56% <ø> (ø)
usb-bridge 76.94% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
api/src/opentrons/execute.py 54.23% <ø> (ø)
...rc/opentrons/hardware_control/backends/ot3utils.py 94.11% <ø> (ø)
api/src/opentrons/protocol_api/protocol_context.py 92.80% <ø> (ø)
...pi/src/opentrons/protocol_engine/state/commands.py 99.44% <ø> (ø)
api/src/opentrons/protocols/parse.py 96.40% <ø> (-0.06%) ⬇️
api/src/opentrons/protocols/types.py 89.74% <ø> (ø)
api/src/opentrons/simulate.py 57.73% <ø> (ø)
api/src/opentrons/util/entrypoint_util.py 90.69% <ø> (ø)
app/src/App/hooks.ts 10.71% <ø> (+0.36%) ⬆️
app/src/molecules/InstrumentCard/index.tsx 88.88% <ø> (ø)
... and 42 more

... and 1 file with indirect coverage changes

Copy link
Member

@sfoster1 sfoster1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Please remember to normal merge!

@SyntaxColoring SyntaxColoring merged commit bcd312d into edge Feb 14, 2024
90 of 92 checks passed
@SyntaxColoring SyntaxColoring deleted the mergeback branch February 14, 2024 19:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.