refactor: extract device registry and protocol from canvas.py - #2201
Open
danielislas3 wants to merge 1 commit into
Open
refactor: extract device registry and protocol from canvas.py#2201danielislas3 wants to merge 1 commit into
danielislas3 wants to merge 1 commit into
Conversation
Move the master device list (206 entries) and category sets (phidget, nonSerial, nonTemp, special, binary devices) from canvas.py into a standalone device_registry module. Define RoasterProtocol and ScaleProtocol in device_protocol.py to document the implicit interface that 30+ machine drivers already implement. All 2252 existing tests pass. Zero behavior change.
danielislas3
force-pushed
the
feat/extract-device-registry
branch
from
June 27, 2026 06:31
f13c3e7 to
ee42d04
Compare
Member
|
Sorry for the delay in reviewing your PR. I like the idea of moving the device registry outside of canvas.py (a small win in structure), however, I don't understand the device protocol part. For the scales there is a "protocol" defined in scales.py which can be subclassed. For the RoastProtocols I don't see how to benefit from this very limited API you propose. Those protocols are just too different and not well separated from other parts of the code. Further note that artisan.pro does only need to include files with translatable strings which is not the case for those two files. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Move the master device list (206 entries) and category sets from canvas.py into a standalone device_registry module, and define device protocols.
Why
Files
Verification
Zero behavior change.