@@ -10,15 +10,15 @@ export default function onDemandEntryHandler (devMiddleware, compiler, {
1010 maxInactiveAge = 1000 * 25
1111} ) {
1212 const entries = { }
13- let doingEntries = { }
13+ let buildingEntries = { }
1414 let completedEntries = { }
1515
1616 const doneCallbacks = new EventEmitter ( )
1717
1818 compiler . plugin ( 'make' , function ( compilation , done ) {
1919 const allEntries = Object . keys ( entries ) . map ( ( page ) => {
2020 const { name, entry } = entries [ page ]
21- doingEntries [ page ] = true
21+ buildingEntries [ page ] = true
2222 return addEntry ( compilation , this . context , name , entry )
2323 } )
2424
@@ -29,13 +29,13 @@ export default function onDemandEntryHandler (devMiddleware, compiler, {
2929
3030 compiler . plugin ( 'done' , function ( stats ) {
3131 // Call all the doneCallbacks
32- Object . keys ( doingEntries ) . forEach ( ( page ) => {
32+ Object . keys ( buildingEntries ) . forEach ( ( page ) => {
3333 entries [ page ] . lastActiveTime = Date . now ( )
3434 doneCallbacks . emit ( page )
3535 } )
3636
37- completedEntries = doingEntries
38- doingEntries = { }
37+ completedEntries = buildingEntries
38+ buildingEntries = { }
3939 } )
4040
4141 setInterval ( function ( ) {
@@ -88,6 +88,9 @@ export default function onDemandEntryHandler (devMiddleware, compiler, {
8888 const page = normalizePage ( query . page )
8989 const entry = entries [ page ]
9090
91+ // We don't need to maintain active state for currently building entries
92+ if ( buildingEntries [ page ] ) return
93+
9194 // If there's an entry
9295 if ( entry ) {
9396 entry . lastActiveTime = Date . now ( )
@@ -122,6 +125,11 @@ function disposeInactiveEntries (devMiddleware, entries, maxInactiveAge) {
122125
123126 Object . keys ( entries ) . forEach ( ( page ) => {
124127 const { lastActiveTime } = entries [ page ]
128+
129+ // This means this entry is currently building
130+ // We don't need to dispose those entries.
131+ if ( ! lastActiveTime ) return
132+
125133 if ( Date . now ( ) - lastActiveTime > maxInactiveAge ) {
126134 disposingPages . push ( page )
127135 }
0 commit comments