fix(ivy): ngcc - improve the "ngcc version changed" error message (#32396)
If a project has nested projects that contain node_modules folders that get processed by ngcc, it can be confusing when the ngcc version changes since the error message is very generic: ``` The ngcc compiler has changed since the last ngcc build. Please completely remove `node_modules` and try again. ``` This commit augments the error message with the path of the entry-point that failed so that it is more obvious which node_modules folder to remove. BREAKING CHANGE: This commit removes the public export of `hasBeenProcessed()`. This was exported to be availble to the CLI integration but was never used. The change to the function signature is a breaking change in itself so we remove the function altogether to simplify and lower the public API surface going forward. PR Close #32396
This commit is contained in:

committed by
Miško Hevery

parent
63dff9c888
commit
d5101dff3b
@ -8,20 +8,11 @@
|
||||
import {CachedFileSystem, NodeJSFileSystem, setFileSystem} from '../src/ngtsc/file_system';
|
||||
|
||||
import {mainNgcc} from './src/main';
|
||||
import {hasBeenProcessed as _hasBeenProcessed} from './src/packages/build_marker';
|
||||
import {EntryPointJsonProperty, EntryPointPackageJson} from './src/packages/entry_point';
|
||||
|
||||
export {ConsoleLogger, LogLevel} from './src/logging/console_logger';
|
||||
export {Logger} from './src/logging/logger';
|
||||
export {NgccOptions} from './src/main';
|
||||
export {PathMappings} from './src/utils';
|
||||
|
||||
export function hasBeenProcessed(packageJson: object, format: string) {
|
||||
// Recreate the file system on each call to reset the cache
|
||||
setFileSystem(new CachedFileSystem(new NodeJSFileSystem()));
|
||||
return _hasBeenProcessed(packageJson as EntryPointPackageJson, format as EntryPointJsonProperty);
|
||||
}
|
||||
|
||||
export function process(...args: Parameters<typeof mainNgcc>) {
|
||||
// Recreate the file system on each call to reset the cache
|
||||
setFileSystem(new CachedFileSystem(new NodeJSFileSystem()));
|
||||
|
Reference in New Issue
Block a user