Add supporting for React/Promises v3 #351
Merged
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 was changed
Added supporting for
react/promise
v3 package.I'm not sure that all 3rd packages was migrated to promises v3, that's why I paid attention to maintaining compatibility with the old promises version.
Why?
It adds new features of extended promises like methods
catch()
,finally()
andcancel()
.Also there were added
@template
annotations and better type coverage.Checklist
Release note
The ReactPHP Promise dependency has been updated from version 2 to version 3.
Despite the fact that some functions (
some()
,map()
,reduce()
) have been removed from React, they have remained in ourTemporal\Promise
helper with the same behavior.Otherwise, meet:
PromiseInterface
:catch()
andfinally()
;@template
annotation for thePromiseInterface
, which allows you to specify the type of the promise result.So start specifying types in Activity and Workflow, and when this initiative is implemented, the Workflow code will become fully typed and understandable for IDE and static analysis.