-
Notifications
You must be signed in to change notification settings - Fork 9
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
Caput with callback #98
Commits on Jul 28, 2022
-
Configuration menu - View commit details
-
Copy full SHA for d9ca6e4 - Browse repository at this point
Copy the full SHA d9ca6e4View commit details -
Implement asynchronous record processing
Includes a "blocking" flag on record creation. This change allows you to use caput in asynchronous mode, where it will wait for record processing to complete.
Configuration menu - View commit details
-
Copy full SHA for 0a49421 - Browse repository at this point
Copy the full SHA 0a49421View commit details -
Avoid multiple dispatcher() calls for non-async
This implementation still leaks abstractions - the device now needs to know about the difference between cothread and async calls. Perhaps another round of refactoring is required...
Configuration menu - View commit details
-
Copy full SHA for ae2b6e4 - Browse repository at this point
Copy the full SHA ae2b6e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 799f4c0 - Browse repository at this point
Copy the full SHA 799f4c0View commit details -
Refactor the check for async on_update calls
Also add single and multi threaded tests for blocking records.
Configuration menu - View commit details
-
Copy full SHA for bb322f0 - Browse repository at this point
Copy the full SHA bb322f0View commit details -
Add documentation of blocking and SetBlocking
Renamed the function to conform to naming convention. Added CHANGELOG entry.
Configuration menu - View commit details
-
Copy full SHA for 0591f51 - Browse repository at this point
Copy the full SHA 0591f51View commit details -
Fix bug with async on_update_name callbacks
This leaks even more async code into the device, but I can't see a way around it without having to require the dispatcher be provided before creating records...
Configuration menu - View commit details
-
Copy full SHA for 5791af4 - Browse repository at this point
Copy the full SHA 5791af4View commit details -
Refactor dispatchers to remove implementation leak
By creating/modifying the dispatchers we can easily handle the __completion being called after the __on_update. Without doing this there seem to be unavoidable implementation leaks, where the device.py file would have to care about the difference between cothread and asyncio.
Configuration menu - View commit details
-
Copy full SHA for fdeca46 - Browse repository at this point
Copy the full SHA fdeca46View commit details
Commits on Jul 29, 2022
-
Code review changes from Michael. Includes:
- SetBlocking returns the old blocking state value. Added test. - Fix some style issues - Make completion function on the dispatcher optional, to maintain some compatibility with the previous API
Configuration menu - View commit details
-
Copy full SHA for 877a89c - Browse repository at this point
Copy the full SHA 877a89cView commit details