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

Redirect initialization and dispose errors #71

Merged
merged 3 commits into from
Apr 9, 2024
Merged

Redirect initialization and dispose errors #71

merged 3 commits into from
Apr 9, 2024

Conversation

glopesdev
Copy link
Collaborator

@glopesdev glopesdev commented Apr 6, 2024

Current device configuration uses deferred execution to allow functional composition of the initialization pipeline, which is then actually executed at StartAcquisition. This makes propagation of errors unintuitive since any exceptions are routed via the StartAcquisition node, no matter which step in the configuration chain they actually originated from.

This PR rewrites observable configuration operators so that on subscription they store the original observer in the configuration closure, and make sure any exceptions are routed there. This allows highlighting the correct node for any exceptions in the chain.

Fixes #69

@glopesdev glopesdev added the fix Pull request that fixes an issue label Apr 6, 2024
@glopesdev glopesdev added this to the 0.1.0 milestone Apr 6, 2024
@glopesdev glopesdev requested review from jonnew and aacuevas April 6, 2024 06:16
@glopesdev glopesdev merged commit db83496 into main Apr 9, 2024
@glopesdev glopesdev deleted the issue-69 branch April 9, 2024 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fix Pull request that fixes an issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Exceptions thrown during device initialization do not highlight their source node
1 participant