Skip to content

refactor: Stop DeviceRef extending str#1557

Merged
tpoliaw merged 3 commits into
mainfrom
device-ref-str
Jun 24, 2026
Merged

refactor: Stop DeviceRef extending str#1557
tpoliaw merged 3 commits into
mainfrom
device-ref-str

Conversation

@tpoliaw

@tpoliaw tpoliaw commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

This was originally to make serialization behave correctly when the task
was passed to requests. As we are using pydantic to dump the model to
JSON before passing it, we can add the custom serialization there to get
the device-to-string conversion that we need.

@tpoliaw tpoliaw requested a review from a team as a code owner June 12, 2026 14:11
@tpoliaw tpoliaw linked an issue Jun 12, 2026 that may be closed by this pull request
@codecov

codecov Bot commented Jun 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.87%. Comparing base (dd3f40d) to head (d093774).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1557   +/-   ##
=======================================
  Coverage   95.86%   95.87%           
=======================================
  Files          44       44           
  Lines        3292     3298    +6     
=======================================
+ Hits         3156     3162    +6     
  Misses        136      136           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@oliwenmandiamond

oliwenmandiamond commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

I did a quick test with this, seems to work

>>> devs.fsj1.
devs.fsj1.model  devs.fsj1.name  

No more unrelated methods. Tried some move plans.

>>> plans.set_absolute(devs.fsj1, "Out")
>>> plans.set_absolute(devs.fsj1, "In")
>>> plans.set_absolute(devs.smpm.x, 1)
>>> plans.set_absolute(devs.smpm.x, 5)
>>> pl.move({dv.fsj1: "In"})
>>> 

tpoliaw added 2 commits June 24, 2026 11:04
This was originally to make serialization behave correctly when the task
was passed to requests. As we are using pydantic to dump the model to
JSON before passing it, we can add the custom serialization there to get
the device-to-string conversion that we need.

@abbiemery abbiemery left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Works for me also

@tpoliaw tpoliaw added this pull request to the merge queue Jun 24, 2026
Merged via the queue into main with commit 4caaf19 Jun 24, 2026
19 checks passed
@tpoliaw tpoliaw deleted the device-ref-str branch June 24, 2026 12:34
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.

DeviceRef inherits from str which leads to confusion on the client

3 participants