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.
I added caching to the require extension to avoid redundant recompilation of scripts. Recompilation isn't terribly slow, but for my purposes, it's too slow. A hidden compiled file is created in the same directory as the source file, and is used if the mtime on the source file isn't more recent than the cached version. I append a version number to the cache file name, in case you make breaking changes you can just increment the number, and the next version won't pickup cached versions compiled with older engines. I put the cached file in the same directory as the source because there is less chance of a file name collision, than if we store them locally in module's tree, and if you need to debug the file, you have a copy right next to your source. This one might not be for everybody, but I think it's pretty unobtrusive.