fix: add AbortController polyfill for pre-warm lambda requests in onSuccess build step #391
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.
Summary
In the initial release of #376 , the minimum version of node was increased to v14.17.0 because that was when the
AbortControllerthat's used in the pre-warm requests to the lambdas in theonSuccesswas first included within the Node global object.However,
AbortControlleris controlled by a feature flag in v14, leading to errors of it not existing when building sites with the plugin.Changes
globalThis- this was incorrectly added in the initial implementationnode:processtoprocess. This was being raised as an error in Node v14Test plan
Deploy previews aren't how one would reproduce the error. To reproduce (in local environment):
demosite with theGATSBY_EXCLUDE_DATASTORE_FROM_BUNDLEenvironment variable enabledIf one were to do this prior to these changes, you should see an error that looks like
globalThis.AbortController is not a constructor.After these changes, the site should correctly build and deploy
Relevant links (GitHub issues, Notion docs, etc.) or a picture of cute animal