Address eventloop's double registerCallback call when using promises.New #3180
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?
This Pull Request addresses the misuse of named arguments introduced by #3176, and fixes the resulting
registerCallback called twice
issue that followed from it.It also adds two minimal tests covering ensuring the
resolve
andreject
callbacks are effective. I wasn't entirely sure how to properly test that function; this is the simplest thing I came up with. I'm all ears 👂🏻 for alternatives and suggestions to improve it 🙇🏻Why?
As I started using the
promises.New
function in another stream of work, I noticed that as soon as I used thepromises.New
function, I would end up havingregisterCallback called twice
panic all over. I tracked down the issue, and it turned out that it was because we needed to use Go named return arguments properly.Checklist
make ci-like-lint
) and all checks pass.make tests
) and all tests pass.Related PR(s)/Issue(s)
ref #3176
ref #3176 (review)