@@ -53,6 +53,7 @@ function makeLoader(callback) {
5353
5454async function loader ( source , inputSourceMap , overrides ) {
5555 const filename = this . resourcePath ;
56+ const logger = this . getLogger ( "babel-loader" ) ;
5657
5758 let loaderOptions = this . getOptions ( ) ;
5859 validateOptions ( schema , loaderOptions , {
@@ -78,17 +79,20 @@ async function loader(source, inputSourceMap, overrides) {
7879 ) ;
7980 }
8081
82+ logger . debug ( `loading customize override: '${ loaderOptions . customize } '` ) ;
8183 let override = require ( loaderOptions . customize ) ;
8284 if ( override . __esModule ) override = override . default ;
8385
8486 if ( typeof override !== "function" ) {
8587 throw new Error ( "Custom overrides must be functions." ) ;
8688 }
89+ logger . debug ( "applying customize override to @babel/core" ) ;
8790 overrides = override ( babel ) ;
8891 }
8992
9093 let customOptions ;
9194 if ( overrides && overrides . customOptions ) {
95+ logger . debug ( "applying overrides customOptions() to loader options" ) ;
9296 const result = await overrides . customOptions . call ( this , loaderOptions , {
9397 source,
9498 map : inputSourceMap ,
@@ -113,6 +117,7 @@ async function loader(source, inputSourceMap, overrides) {
113117 ) ;
114118 }
115119
120+ logger . debug ( "normalizing loader options" ) ;
116121 // Standardize on 'sourceMaps' as the key passed through to Webpack, so that
117122 // users may safely use either one alongside our default use of
118123 // 'this.sourceMap' below without getting error about conflicting aliases.
@@ -149,12 +154,14 @@ async function loader(source, inputSourceMap, overrides) {
149154 delete programmaticOptions . cacheCompression ;
150155 delete programmaticOptions . metadataSubscribers ;
151156
157+ logger . debug ( "resolving Babel configs" ) ;
152158 const config = await babel . loadPartialConfigAsync (
153159 injectCaller ( programmaticOptions , this . target ) ,
154160 ) ;
155161 if ( config ) {
156162 let options = config . options ;
157163 if ( overrides && overrides . config ) {
164+ logger . debug ( "applying overrides config() to Babel config" ) ;
158165 options = await overrides . config . call ( this , config , {
159166 source,
160167 map : inputSourceMap ,
@@ -185,22 +192,29 @@ async function loader(source, inputSourceMap, overrides) {
185192
186193 let result ;
187194 if ( cacheDirectory ) {
195+ logger . debug ( "cache is enabled" ) ;
188196 result = await cache ( {
189197 source,
190198 options,
191199 transform,
192200 cacheDirectory,
193201 cacheIdentifier,
194202 cacheCompression,
203+ logger,
195204 } ) ;
196205 } else {
206+ logger . debug ( "cache is disabled, applying Babel transform" ) ;
197207 result = await transform ( source , options ) ;
198208 }
199209
200- config . files . forEach ( configFile => this . addDependency ( configFile ) ) ;
210+ config . files . forEach ( configFile => {
211+ this . addDependency ( configFile ) ;
212+ logger . debug ( `added '${ configFile } ' to webpack dependencies` ) ;
213+ } ) ;
201214
202215 if ( result ) {
203216 if ( overrides && overrides . result ) {
217+ logger . debug ( "applying overrides result() to Babel transform results" ) ;
204218 result = await overrides . result . call ( this , result , {
205219 source,
206220 map : inputSourceMap ,
@@ -212,9 +226,13 @@ async function loader(source, inputSourceMap, overrides) {
212226
213227 const { code, map, metadata, externalDependencies } = result ;
214228
215- externalDependencies ?. forEach ( dep => this . addDependency ( dep ) ) ;
229+ externalDependencies ?. forEach ( dep => {
230+ this . addDependency ( dep ) ;
231+ logger . debug ( `added '${ dep } ' to webpack dependencies` ) ;
232+ } ) ;
216233 metadataSubscribers . forEach ( subscriber => {
217234 subscribe ( subscriber , metadata , this ) ;
235+ logger . debug ( `invoked metadata subscriber '${ String ( subscriber ) } '` ) ;
218236 } ) ;
219237
220238 return [ code , map ] ;
0 commit comments