5
3
Fork
You've already forked bmputil
2

Feature: Type system differentiated Response types #86

Merged
northernpaws merged 14 commits from feature/full-bmp-rsp-support into main 2026年06月19日 01:12:18 +02:00

In this PR we address the need for a better Response type and split the representation of responses based on what kind of response they are, encoding this right into the type system. We are still not completely happy with how error responses are handled in this, however that can be further refined in a future PR or via the review notes of this PR.

This is to be considered a correctional PR between the ones for the remote protocol support.

The main aim with this PR is to have one type for when a response comes back OK from the probe, another for when it represents a parameter error, another for general errors, etc.. each specialised to have only the kinds of value conversions and such that are appropriate to what they represent. This makes it so it is impossible to call the wrong kind of value conversion on a given response.

Once merged, the branch this is on should not be deleted as there are an additional 2 PRs to go in the remote protocol series.

In this PR we address the need for a better Response type and split the representation of responses based on what kind of response they are, encoding this right into the type system. We are still not completely happy with how error responses are handled in this, however that can be further refined in a future PR or via the review notes of this PR. This is to be considered a correctional PR between the ones for the remote protocol support. The main aim with this PR is to have one type for when a response comes back OK from the probe, another for when it represents a parameter error, another for general errors, etc.. each specialised to have only the kinds of value conversions and such that are appropriate to what they represent. This makes it so it is impossible to call the wrong kind of value conversion on a given response. Once merged, the branch this is on should not be deleted as there are an additional 2 PRs to go in the remote protocol series.
serial/remote/response: Implemented a proper conversion to an ErrorObject for any response that is a kind of error
All checks were successful
ci/woodpecker/pr/build-windows/2 Pipeline was successful
ci/woodpecker/pr/build-linux Pipeline was successful
ci/woodpecker/pr/build-windows/1 Pipeline was successful
2b6b5ee975
serial/remote/response: Fixed some docs comments not having been quite made into docs, and ignored two unused function warnings
All checks were successful
ci/woodpecker/pr/build-windows/2 Pipeline was successful
ci/woodpecker/pr/build-linux Pipeline was successful
ci/woodpecker/pr/build-windows/1 Pipeline was successful
d07284c6a5
dragonmux force-pushed feature/full-bmp-rsp-support from d07284c6a5
All checks were successful
ci/woodpecker/pr/build-windows/2 Pipeline was successful
ci/woodpecker/pr/build-linux Pipeline was successful
ci/woodpecker/pr/build-windows/1 Pipeline was successful
to 54f0fcaf5e
All checks were successful
ci/woodpecker/pr/build-windows/2 Pipeline was successful
ci/woodpecker/pr/build-linux Pipeline was successful
ci/woodpecker/pr/build-windows/1 Pipeline was successful
ci/woodpecker/push/build-linux Pipeline was successful
ci/woodpecker/push/build-windows/2 Pipeline was successful
ci/woodpecker/push/build-windows/1 Pipeline was successful
2026年06月18日 01:31:34 +02:00
Compare
northernpaws left a comment
Copy link

Looks good to me! I think you covered everything we talked about, great work!

Looks good to me! I think you covered everything we talked about, great work!
Sign in to join this conversation.
No reviewers
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
blackmagic-debug/bmputil!86
Reference in a new issue
blackmagic-debug/bmputil
No description provided.
Delete branch "feature/full-bmp-rsp-support"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?