-
-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
WIP Make kernel message handling async and in order #4697
Merged
Merged
Changes from 1 commit
Commits
Show all changes
79 commits
Select commit
Hold shift + click to select a range
6faa2db
First pass at making all kernel message handling asynchronous and pre…
jasongrout 6d6425b
First pass at handling the case for restarting a kernel and canceling…
jasongrout 6b88d89
Fix comm target callback signature.
jasongrout e905dd8
WIP update docs
jasongrout 958f91f
Make the IAnyMessage message readonly.
jasongrout d7ea1bb
Make connectToComm synchronous.
jasongrout 4b545d9
WIP more async kernel message processing work.
jasongrout c43f2e3
Deal with more async message hook processing.
jasongrout 0112a70
Rename checkCurrentMessage to assertCurrentMessage since it behaves m…
jasongrout a710f4b
Convert kernel utility functions to use async/await syntax.
jasongrout 17b7aa7
Standardize on async return types being: value | Promise<value>
jasongrout ee17a1f
Better typing: Promise<void> -> PromiseLike<void>
jasongrout 086c935
The future done promise returns the reply message, so use it.
jasongrout 8a5c58a
More value | Promise<value> -> value | PromiseLike<value> changes.
jasongrout 987bff9
Rate-limit hook list compactions with requestAnimationFrame.
jasongrout 6ae2a93
Add/enhance documentation and comments.
jasongrout ba3e81e
Documentation updates and code reorganization.
jasongrout b206730
Fix an anachronism in the code.
jasongrout cb2b5f8
Message hooks can return promises, so update the type signature.
jasongrout 0c2baf2
Fix some easier TODO items.
jasongrout dd50e93
Add removeCommTarget and removeMessageHook functions to kernels.
jasongrout 3d58b49
Use async/await for requestKernelInfo
jasongrout a8883b3
Fix some imports.
jasongrout 6c1f09e
Update the current kernel session id on *every* message.
jasongrout db9e387
Fix some of the services tests to compile.
jasongrout d4f1468
await instead of return a promise
jasongrout 555cb73
WIP
jasongrout bce868b
Prevent console error when a future is canceled.
jasongrout fbb1af3
WIP
jasongrout a8e8641
WIP
jasongrout ba00836
Use phosphor’s defer rather than requestAnimationFrame
jasongrout 15d733a
More WIP migrating tests to async/await.
jasongrout b73ca7a
A few more logging messages.
jasongrout a25e24d
Skip comm tests for now
jasongrout 3bf22ad
Re-enable all services tests.
jasongrout 6ec05db
Adjust logging to use a single exported function.
jasongrout 84171f2
Fix message hook test.
jasongrout 15468ab
Fix 404 handling when deleting a kernel.
jasongrout b151c69
Skip two tests (for now) that rely on kernel status messages in a par…
jasongrout 6e6eedb
asyncify two more tests.
jasongrout 8d2db4a
Fix the serverSettings unit test.
jasongrout 070f017
Audit and clean up session and session manager changes.
jasongrout bbcb8f7
Fix comm unit tests.
jasongrout fe33e03
Fix ikernel tests.
jasongrout 39ea199
Fix kernel manager tests.
jasongrout 9a9652e
Fix shutdown of one kernel killing all other connections to the kernel.
jasongrout 2502aa0
Remove the anyMessage ‘different client session’ test.
jasongrout 0e7575b
Fix ikernel tests.
jasongrout 10d3008
Rename the testEmission utility shouldTest argument to find.
jasongrout e667434
Reset some logging to back the way it was before the PR.
jasongrout c47d549
Fix session tests.
jasongrout 2ef505f
Add logging of kernel messages for testing.
jasongrout f5f44fb
Fix kernel interrupt test.
jasongrout 737a096
Fix a kernel test.
jasongrout a592afe
Add TODO note about hardcoding a URL.
jasongrout 8e771a4
Comment out logging.
jasongrout 1fc95e8
Fix lint issues.
jasongrout dfad03b
Add notes about sporadically failing tests.
jasongrout 12dd9ea
Fix lint errors.
jasongrout 9fdeae5
Make a copy of the runningKernels list if there is a possibility of d…
jasongrout db924ae
Don’t preemptively cancel messages from a different kernel session.
jasongrout fc6b562
Work around issues where tests were sporadically hanging.
jasongrout 9b4c9ab
Put back in debug logging.
jasongrout f44dde6
Add explanatory notes.
jasongrout 989d66d
Add testResolveOrder and isFulfilled utility functions, and tests.
jasongrout b40abcd
Kernel message hooks should also accept promises
jasongrout bdcf02f
Add some async message hooks in the standard tests.
jasongrout 652a26a
Add some tests for patterns, such as testing order of signal emissions.
jasongrout d96044b
Add asynchronous message handling test, with associated infrastructure.
jasongrout 67f271e
Add transient message data for display updates to the message spec.
jasongrout be6a65a
Remove kernel message logging
jasongrout 0f3aae2
Definitely start a new kernel before each ikernel test.
jasongrout 353779f
Fix failing kernel test.
jasongrout bef6212
Some minor cleanup.
jasongrout 4a30e0f
Cleanup based on review comments by @ian-r-rose
jasongrout 8b7b059
Remove testResolveOrder since we did not end up using it.
jasongrout 0c45d74
Move the defer function to where it is being used.
jasongrout 38e96a1
Fix unhandled message test.
jasongrout 58ecc9c
Fix comment to refer to node.
jasongrout File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains 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
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this something that can be simplified with conditional types?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose we could use a MakeRequired typing thing, but I think it's simpler to be more explicit here.