Polyfill path/posix library when building
#2660
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.
Description
Node.js APIs are only available in Node.js environments (and not browser environments). In order to make use of Node.js APIs in the browser, Webpack includes polyfills of these APIs (libraries that contain the same or similar API but are implemented in pure JavaScript so that they can be run in the browser).
Webpack appears to polyfill the
pathmodule by default, but not thepath/posixmodule. This PR adds thepath-browserifylibrary as a polyfill forpath/posix. Note that the lock file does not change because Webpack already depends onpath-browserify.Fixes the build issue seen in #2655.
Relevant js-slang PR: source-academy/js-slang#1470
Type of change
How to test
yarn run buildand verify that there are no errors.Checklist