@@ -23,11 +23,6 @@ const plugins = [
2323 [ require . resolve ( 'babel-plugin-transform-react-jsx' ) , {
2424 useBuiltIns : true
2525 } ] ,
26- // function* () { yield 42; yield 43; }
27- [ require . resolve ( 'babel-plugin-transform-regenerator' ) , {
28- // Async functions are converted to generators by babel-preset-latest
29- async : false
30- } ] ,
3126 // Polyfills the runtime needed for async/await and generators
3227 [ require . resolve ( 'babel-plugin-transform-runtime' ) , {
3328 helpers : false ,
@@ -69,13 +64,10 @@ if (env === 'development' || env === 'test') {
6964}
7065
7166if ( env === 'test' ) {
72- // The following plugins are a temporary workaround because
73- // `babel-plugin-transform-regenerator` apparently needs them
74- // and `babel-preset-env` doesn't detect it.
75- // https://github.com/facebookincubator/create-react-app/issues/1156
7667 plugins . push . apply ( plugins , [
77- require . resolve ( 'babel-plugin-transform-es2015-arrow-functions' ) ,
78- require . resolve ( 'babel-plugin-transform-es2015-destructuring' ) ,
68+ // We always include this plugin regardless of environment
69+ // because of a Babel bug that breaks object rest/spread without it:
70+ // https://github.com/babel/babel/issues/4851
7971 require . resolve ( 'babel-plugin-transform-es2015-parameters' )
8072 ] ) ;
8173
@@ -100,7 +92,13 @@ if (env === 'test') {
10092 // JSX, Flow
10193 require . resolve ( 'babel-preset-react' )
10294 ] ,
103- plugins : plugins
95+ plugins : plugins . concat ( [
96+ // function* () { yield 42; yield 43; }
97+ [ require . resolve ( 'babel-plugin-transform-regenerator' ) , {
98+ // Async functions are converted to generators by babel-preset-latest
99+ async : false
100+ } ] ,
101+ ] )
104102 } ;
105103
106104 if ( env === 'production' ) {
0 commit comments