Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building with "nx build --prod" leaves error: "Index html generation failed." #4381

Closed
sskieller opened this issue Dec 22, 2020 · 30 comments
Closed

Comments

@sskieller
Copy link

sskieller commented Dec 22, 2020

Current Behavior

Currently experiencing that when I migrate our project from nx 10.4.7 to nx 11.0.* and then try to run "nx build --prod", I receive an error saying: "Index html generation failed."
image

Expected Behavior

I expected it to complete the index html generation without errors.
Currently nx 11.* cannot be used after building for prod ("nx build --prod").
It does however WORK! with "nx serve" AND "nx build"

This did never used to happen.

If the provided stuff is not enough I can try and make a minimal Github repo, but that's a larger task, so would like to hear from you first.

Steps to Reproduce

`

npx @nrwl/tao@latest migrate 10.4.8 (do the whole migration process to 10x)
npx @nrwl/tao@latest migrate latest (do the whole migration process to 11x)
yarn
npx @nrwl/tao@latest migrate @nrwl/workspace@latest
yarn
nx migrate --run-migrations=migrations.json
nx build --prod
`

Migrations.json:
{ "migrations": [ { "version": "11.0.0-beta.3", "description": "Update the decoration script when using Angular CLI", "factory": "./src/migrations/update-11-0-0/update-decorate-angular-cli", "package": "@nrwl/workspace", "name": "update-decorate-angular-cli" }, { "version": "11.0.0-beta.3", "description": "Update the @types/node package", "factory": "./src/migrations/update-11-0-0/update-node-types", "package": "@nrwl/workspace", "name": "update-node-types" }, { "version": "11.0.0-beta.15", "description": "Addsoutputsbased on builders", "factory": "./src/migrations/update-11-0-0/add-outputs-in-workspace", "package": "@nrwl/workspace", "name": "add-outputs-in-workspace" }, { "version": "11.0.0", "description": "Check that the right update command is used", "factory": "./src/migrations/update-11-0-0/update-command-check", "package": "@nrwl/workspace", "name": "update-command-check" }, { "version": "11.0.2", "description": "Rename the workspace-schematic script into workspace-generator script", "factory": "./src/migrations/update-11-0-0/rename-workspace-schematic-script", "package": "@nrwl/workspace", "name": "rename-workspace-schematic-script" }, { "version": "10.4.0-beta.3", "description": "Adjust karma and protractor setup", "factory": "./src/migrations/update-10-4-0/update-10-4-0", "package": "@nrwl/angular", "name": "update-10-4-0" }, { "version": "10.5.0-beta.0", "description": "Update eslint config and builder to extend from new Nx Angular presets and lint templates", "factory": "./src/migrations/update-10-5-0/add-template-support-and-presets-to-eslint", "package": "@nrwl/angular", "name": "add-template-support-and-presets-to-eslint" }, { "version": "11.0.0-beta.13", "description": "Update builder configurations and dependencies", "factory": "./src/migrations/update-11-0-0/update-builders-config", "package": "@nrwl/angular", "name": "update-11-0-0" }, { "version": "11.0.0-beta", "description": "NavigationExtras omissions migration. In version 11, some unsupported properties were omitted from theextrasparameter of theRouter.navigateByUrlandRouter.createUrlTreemethods.", "factory": "./migrations/navigation-extras-omissions/index", "package": "@angular/core", "name": "migration-v11-navigation-extras-omissions" }, { "version": "11.0.0-beta", "description": "The default value forrelativeLinkResolutionis changing from 'legacy' to 'corrected'.\nThis migration updatesRouterModuleconfigurations that use the default value to \nnow specifically use 'legacy' to prevent breakages when updating.", "factory": "./migrations/relative-link-resolution/index", "package": "@angular/core", "name": "migration-v11-router-relative-link-resolution-default" }, { "version": "11.0.0-beta", "description": "In Angular version 11, the type ofAbstractControl.parentcan benullto reflect the runtime value more accurately. This migration automatically adds non-null assertions to existing accesses of theparentproperty on types likeFormControl, FormArrayandFormGroup.", "factory": "./migrations/abstract-control-parent/index", "package": "@angular/core", "name": "migration-v11-abstract-control-parent" }, { "version": "11.0.0-beta", "description": "ViewEncapsulation.Native has been removed as of Angular version 11. This migration replaces any usages with ViewEncapsulation.ShadowDom.", "factory": "./migrations/native-view-encapsulation/index", "package": "@angular/core", "name": "migration-v11-native-view-encapsulation" }, { "version": "11.0.0-beta", "description": "asynctowaitForAsyncmigration. Theasynctesting function has been renamed towaitForAsyncto avoid confusion with the nativeasynckeyword.", "factory": "./migrations/wait-for-async/index", "package": "@angular/core", "name": "migration-v11-wait-for-async" }, { "version": "11.0.0-beta", "description": "NavigationExtras.preserveQueryParams has been removed as of Angular version 11. This migration replaces any usages with the appropriate assignment of the queryParamsHandling key.", "factory": "./migrations/router-preserve-query-params/index", "package": "@angular/core", "name": "migration-v11-router-preserve-query-params" }, { "version": "11.0.0-beta", "description": "Updates theinitialNavigationproperty forRouterModule.forRoot.", "factory": "./migrations/initial-navigation/index", "package": "@angular/core", "name": "migration-v11-router-initial-navigation-options" }, { "version": "10.3.0-beta.1", "description": "Adds all jest projects into the root jest config", "factory": "./src/migrations/update-10-3-0/update-projects-property", "package": "@nrwl/jest", "name": "update-projects-property" }, { "version": "10.3.1-beta.1", "description": "Fix ts-jest migration", "factory": "./src/migrations/update-10-3-0/update-ts-jest", "package": "@nrwl/jest", "name": "update-ts-jest" }, { "version": "10.3.0-beta.1", "description": "Adds a jest extension to the recommended extensions for vscode", "factory": "./src/migrations/update-10-3-0/add-jest-extension", "package": "@nrwl/jest", "name": "add-jest-extension" }, { "version": "10.4.0-beta.0", "description": "Update ESLint config files to use preset configs which eslint-plugin-nx exports", "factory": "./src/migrations/update-10-4-0/update-eslint-configs-to-use-nx-presets", "package": "@nrwl/linter", "name": "update-eslint-configs-to-use-nx-presets" }, { "version": "10.4.0-beta.1", "description": "Update root ESLint config to use overrides", "factory": "./src/migrations/update-10-4-0/update-root-eslint-config-to-use-overrides", "package": "@nrwl/linter", "name": "update-root-eslint-config-to-use-overrides" } ] }

nx.json

`
{
"npmScope": "static-it",
"affected": {
"defaultBase": "master"
},
"implicitDependencies": {
"workspace.json": "",
"package.json": {
"dependencies": "
",
"devDependencies": ""
},
"tsconfig.base.json": "
",
"nx.json": "*"
},
"tasksRunnerOptions": {
"default": {
"runner": "@nrwl/workspace/tasks-runners/default",
"options": {
"cacheableOperations": ["build", "lint", "test", "e2e"]
}
}
},
"projects": {
"reference-data-portal": {
"tags": ["scope:reference-data-portal", "type:app"]
},
"reference-data-portal-e2e": {
"tags": ["scope:reference-data-portal"],
"implicitDependencies": ["reference-data-portal"]
},
"esg-feature-esg": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-request-input": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-info-pages": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-venue": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-cms": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-bbg-template": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-mifid": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-sanction": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-instrument-search": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"shared-utils-config": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-material": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-pipes": {
"tags": ["scope:shared", "type:util"]
},
"shared-playground-playground-request-list": {
"tags": ["scope:playground", "type:playground"]
},
"facades-data-access-request": {
"tags": ["scope:shared", "type:facade"]
},
"shared-interfaces-interface-other": {
"tags": ["scope:shared", "type:interface"]
},
"shared-data-access": {
"tags": ["scope:shared", "type:data-access"]
},
"shared-auth": {
"tags": ["scope:shared", "type:auth"]
},
"shared-interfaces-interface-user-info": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-calendar": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-core": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-esg": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-issuer": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-mifid": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-operations": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-product-governance": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-task": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-bloomberg": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-config": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-instrument": {
"tags": ["scope:shared", "type:interface"]
},
"shared-interfaces-interface-request": {
"tags": ["scope:shared", "type:interface"]
},
"shared-utils-util-dialog-service": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-logging": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-feature-toggle": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-common": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-build-number": {
"tags": ["scope:shared", "type:util"]
},
"shared-utils-util-attachment": {
"tags": ["scope:shared", "type:util"]
},
"shared-ui-templates-company-information": {
"tags": ["scope:shared", "type:ui"]
},
"feature-operations-request": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-financial-calendars": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-operations-request-statistics": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-product-governance": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-esg": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-bloomberg-lookup": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"feature-task": {
"tags": ["scope:reference-data-portal", "type:feature"]
},
"shared-ui-main-ui": {
"tags": ["scope:shared", "type:ui"]
},
"shared-ui-icons": {
"tags": ["scope:shared", "type:ui"]
}
}
}

`

Workspace.json
{ "version": 1, "projects": { "reference-data-portal": { "projectType": "application", "schematics": { "@schematics/angular:component": { "style": "scss", "changeDetection": "OnPush" } }, "root": "apps/reference-data-portal", "sourceRoot": "apps/reference-data-portal/src", "prefix": "static-it", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/apps/reference-data-portal", "index": "apps/reference-data-portal/src/index.html", "main": "apps/reference-data-portal/src/main.ts", "polyfills": "apps/reference-data-portal/src/polyfills.ts", "tsConfig": "apps/reference-data-portal/tsconfig.app.json", "aot": true, "assets": [ "apps/reference-data-portal/src/favicon.ico", "apps/reference-data-portal/src/assets" ], "styles": [ "libs/shared/ui/main-ui/src/lib/styles/styles.scss" ], "scripts": [ "./node_modules/jquery/dist/jquery.js", "./node_modules/chart.js/dist/Chart.bundle.min.js" ], "allowedCommonJsDependencies": [ "lodash", "chart.js", "file-saver", "xlsx" ] }, "configurations": { "production": { "fileReplacements": [ { "replace": "apps/reference-data-portal/src/environments/environment.ts", "with": "apps/reference-data-portal/src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } }, "outputs": [ "{options.outputPath}" ] }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "reference-data-portal:build" }, "configurations": { "production": { "browserTarget": "reference-data-portal:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "reference-data-portal:build" } }, "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "apps/reference-data-portal/tsconfig.app.json", "apps/reference-data-portal/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!apps/reference-data-portal/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "apps/reference-data-portal/jest.config.js", "passWithNoTests": true, "tsConfig": "apps/reference-data-portal/tsconfig.spec.json" }, "outputs": [ "coverage/apps/reference-data-portal" ] } } }, "reference-data-portal-e2e": { "root": "apps/reference-data-portal-e2e", "projectType": "application", "architect": { "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "apps/reference-data-portal-e2e/protractor.conf.js", "devServerTarget": "reference-data-portal:serve" }, "configurations": { "production": { "devServerTarget": "reference-data-portal:serve:production" } } }, "lint": { "builder": "@angular-devkit/build-angular:browser", "options": { "tsConfig": "apps/reference-data-portal-e2e/tsconfig.e2e.json", "exclude": [ "**/node_modules/**", "!apps/reference-data-portal-e2e/**/*" ] }, "outputs": [ "{options.outputPath}" ] } } }, "esg-feature-esg": { "projectType": "library", "root": "libs/esg/feature-esg", "sourceRoot": "libs/esg/feature-esg/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/esg/feature-esg/tsconfig.lib.json", "libs/esg/feature-esg/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/esg/feature-esg/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/esg/feature-esg/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/esg/feature-esg/tsconfig.spec.json" }, "outputs": [ "coverage/libs/esg/feature-esg" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-config": { "projectType": "library", "root": "libs/shared/utils/config", "sourceRoot": "libs/shared/utils/config/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/config/tsconfig.lib.json", "libs/shared/utils/config/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/config/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/config/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/config/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/config" ] } }, "schematics": {} }, "shared-utils-material": { "projectType": "library", "root": "libs/shared/utils/material", "sourceRoot": "libs/shared/utils/material/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/material/tsconfig.lib.json", "libs/shared/utils/material/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/material/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/material/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/material/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/material" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-pipes": { "projectType": "library", "root": "libs/shared/utils/util-pipes", "sourceRoot": "libs/shared/utils/util-pipes/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-pipes/tsconfig.lib.json", "libs/shared/utils/util-pipes/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-pipes/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-pipes/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-pipes/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-pipes" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-playground-playground-request-list": { "projectType": "library", "root": "libs/shared/playground/playground-request-list", "sourceRoot": "libs/shared/playground/playground-request-list/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/playground/playground-request-list/tsconfig.lib.json", "libs/shared/playground/playground-request-list/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/playground/playground-request-list/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/playground/playground-request-list/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/playground/playground-request-list/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/playground/playground-request-list" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "facades-data-access-request": { "projectType": "library", "root": "libs/facades/data-access-request", "sourceRoot": "libs/facades/data-access-request/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/facades/data-access-request/tsconfig.lib.json", "libs/facades/data-access-request/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/facades/data-access-request/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/facades/data-access-request/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/facades/data-access-request/tsconfig.spec.json" }, "outputs": [ "coverage/libs/facades/data-access-request" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-data-access": { "projectType": "library", "root": "libs/shared/data-access", "sourceRoot": "libs/shared/data-access/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/data-access/tsconfig.lib.json", "libs/shared/data-access/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/data-access/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/data-access/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/data-access/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/data-access" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-auth": { "projectType": "library", "root": "libs/shared/auth", "sourceRoot": "libs/shared/auth/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/auth/tsconfig.lib.json", "libs/shared/auth/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/auth/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/auth/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/auth/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/auth" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-interfaces-interface-other": { "root": "libs/shared/interfaces/interface-other", "sourceRoot": "libs/shared/interfaces/interface-other/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-other/tsconfig.lib.json", "libs/shared/interfaces/interface-other/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-other/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-other/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-other/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-other" ] } } }, "shared-interfaces-interface-user-info": { "root": "libs/shared/interfaces/interface-user-info", "sourceRoot": "libs/shared/interfaces/interface-user-info/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-user-info/tsconfig.lib.json", "libs/shared/interfaces/interface-user-info/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-user-info/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-user-info/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-user-info/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-user-info" ] } } }, "shared-interfaces-interface-calendar": { "root": "libs/shared/interfaces/interface-calendar", "sourceRoot": "libs/shared/interfaces/interface-calendar/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-calendar/tsconfig.lib.json", "libs/shared/interfaces/interface-calendar/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-calendar/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-calendar/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-calendar/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-calendar" ] } } }, "shared-interfaces-interface-core": { "root": "libs/shared/interfaces/interface-core", "sourceRoot": "libs/shared/interfaces/interface-core/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-core/tsconfig.lib.json", "libs/shared/interfaces/interface-core/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-core/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-core/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-core/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-core" ] } } }, "shared-interfaces-interface-esg": { "root": "libs/shared/interfaces/interface-esg", "sourceRoot": "libs/shared/interfaces/interface-esg/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-esg/tsconfig.lib.json", "libs/shared/interfaces/interface-esg/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-esg/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-esg/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-esg/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-esg" ] } } }, "shared-interfaces-interface-issuer": { "root": "libs/shared/interfaces/interface-issuer", "sourceRoot": "libs/shared/interfaces/interface-issuer/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-issuer/tsconfig.lib.json", "libs/shared/interfaces/interface-issuer/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-issuer/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-issuer/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-issuer/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-issuer" ] } } }, "shared-interfaces-interface-mifid": { "root": "libs/shared/interfaces/interface-mifid", "sourceRoot": "libs/shared/interfaces/interface-mifid/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-mifid/tsconfig.lib.json", "libs/shared/interfaces/interface-mifid/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-mifid/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-mifid/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-mifid/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-mifid" ] } } }, "shared-interfaces-interface-operations": { "root": "libs/shared/interfaces/interface-operations", "sourceRoot": "libs/shared/interfaces/interface-operations/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-operations/tsconfig.lib.json", "libs/shared/interfaces/interface-operations/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-operations/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-operations/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-operations/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-operations" ] } } }, "shared-interfaces-interface-product-governance": { "root": "libs/shared/interfaces/interface-product-governance", "sourceRoot": "libs/shared/interfaces/interface-product-governance/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-product-governance/tsconfig.lib.json", "libs/shared/interfaces/interface-product-governance/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-product-governance/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-product-governance/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-product-governance/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-product-governance" ] } } }, "shared-interfaces-interface-task": { "root": "libs/shared/interfaces/interface-task", "sourceRoot": "libs/shared/interfaces/interface-task/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-task/tsconfig.lib.json", "libs/shared/interfaces/interface-task/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-task/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-task/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-task/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-task" ] } } }, "shared-interfaces-interface-bloomberg": { "root": "libs/shared/interfaces/interface-bloomberg", "sourceRoot": "libs/shared/interfaces/interface-bloomberg/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-bloomberg/tsconfig.lib.json", "libs/shared/interfaces/interface-bloomberg/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-bloomberg/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-bloomberg/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-bloomberg/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-bloomberg" ] } } }, "shared-interfaces-interface-config": { "root": "libs/shared/interfaces/interface-config", "sourceRoot": "libs/shared/interfaces/interface-config/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-config/tsconfig.lib.json", "libs/shared/interfaces/interface-config/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-config/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-config/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-config/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-config" ] } } }, "shared-interfaces-interface-instrument": { "root": "libs/shared/interfaces/interface-instrument", "sourceRoot": "libs/shared/interfaces/interface-instrument/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-instrument/tsconfig.lib.json", "libs/shared/interfaces/interface-instrument/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-instrument/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-instrument/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-instrument/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-instrument" ] } } }, "shared-interfaces-interface-request": { "root": "libs/shared/interfaces/interface-request", "sourceRoot": "libs/shared/interfaces/interface-request/src", "projectType": "library", "schematics": {}, "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "linter": "eslint", "tsConfig": [ "libs/shared/interfaces/interface-request/tsconfig.lib.json", "libs/shared/interfaces/interface-request/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/interfaces/interface-request/**/*" ] } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/interfaces/interface-request/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/interfaces/interface-request/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/interfaces/interface-request" ] } } }, "shared-utils-util-dialog-service": { "projectType": "library", "root": "libs/shared/utils/util-dialog-service", "sourceRoot": "libs/shared/utils/util-dialog-service/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-dialog-service/tsconfig.lib.json", "libs/shared/utils/util-dialog-service/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-dialog-service/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-dialog-service/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-dialog-service/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-dialog-service" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-logging": { "projectType": "library", "root": "libs/shared/utils/util-logging", "sourceRoot": "libs/shared/utils/util-logging/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-logging/tsconfig.lib.json", "libs/shared/utils/util-logging/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-logging/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-logging/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-logging/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-logging" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-feature-toggle": { "projectType": "library", "root": "libs/shared/utils/util-feature-toggle", "sourceRoot": "libs/shared/utils/util-feature-toggle/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-feature-toggle/tsconfig.lib.json", "libs/shared/utils/util-feature-toggle/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-feature-toggle/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-feature-toggle/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-feature-toggle/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-feature-toggle" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-common": { "projectType": "library", "root": "libs/shared/utils/util-common", "sourceRoot": "libs/shared/utils/util-common/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-common/tsconfig.lib.json", "libs/shared/utils/util-common/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-common/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-common/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-common/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-common" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-info-pages": { "projectType": "library", "root": "libs/feature-info-pages", "sourceRoot": "libs/feature-info-pages/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-info-pages/tsconfig.lib.json", "libs/feature-info-pages/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-info-pages/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-info-pages/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-info-pages/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-info-pages" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-build-number": { "projectType": "library", "root": "libs/shared/utils/util-build-number", "sourceRoot": "libs/shared/utils/util-build-number/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-build-number/tsconfig.lib.json", "libs/shared/utils/util-build-number/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-build-number/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-build-number/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-build-number/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-build-number" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-cms": { "projectType": "library", "root": "libs/feature-cms", "sourceRoot": "libs/feature-cms/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-cms/tsconfig.lib.json", "libs/feature-cms/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-cms/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-cms/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-cms/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-cms" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-utils-util-attachment": { "projectType": "library", "root": "libs/shared/utils/util-attachment", "sourceRoot": "libs/shared/utils/util-attachment/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/utils/util-attachment/tsconfig.lib.json", "libs/shared/utils/util-attachment/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/utils/util-attachment/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/utils/util-attachment/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/utils/util-attachment/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/utils/util-attachment" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-venue": { "projectType": "library", "root": "libs/feature-venue", "sourceRoot": "libs/feature-venue/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-venue/tsconfig.lib.json", "libs/feature-venue/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-venue/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-venue/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-venue/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-venue" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-request-input": { "projectType": "library", "root": "libs/feature-request-input", "sourceRoot": "libs/feature-request-input/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-request-input/tsconfig.lib.json", "libs/feature-request-input/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-request-input/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-request-input/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-request-input/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-request-input" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-mifid": { "projectType": "library", "root": "libs/feature-mifid", "sourceRoot": "libs/feature-mifid/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-mifid/tsconfig.lib.json", "libs/feature-mifid/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-mifid/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-mifid/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-mifid/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-mifid" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-sanction": { "projectType": "library", "root": "libs/feature-sanction", "sourceRoot": "libs/feature-sanction/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-sanction/tsconfig.lib.json", "libs/feature-sanction/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-sanction/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-sanction/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-sanction/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-sanction" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-ui-templates-company-information": { "projectType": "library", "root": "libs/shared/ui/templates/company-information", "sourceRoot": "libs/shared/ui/templates/company-information/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/ui/templates/company-information/tsconfig.lib.json", "libs/shared/ui/templates/company-information/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/ui/templates/company-information/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/ui/templates/company-information/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/ui/templates/company-information/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/ui/templates/company-information" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-bbg-template": { "projectType": "library", "root": "libs/feature-bbg-template", "sourceRoot": "libs/feature-bbg-template/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-bbg-template/tsconfig.lib.json", "libs/feature-bbg-template/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-bbg-template/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-bbg-template/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-bbg-template/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-bbg-template" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-instrument-search": { "projectType": "library", "root": "libs/feature-instrument-search", "sourceRoot": "libs/feature-instrument-search/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-instrument-search/tsconfig.lib.json", "libs/feature-instrument-search/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-instrument-search/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-instrument-search/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-instrument-search/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-instrument-search" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-operations-request": { "projectType": "library", "root": "libs/feature-operations-request", "sourceRoot": "libs/feature-operations-request/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-operations-request/tsconfig.lib.json", "libs/feature-operations-request/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-operations-request/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-operations-request/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-operations-request/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-operations-request" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-financial-calendars": { "projectType": "library", "root": "libs/feature-financial-calendars", "sourceRoot": "libs/feature-financial-calendars/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-financial-calendars/tsconfig.lib.json", "libs/feature-financial-calendars/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-financial-calendars/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-financial-calendars/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-financial-calendars/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-financial-calendars" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-operations-request-statistics": { "projectType": "library", "root": "libs/feature-operations-request-statistics", "sourceRoot": "libs/feature-operations-request-statistics/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-operations-request-statistics/tsconfig.lib.json", "libs/feature-operations-request-statistics/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-operations-request-statistics/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-operations-request-statistics/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-operations-request-statistics/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-operations-request-statistics" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-product-governance": { "projectType": "library", "root": "libs/feature-product-governance", "sourceRoot": "libs/feature-product-governance/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-product-governance/tsconfig.lib.json", "libs/feature-product-governance/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-product-governance/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-product-governance/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-product-governance/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-product-governance" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-esg": { "projectType": "library", "root": "libs/feature-esg", "sourceRoot": "libs/feature-esg/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-esg/tsconfig.lib.json", "libs/feature-esg/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-esg/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-esg/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-esg/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-esg" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-bloomberg-lookup": { "projectType": "library", "root": "libs/feature-bloomberg-lookup", "sourceRoot": "libs/feature-bloomberg-lookup/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-bloomberg-lookup/tsconfig.lib.json", "libs/feature-bloomberg-lookup/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-bloomberg-lookup/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-bloomberg-lookup/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-bloomberg-lookup/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-bloomberg-lookup" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "feature-task": { "projectType": "library", "root": "libs/feature-task", "sourceRoot": "libs/feature-task/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/feature-task/tsconfig.lib.json", "libs/feature-task/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/feature-task/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/feature-task/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/feature-task/tsconfig.spec.json" }, "outputs": [ "coverage/libs/feature-task" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-ui-main-ui": { "projectType": "library", "root": "libs/shared/ui/main-ui", "sourceRoot": "libs/shared/ui/main-ui/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/ui/main-ui/tsconfig.lib.json", "libs/shared/ui/main-ui/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/ui/main-ui/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/ui/main-ui/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/ui/main-ui/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/ui/main-ui" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } }, "shared-ui-icons": { "projectType": "library", "root": "libs/shared/ui/icons", "sourceRoot": "libs/shared/ui/icons/src", "prefix": "static-it", "architect": { "lint": { "builder": "@nrwl/linter:lint", "options": { "tsConfig": [ "libs/shared/ui/icons/tsconfig.lib.json", "libs/shared/ui/icons/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**", "!libs/shared/ui/icons/**/*" ], "linter": "eslint" } }, "test": { "builder": "@nrwl/jest:jest", "options": { "jestConfig": "libs/shared/ui/icons/jest.config.js", "passWithNoTests": true, "tsConfig": "libs/shared/ui/icons/tsconfig.spec.json" }, "outputs": [ "coverage/libs/shared/ui/icons" ] } }, "schematics": { "@schematics/angular:component": { "style": "scss" } } } }, "cli": { "defaultCollection": "@nrwl/angular" }, "schematics": { "@nrwl/angular:application": { "unitTestRunner": "jest", "e2eTestRunner": "protractor", "strict": true }, "@nrwl/angular:library": { "unitTestRunner": "jest", "strict": true } }, "defaultProject": "reference-data-portal" }

Dependencies:
"dependencies": { "@angular-devkit/architect": "^0.1001.7", "@angular/animations": "11.0.3", "@angular/cdk": "^10.2.7", "@angular/cli": "11.0.5", "@angular/common": "11.0.3", "@angular/compiler": "11.0.3", "@angular/core": "11.0.3", "@angular/flex-layout": "^10.0.0-beta.32", "@angular/forms": "11.0.3", "@angular/localize": "^10.2.1", "@angular/material": "^10.2.7", "@angular/material-moment-adapter": "^10.2.7", "@angular/platform-browser": "11.0.3", "@angular/platform-browser-dynamic": "11.0.3", "@angular/router": "11.0.3", "@angular/service-worker": "11.0.3", "@briebug/jest-schematic": "^2.2.0", "@material/textfield": "^7.0.0", "@microsoft/signalr": "^3.1.9", "@ngneat/until-destroy": "^8.0.3", "@ngtools/webpack": "^10.2.0", "@ngxs-labs/dispatch-decorator": "^2.1.0", "@ngxs-labs/select-snapshot": "^2.0.1", "@ngxs/form-plugin": "^3.7.0", "@ngxs/logger-plugin": "^3.7.0", "@ngxs/router-plugin": "^3.7.0", "@ngxs/storage-plugin": "^3.7.0", "@ngxs/store": "^3.7.0", "@nrwl/linter": "11.0.16", "@phenomnomnominal/tsquery": "^4.1.1", "@popperjs/core": "^2.5.4", "@schematics/angular": "^10.2.0", "@types/chart.js": "^2.9.27", "@types/vscode": "^1.50.0", "awesome-typescript-loader": "^5.2.1", "brotli": "^1.3.2", "chart.js": "^2.9.4", "chokidar": "^3.4.3", "classlist.js": "^1.1.20150312", "core-js": "^3.6.5", "eslint-plugin-jsx-a11y": "^6.4.1", "eslint-plugin-react": "^7.21.5", "eslint-plugin-react-hooks": "^4.2.0", "file-saver": "^2.0.2", "fs": "0.0.1-security", "graphviz": "0.0.9", "guid-typescript": "^1.0.9", "http-server": "^0.12.3", "inquirer-autocomplete-prompt": "^1.3.0", "jest-preset-angular": "^8.3.2", "lodash": "^4.17.20", "moment": "^2.29.1", "ng-inline-svg": "^11.0.1", "ng2-charts": "^2.4.2", "ngx-build-plus": "^10.1.1", "ngx-logger": "^4.1.9", "ngx-quicklink": "^0.2.6", "node-sass": "^4.14.0", "npx": "^10.2.2", "rdplibrary-logging-service": "0.0.5", "rxjs": "^6.6.3", "signalr": "^2.4.1", "stylelint": "^13.7.2", "stylelint-config-prettier": "^8.0.2", "stylelint-config-standard": "^20.0.0", "stylelint-scss": "^3.18.0", "ts-loader": "^8.0.11", "ts-transformer-keys": "^0.4.2", "tslib": "^2.0.3", "tslint": "6.1.3", "ttypescript": "^1.5.12", "vscode-test": "^1.4.1", "web-animations-js": "^2.3.2", "webpack": "^4.44.2", "xlsx": "^0.16.8", "zone.js": "^0.11.2" }, "devDependencies": { "@angular-builders/custom-webpack": "10.0.0", "@angular-devkit/build-angular": "0.1100.5", "@angular-eslint/builder": "^0.8.0-beta.3", "@angular-eslint/eslint-plugin": "^0.8.0-beta.3", "@angular-eslint/eslint-plugin-template": "^0.8.0-beta.3", "@angular-eslint/schematics": "^0.8.0-beta.3", "@angular-eslint/template-parser": "^0.8.0-beta.3", "@angular/compiler-cli": "11.0.3", "@angular/language-service": "11.0.3", "@commitlint/cli": "^11.0.0", "@commitlint/config-conventional": "^11.0.0", "@ngxs/devtools-plugin": "^3.7.0", "@nrwl/angular": "11.0.16", "@nrwl/eslint-plugin-nx": "11.0.16", "@nrwl/jest": "11.0.16", "@nrwl/workspace": "11.0.16", "@types/file-saver": "^2.0.1", "@types/jasmine": "3.6.2", "@types/jasminewd2": "~2.0.8", "@types/jest": "^26.0.15", "@types/lodash": "^4.14.164", "@types/node": "12.12.38", "@types/signalr": "^2.2.36", "@types/webpack": "^4.41.24", "@typescript-eslint/eslint-plugin": "^4.6.1", "@typescript-eslint/parser": "^4.6.1", "codelyzer": "6.0.0", "config": "^3.3.2", "dotenv": "6.2.0", "eslint": "^7.12.1", "eslint-config-airbnb-base": "^14.2.0", "eslint-config-airbnb-typescript": "^10.0.2", "eslint-config-prettier": "^6.15.0", "eslint-plugin-html": "^6.1.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-prettier": "^3.1.4", "husky": "^4.3.0", "jasmine-core": "3.6.0", "jasmine-spec-reporter": "5.0.2", "jest": "^26.6.2", "jest-preset-angular": "8.3.1", "lint-staged": "^10.5.1", "npm-run-all": "^4.1.5", "prettier": "^2.1.2", "prettier-eslint": "^11.0.0", "protractor": "7.0.0", "ts-jest": "26.4.0", "ts-node": "9.1.1", "tslint-eslint-rules": "^5.4.0", "typescript": "4.0.2", "webpack-bundle-analyzer": "^4.1.0" }

Failure Logs

Failure Log from: Index Html generation failed
0 info it worked if it ends with ok 1 verbose cli [ 1 verbose cli 'C:\\Program Files\\nodejs\\node.exe', 1 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js', 1 verbose cli 'run', 1 verbose cli 'build' 1 verbose cli ] 2 info using npm@6.14.5 3 info using node@v14.4.0 4 verbose run-script [ 'prebuild', 'build', 'postbuild' ] 5 info lifecycle static-it@0.0.0~prebuild: static-it@0.0.0 6 info lifecycle static-it@0.0.0~build: static-it@0.0.0 7 verbose lifecycle static-it@0.0.0~build: unsafe-perm in lifecycle true 8 verbose lifecycle static-it@0.0.0~build: PATH: C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\be5593\source\repos\ANGULAR\SmfPortalAngular-1\node_modules\.bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\ISIS\isiscomm\w3\lib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\IBM\Notes\;C:\Program Files (x86)\IBM\Personal Communications\;C:\Program Files (x86)\IBM\Trace Facility\;C:\Program Files (x86)\Enterprise Vault\EVClient\;C:\Program Files (x86)\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\ibm\gsk8\lib;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\Git\cmd;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\nodejs\;C:\Program Files\nodejs;C:\Program Files\Graphviz 2.44.1\bin;;C:\Program Files\Azure Data Studio\bin;C:\Users\be5593\AppData\Local\Microsoft\WindowsApps;C:\Users\be5593\AppData\Roaming\npm;C:\Users\be5593\AppData\Local\Programs\Microsoft VS Code\bin;C:\Program Files\Graphviz 2.44.1\bin; 9 verbose lifecycle static-it@0.0.0~build: CWD: C:\Users\be5593\source\repos\ANGULAR\SmfPortalAngular-1 10 silly lifecycle static-it@0.0.0~build: Args: [ '/d /s /c', 'nx build --prod' ] 11 silly lifecycle static-it@0.0.0~build: Returned: code: 1 signal: null 12 info lifecycle static-it@0.0.0~build: Failed to exec build script 13 verbose stack Error: static-it@0.0.0 build:nx build --prod13 verbose stack Exit status 1 13 verbose stack at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:332:16) 13 verbose stack at EventEmitter.emit (events.js:315:20) 13 verbose stack at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14) 13 verbose stack at ChildProcess.emit (events.js:315:20) 13 verbose stack at maybeClose (internal/child_process.js:1051:16) 13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5) 14 verbose pkgid static-it@0.0.0 15 verbose cwd C:\Users\be5593\source\repos\ANGULAR\SmfPortalAngular-1 16 verbose Windows_NT 10.0.17763 17 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "build" 18 verbose node v14.4.0 19 verbose npm v6.14.5 20 error code ELIFECYCLE 21 error errno 1 22 error static-it@0.0.0 build:nx build --prod`
22 error Exit status 1
23 error Failed at the static-it@0.0.0 build script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

`

Environment

Node : 14.4.0
OS : win32 x64
yarn : 1.22.10

nx : 11.0.16
@nrwl/angular : 11.0.16
@nrwl/cli : 11.0.16
@nrwl/cypress : 11.0.16
@nrwl/devkit : 11.0.16
@nrwl/eslint-plugin-nx : 11.0.16
@nrwl/express : Not Found
@nrwl/jest : 11.0.16
@nrwl/linter : 11.0.16
@nrwl/nest : Not Found
@nrwl/next : Not Found
@nrwl/node : Not Found
@nrwl/react : Not Found
@nrwl/schematics : Not Found
@nrwl/tao : 11.0.16
@nrwl/web : Not Found
@nrwl/workspace : 11.0.16
typescript : 4.0.2

@vsavkin
Copy link
Member

vsavkin commented Dec 22, 2020

@sskieller thanks for submitting the issue. Can you provide a repo with a repro?

@vsavkin vsavkin added the scope: angular Issues related to Angular support in Nx label Dec 22, 2020
@sskieller
Copy link
Author

@vsavkin yes, probably done with it tomorrow :)

@sskieller
Copy link
Author

@vsavkin I had to add the projects as zip files, since I don't have access to github from my workplace, something something, proxy, it-being-obnoxious

Anyways: here it is, before and after update: https://github.com/sskieller/nx-11-index-html-generation-failed

@sskieller
Copy link
Author

@vsavkin Any news on this? :)

@stahloss
Copy link

stahloss commented Jan 4, 2021

Same issue here...

@sskieller
Copy link
Author

@vsavkin Any progress on this? There is a repro in my link.

@danielsogl
Copy link
Contributor

I've noticed the same issue in one of my projects when running a prod build inside docker/jenkins. When I build my project on my local machine it runnes trough.
Could it be a problem coused by hardware limitations?

@brandonroberts
Copy link
Contributor

@sskieller can you provide an unzipped version of the repo with the before/after changes?

@danielsogl
Copy link
Contributor

I found the error for our environment. The problem was font optimisation. When you import fonts in your index.html the build could fail because of proxy issues (one possible reason). I moved the imports from the index.html to the styles.scss file.

@brandonroberts
Copy link
Contributor

Thanks @danielsogl

@github-actions
Copy link

This issue has been automatically marked as stale because it hasn't had any recent activity. It will be closed in 14 days if no further activity occurs.
If we missed this issue please reply to keep it active.
Thanks for being a part of the Nx community! 🙏

@anuj9196
Copy link

I'm also getting such error on running ng build after upgrading to Angular 12

✔ Browser application bundle generation complete.
✔ ES5 bundle generation complete.
✔ Copying assets complete.
✖ Index html generation failed.
undefined:6:720366: missing '}'

Here is the angular.json file

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "quiz": {
      "projectType": "application",
      "schematics": {
        "@schematics/angular:component": {
          "style": "scss"
        }
      },
      "root": "",
      "sourceRoot": "src",
      "prefix": "app",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist/quiz",
            "index": "src/index.html",
            "main": "src/main.ts",
            "polyfills": "src/polyfills.ts",
            "tsConfig": "tsconfig.app.json",
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ],
            "styles": [
              "src/styles.scss"
            ],
            "scripts": []
          },
          "configurations": {
            "production": {
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.prod.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "namedChunks": false,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "2mb",
                  "maximumError": "5mb"
                },
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ]
            },
            "ec": {
              "budgets": [
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ]
            },
            "hmr": {
              "budgets": [
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ],
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.hmr.ts"
                }
              ]
            }
          }
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
            "browserTarget": "quiz:build"
          },
          "configurations": {
            "production": {
              "browserTarget": "quiz:build:production"
            },
            "hmr": {
              "hmr": true,
              "browserTarget": "quiz:build:hmr"
            },
            "ec": {
              "browserTarget": "quiz:build:ec"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "quiz:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/test.ts",
            "polyfills": "src/polyfills.ts",
            "tsConfig": "tsconfig.spec.json",
            "karmaConfig": "karma.conf.js",
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ],
            "styles": [
              "src/styles.scss"
            ],
            "scripts": []
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "tsconfig.app.json",
              "tsconfig.spec.json",
              "e2e/tsconfig.json"
            ],
            "exclude": [
              "**/node_modules/**"
            ]
          }
        },
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "e2e/protractor.conf.js",
            "devServerTarget": "quiz:serve"
          },
          "configurations": {
            "production": {
              "devServerTarget": "quiz:serve:production"
            }
          }
        }
      }
    }
  },
  "defaultProject": "quiz"
}

@rolfback
Copy link

rolfback commented May 15, 2021

I also get this error after upgrading to Angular 12, when building in production mode.

✖ Index html generation failed.
undefined:32:367177: property missing ':'

@anuj9196
Copy link

@rolfback where you able to solve this?

I have created a bug issue in the angular repository https://github.com/angular/angular/issues/42106

@inexuscore
Copy link

This is terrible, the log files aren't helpful at all. Upgraded to Angular 12, everything works fine (tooling, build, etc.) except the Index HTML file generation fails.

@anuj9196
Copy link

angular/angular-cli#20804 (comment)

Check this for temporary solution

@inexuscore
Copy link

@anuj9196 Thank you! LMAO I can't believe how many hours I wasted on this, wow! apparently, inline styles and data URIs break Angular 12's production build.

@mokth
Copy link

mokth commented May 27, 2021

Angular 12
add this into angular.json, it work for me :)

"optimization": {
               "scripts": true,
               "styles": {
                 "minify": true,
                 "inlineCritical": false
               },
               "fonts": false   
             }
           },        

@madkne
Copy link

madkne commented May 29, 2021

I upgrade from 11 to 12 and for prod build:
✖ Index html generation failed.
undefined:1:5153: property missing ':'

in angular.json :
"configurations": { "production": { "optimization": false, "optimization": false, "buildOptimizer": false, } }
it works for me!

@robvvv
Copy link

robvvv commented May 31, 2021

Setting optimization to false in the production configuration settings in angular.json (like madkne) also worked for me. But this makes the build much bigger. Didn't have to do it on all projects. It would be nice to be able to figure out the source of the error.

@worthy7
Copy link

worthy7 commented Jun 2, 2021

Just my two cents, my build didn't like this

@import url("https://fonts.googleapis.com/css?family=Poppins:300,400,400i,500,600,700,900");

or this

    @font-face {
      font-family: "Glyphicons Halflings";
      src: url(../../assets/landingpage/fonts/glyphicons-halflings-regular.eot);
      src: url(../../assets/landingpage/fonts/glyphicons-halflings-regular.eot?#iefix)
          format("embedded-opentype"),
        url(../../assets/landingpage/fonts/glyphicons-halflings-regular.woff2)
          format("woff2"),
        url(../../assets/landingpage/fonts/glyphicons-halflings-regular.woff)
          format("woff"),
        url(../../assets/landingpage/fonts/glyphicons-halflings-regular.ttf)
          format("truetype"),
        url(../../assets/landingpage/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular)
          format("svg");
    }

@raminassar
Copy link

In my case issue was because using // in .scss files instead of /* */

@worthy7
Copy link

worthy7 commented Jun 2, 2021

the @font-face { was actually something to do with it being inside another enclosure
app-landing-page { @font-face { font-family: "a"; } } causes the error.

I am just guessing here, but I THINK the way this is minified is wrong and that's the problem, because I saw this:
@font-face{app-landing-page{font-family:a}}

I am no expert, but I hope this can help.

I made a super basic repo here, just check the last commit, and try to build this (then look at the dist/styles.css)
https://github.com/worthy7/angular-base/tree/font-face-bug

@robvvv
Copy link

robvvv commented Jun 2, 2021

There are so many different issues I'm thinking it has to be an issue with how angular 12 is optimizing. I found my issue. It was in a css file from a third party product. There were some background images being imported through a url (background-image: url("data:image/svg+xml;charset=UTF-8,.....) Most of them were ok but a few I had to rem out to get it to compile.

@robvvv
Copy link

robvvv commented Jun 2, 2021

Looks like my issue is a known bug that will be resolved on this github issue: reworkcss/css#154

The workaround for now is to put this in the angular.json file to stop optimizing inline styling. Instead of optimization: true put this:

          "optimization": {
            "scripts": true,
            "styles": {
              "minify": true,
              "inlineCritical": false
            },
            "fonts": {
              "inline": true
            }
          },

Everything compiles and the builds are much smaller than with optimization false.

@worthy7
Copy link

worthy7 commented Jun 2, 2021 via email

@worthy7
Copy link

worthy7 commented Jun 2, 2021

It's something to do with webpack 5 is my theory.

@RadouaneRoufid
Copy link

RadouaneRoufid commented Jun 7, 2021

I have the same problem after upgrading to ng12.

I figured out that the root cause is the presence of a base64 url in one of my scss files :
background-image: url('data:image/png;base64,iVBORw0K...=') !important;

I have no error when commenting this line.

@mshirey
Copy link

mshirey commented Sep 1, 2021

For me, I only needed to set "inlineCritical": false. As my applications are internally used business solutions that are accessed repeatedly during the day, the "first paint" does not have the same priority it might with other applications. Therefore this settings does not have a significant impact. For others, it may be more important.

Does anyone know what the true root cause is for these issues? It would be great of there was some kind of build log that could shed some light on the actually problem. This "Index html generation failed" error is akin to "Something broke".

@github-actions
Copy link

This issue has been closed for more than 30 days. If this issue is still occuring, please open a new issue with more recent context.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests