Skip to content
This repository was archived by the owner on Feb 1, 2025. It is now read-only.

Commit

Permalink
Define regeneratorRuntime globally as a side-effect, again. (#369)
Browse files Browse the repository at this point in the history
* Define regeneratorRuntime globally as a side-effect, again.

In #353, I simplified the implementation of regenerator-runtime by
converting runtime.js to a normal CommonJS module. No more global object
detection, and no more sneaky capture/deletion of regeneratorRuntime.

Unfortunately, folks who use only @babel/polyfill and not
@babel/transform-runtime may have existing code that relies on a global
regeneratorRuntime variable. That code will eventually disappear
(:crossed_fingers:), but in the meantime we can continue supporting it by
simply ensuring that regeneratorRuntime is defined globally as a
side-effect of importing regenerator-runtime.

This turns out to be much easier than detecting the global object, as long
as runtime.js runs as a non-strict CommonJS module. See my code comments
for another fallback solution that should cover all remaining cases.

Background discussion:
babel/babel#7646 (comment)

Fixes #363.
Fixes #337.
Fixes #367.

* Update regenerator/package-lock.json.

* Fix Travis CI tests by running `npm i` instead of `npm ci`.

* Prevent Travis from running `npm ci` by default.
  • Loading branch information
benjamn authored Mar 7, 2019
1 parent 70cde2f commit 063f14e
Show file tree
Hide file tree
Showing 6 changed files with 193 additions and 160 deletions.
5 changes: 5 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
before_install:
- npm install --global npm@latest

# Prevent Travis from running `npm ci` by default, which has trouble with
# file: dependencies.
install:
- npm install

language: node_js
node_js:
- "10"
Expand Down
Loading

0 comments on commit 063f14e

Please sign in to comment.