@@ -156,7 +156,7 @@ export default Task.extend({
156
156
// we can override the file watcher instead.
157
157
webpackConfig . plugins . unshift ( {
158
158
apply : ( compiler : any ) => {
159
- compiler . plugin ( 'after-environment ', ( ) => {
159
+ compiler . hooks . afterEnvironment . tap ( 'angular-cli ', ( ) => {
160
160
compiler . watchFileSystem = { watch : ( ) => { } } ;
161
161
} ) ;
162
162
}
@@ -166,7 +166,7 @@ export default Task.extend({
166
166
webpackCompiler = webpack ( webpackConfig ) ;
167
167
168
168
if ( rebuildDoneCb ) {
169
- webpackCompiler . plugin ( 'done ', rebuildDoneCb ) ;
169
+ webpackCompiler . hooks . done . tap ( 'angular-cli ', rebuildDoneCb ) ;
170
170
}
171
171
172
172
const statsConfig = getWebpackStatsConfig ( serveTaskOptions . verbose ) ;
@@ -222,8 +222,7 @@ export default Task.extend({
222
222
disableDotRule : true ,
223
223
htmlAcceptHeaders : [ 'text/html' , 'application/xhtml+xml' ]
224
224
} ,
225
- stats : serveTaskOptions . verbose ? statsConfig : 'none' ,
226
- inline : true ,
225
+ stats : serveTaskOptions . verbose ? statsConfig : false ,
227
226
proxy : proxyConfig ,
228
227
compress : serveTaskOptions . target === 'production' ,
229
228
watchOptions : {
@@ -237,16 +236,15 @@ export default Task.extend({
237
236
contentBase : false ,
238
237
public : serveTaskOptions . publicHost ,
239
238
disableHostCheck : serveTaskOptions . disableHostCheck ,
240
- publicPath : servePath
239
+ publicPath : servePath ,
240
+ hot : serveTaskOptions . hmr ,
241
241
} ;
242
242
243
243
if ( sslKey != null && sslCert != null ) {
244
244
webpackDevServerConfiguration . key = sslKey ;
245
245
webpackDevServerConfiguration . cert = sslCert ;
246
246
}
247
247
248
- webpackDevServerConfiguration . hot = serveTaskOptions . hmr ;
249
-
250
248
if ( serveTaskOptions . target === 'production' ) {
251
249
ui . writeLine ( chalk . red ( stripIndents `
252
250
****************************************************************************************
@@ -266,8 +264,9 @@ export default Task.extend({
266
264
` ) ) ;
267
265
268
266
const server = new WebpackDevServer ( webpackCompiler , webpackDevServerConfiguration ) ;
269
- if ( ! serveTaskOptions . verbose ) {
270
- webpackCompiler . plugin ( 'done' , ( stats : any ) => {
267
+
268
+ webpackCompiler . hooks . done . tap ( 'angular-cli' , ( stats : webpack . Stats ) => {
269
+ if ( ! serveTaskOptions . verbose ) {
271
270
const json = stats . toJson ( statsConfig ) ;
272
271
this . ui . writeLine ( statsToString ( json , statsConfig ) ) ;
273
272
if ( stats . hasWarnings ( ) ) {
@@ -276,21 +275,23 @@ export default Task.extend({
276
275
if ( stats . hasErrors ( ) ) {
277
276
this . ui . writeError ( statsErrorsToString ( json , statsConfig ) ) ;
278
277
}
279
- } ) ;
280
- }
278
+ }
279
+
280
+ if ( serveTaskOptions . open ) {
281
+ opn ( serverAddress + servePath ) ;
282
+ }
283
+ } ) ;
281
284
282
285
return new Promise ( ( _resolve , reject ) => {
283
286
const httpServer = server . listen (
284
287
serveTaskOptions . port ,
285
288
serveTaskOptions . host ,
286
- ( err : any , _stats : any ) => {
289
+ ( err : any ) => {
287
290
if ( err ) {
288
- return reject ( err ) ;
289
- }
290
- if ( serveTaskOptions . open ) {
291
- opn ( serverAddress + servePath ) ;
291
+ reject ( err ) ;
292
292
}
293
- } ) ;
293
+ } ,
294
+ ) ;
294
295
// Node 8 has a keepAliveTimeout bug which doesn't respect active connections.
295
296
// Connections will end after ~5 seconds (arbitrary), often not letting the full download
296
297
// of large pieces of content, such as a vendor javascript file. This results in browsers
@@ -304,9 +305,8 @@ export default Task.extend({
304
305
} )
305
306
. catch ( ( err : Error ) => {
306
307
if ( err ) {
307
- this . ui . writeError ( '\nAn error occured during the build:\n' + ( ( err && err . stack ) || err ) ) ;
308
+ this . ui . writeError ( '\nAn error occured during the build:\n' + ( err . stack || err ) ) ;
308
309
}
309
- throw err ;
310
310
} ) ;
311
311
}
312
312
} ) ;
0 commit comments