File tree Expand file tree Collapse file tree 2 files changed +13
-15
lines changed
Expand file tree Collapse file tree 2 files changed +13
-15
lines changed Original file line number Diff line number Diff line change @@ -868,8 +868,10 @@ class NormalModule extends Module {
868868 * @returns {ConnectionState } how this module should be connected to referencing modules when consumed for side-effects only
869869 */
870870 getSideEffectsConnectionState ( moduleGraph ) {
871- if ( this . factoryMeta !== undefined && this . factoryMeta . sideEffectFree )
872- return false ;
871+ if ( this . factoryMeta !== undefined ) {
872+ if ( this . factoryMeta . sideEffectFree ) return false ;
873+ if ( this . factoryMeta . sideEffectFree === false ) return true ;
874+ }
873875 if ( this . buildMeta !== undefined && this . buildMeta . sideEffectFree ) {
874876 if ( this . _isEvaluatingSideEffects )
875877 return ModuleGraphConnection . CIRCULAR_CONNECTION ;
Original file line number Diff line number Diff line change @@ -82,16 +82,16 @@ class SideEffectsFlagPlugin {
8282 resolveData . relativePath
8383 ) {
8484 const sideEffects = resolveData . descriptionFileData . sideEffects ;
85- const hasSideEffects = SideEffectsFlagPlugin . moduleHasSideEffects (
86- resolveData . relativePath ,
87- sideEffects ,
88- cache
89- ) ;
90- if ( ! hasSideEffects ) {
85+ if ( sideEffects !== undefined ) {
9186 if ( module . factoryMeta === undefined ) {
9287 module . factoryMeta = { } ;
9388 }
94- module . factoryMeta . sideEffectFree = true ;
89+ const hasSideEffects = SideEffectsFlagPlugin . moduleHasSideEffects (
90+ resolveData . relativePath ,
91+ sideEffects ,
92+ cache
93+ ) ;
94+ module . factoryMeta . sideEffectFree = ! hasSideEffects ;
9595 }
9696 }
9797
@@ -101,15 +101,11 @@ class SideEffectsFlagPlugin {
101101 normalModuleFactory . hooks . module . tap (
102102 "SideEffectsFlagPlugin" ,
103103 ( module , data ) => {
104- if ( data . settings . sideEffects === false ) {
104+ if ( typeof data . settings . sideEffects === "boolean" ) {
105105 if ( module . factoryMeta === undefined ) {
106106 module . factoryMeta = { } ;
107107 }
108- module . factoryMeta . sideEffectFree = true ;
109- } else if ( data . settings . sideEffects === true ) {
110- if ( module . factoryMeta !== undefined ) {
111- module . factoryMeta . sideEffectFree = false ;
112- }
108+ module . factoryMeta . sideEffectFree = ! data . settings . sideEffects ;
113109 }
114110 return module ;
115111 }
You can’t perform that action at this time.
0 commit comments