diff --git a/integration/hello_world__closure/BUILD.bazel b/integration/hello_world__closure/BUILD.bazel
deleted file mode 100644
index 905707ba692..00000000000
--- a/integration/hello_world__closure/BUILD.bazel
+++ /dev/null
@@ -1,11 +0,0 @@
-load("//integration:index.bzl", "ng_integration_test")
-
-ng_integration_test(
- name = "test",
- # TODO: Re-enable size-tracking:
- # We should define ngDevMode to false in Closure, but --define only works in the global scope.
- # With ngDevMode not being set to false, this size tracking test provides little value but a lot of
- # headache to continue updating the size.
- # track_payload_size = "hello_world_closure",
- setup_chromium = True,
-)
diff --git a/integration/hello_world__closure/closure.conf b/integration/hello_world__closure/closure.conf
deleted file mode 100644
index 3d2fcdb95c0..00000000000
--- a/integration/hello_world__closure/closure.conf
+++ /dev/null
@@ -1,20 +0,0 @@
---compilation_level=SIMPLE
---language_in=ECMASCRIPT_2020
---language_out=ECMASCRIPT_2020
---js_output_file=dist/bundle.js
---output_manifest=dist/manifest.MF
---variable_renaming_report=dist/variable_renaming_report
---property_renaming_report=dist/property_renaming_report
---create_source_map=%outname%.map
-
---warning_level=QUIET
---dependency_mode=PRUNE
---rewrite_polyfills=false
-
---module_resolution=node
---package_json_entry_names es2020,module
-
-node_modules/zone.js/zone_externs.js
-
---js built/bundle.js
---entry_point=built/bundle.js
diff --git a/integration/hello_world__closure/e2e/app.e2e-spec.ts b/integration/hello_world__closure/e2e/app.e2e-spec.ts
deleted file mode 100644
index 04fadb25251..00000000000
--- a/integration/hello_world__closure/e2e/app.e2e-spec.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { browser, element, by } from 'protractor';
-
-describe('Hello world E2E Tests', function () {
- it('should display: Hello world!', function () {
- browser.get('');
- const div = element(by.css('div'));
- expect(div.getText()).toEqual('Hello world!');
- element(by.css('input')).sendKeys('!');
- expect(div.getText()).toEqual('Hello world!!');
- });
-});
diff --git a/integration/hello_world__closure/e2e/browser.config.json b/integration/hello_world__closure/e2e/browser.config.json
deleted file mode 100644
index d62ba608f47..00000000000
--- a/integration/hello_world__closure/e2e/browser.config.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "open": false,
- "logLevel": "silent",
- "port": 4202,
- "server": {
- "baseDir": "src",
- "routes": {
- "/dist": "dist",
- "/node_modules": "node_modules"
- },
- "middleware": {
- "0": null
- }
- }
-}
\ No newline at end of file
diff --git a/integration/hello_world__closure/e2e/protractor.config.js b/integration/hello_world__closure/e2e/protractor.config.js
deleted file mode 100644
index f8ff4a85e6b..00000000000
--- a/integration/hello_world__closure/e2e/protractor.config.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// Protractor configuration file, see link for more information
-// https://github.com/angular/protractor/blob/master/lib/config.ts
-exports.config = {
- specs: [
- '../built/e2e/*.e2e-spec.js'
- ],
- chromeDriver: process.env.CHROMEDRIVER_BIN,
- capabilities: {
- browserName: 'chrome',
- chromeOptions: {
- binary: process.env.CHROME_BIN,
- // See /integration/README.md#browser-tests for more info on these args
- args: ['--no-sandbox', '--headless', '--disable-gpu', '--disable-dev-shm-usage', '--hide-scrollbars', '--mute-audio']
- }
- },
- directConnect: true,
- // Port comes from lite-server config `/e2e/browser.config.json` `"port": 4202`
- baseUrl: 'http://localhost:4202/',
- framework: 'jasmine',
- useAllAngular2AppRoots: true
-};
diff --git a/integration/hello_world__closure/e2e/tsconfig.json b/integration/hello_world__closure/e2e/tsconfig.json
deleted file mode 100644
index b60faa75fdf..00000000000
--- a/integration/hello_world__closure/e2e/tsconfig.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "compilerOptions": {
- "outDir": "../built/e2e",
- "types": ["jasmine", "jasminewd2"],
- }
-}
diff --git a/integration/hello_world__closure/package.json b/integration/hello_world__closure/package.json
deleted file mode 100644
index ebc5b49b9b2..00000000000
--- a/integration/hello_world__closure/package.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "name": "angular-integration",
- "version": "0.0.0",
- "license": "MIT",
- "dependencies": {
- "@angular/common": "file:../../dist/packages-dist/common",
- "@angular/compiler": "file:../../dist/packages-dist/compiler",
- "@angular/compiler-cli": "file:../../dist/packages-dist/compiler-cli",
- "@angular/core": "file:../../dist/packages-dist/core",
- "@angular/elements": "file:../../dist/packages-dist/elements",
- "@angular/platform-browser": "file:../../dist/packages-dist/platform-browser",
- "rxjs": "file:../../node_modules/rxjs",
- "typescript": "file:../../node_modules/typescript",
- "tslib": "file:../../node_modules/tslib",
- "zone.js": "file:../../dist/zone.js-dist/archive/zone.js.tgz"
- },
- "devDependencies": {
- "@babel/core": "file:../../node_modules/@babel/core",
- "@rollup/plugin-babel": "file:../../node_modules/@rollup/plugin-babel",
- "@rollup/plugin-node-resolve": "file:../../node_modules/@rollup/plugin-node-resolve",
- "@types/jasmine": "file:../../node_modules/@types/jasmine",
- "@types/jasminewd2": "file:../../node_modules/@types/jasminewd2",
- "concurrently": "3.4.0",
- "google-closure-compiler": "file:../../node_modules/google-closure-compiler",
- "lite-server": "2.2.2",
- "protractor": "file:../../node_modules/protractor",
- "rollup": "file:../../node_modules/rollup",
- "tsickle": "file:../../node_modules/tsickle"
- },
- "scripts": {
- "closure": "google-closure-compiler --flagfile closure.conf",
- "build": "yarn ngc && yarn rollup -c rollup.config.mjs && yarn closure",
- "test": "yarn build && concurrently \"yarn run serve\" \"yarn run protractor\" --kill-others --success first",
- "serve": "lite-server -c e2e/browser.config.json",
- "preprotractor": "tsc -p e2e",
- "protractor": "protractor e2e/protractor.config.js"
- }
-}
diff --git a/integration/hello_world__closure/rollup.config.mjs b/integration/hello_world__closure/rollup.config.mjs
deleted file mode 100644
index 2ddcb493475..00000000000
--- a/integration/hello_world__closure/rollup.config.mjs
+++ /dev/null
@@ -1,27 +0,0 @@
-import {nodeResolve} from '@rollup/plugin-node-resolve';
-import {babel} from '@rollup/plugin-babel';
-import {ConsoleLogger, NodeJSFileSystem, LogLevel} from '@angular/compiler-cli';
-import {createEs2015LinkerPlugin} from '@angular/compiler-cli/linker/babel';
-
-/** File system used by the Angular linker plugin. */
-const fileSystem = new NodeJSFileSystem();
-/** Logger used by the Angular linker plugin. */
-const logger = new ConsoleLogger(LogLevel.info);
-/** Linker babel plugin. */
-const linkerPlugin = createEs2015LinkerPlugin({
- fileSystem,
- logger,
- linkerJitMode: false,
-});
-
-export default {
- input: './built/src/main.js',
- output: {
- file: './built/bundle.js',
- format: 'iife'
- },
- plugins: [
- nodeResolve(),
- babel({plugins: [linkerPlugin]}),
- ]
-}
\ No newline at end of file
diff --git a/integration/hello_world__closure/src/app.ts b/integration/hello_world__closure/src/app.ts
deleted file mode 100644
index 31ecac712b0..00000000000
--- a/integration/hello_world__closure/src/app.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import {HelloWorldComponent} from './hello-world.component';
-
-import {NgModule} from '@angular/core';
-import {BrowserModule} from '@angular/platform-browser';
-
-@NgModule({
- declarations: [HelloWorldComponent],
- bootstrap: [HelloWorldComponent],
- imports: [BrowserModule],
-})
-export class AppModule {}
diff --git a/integration/hello_world__closure/src/hello-world.component.ts b/integration/hello_world__closure/src/hello-world.component.ts
deleted file mode 100644
index 87b9ca39de8..00000000000
--- a/integration/hello_world__closure/src/hello-world.component.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-import {Component} from '@angular/core';
-
-@Component({
- selector: 'hello-world-app',
- template: `
-
Hello {{ name }}!
-
- `,
-})
-export class HelloWorldComponent {
- name: string = 'world';
-}
diff --git a/integration/hello_world__closure/src/index.html b/integration/hello_world__closure/src/index.html
deleted file mode 100644
index 5a1c1afc2df..00000000000
--- a/integration/hello_world__closure/src/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
- Hello World
-
-
-
-
- Loading...
-
-
-
-
-
-
-
diff --git a/integration/hello_world__closure/src/main.ts b/integration/hello_world__closure/src/main.ts
deleted file mode 100644
index 1870d726a81..00000000000
--- a/integration/hello_world__closure/src/main.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-import {platformBrowser} from '@angular/platform-browser';
-import {AppModule} from './app';
-
-platformBrowser().bootstrapModule(AppModule);
diff --git a/integration/hello_world__closure/tsconfig.json b/integration/hello_world__closure/tsconfig.json
deleted file mode 100644
index f9590ec2c35..00000000000
--- a/integration/hello_world__closure/tsconfig.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "angularCompilerOptions": {
- "annotationsAs": "static fields",
- "annotateForClosureCompiler": true,
- },
- "compilerOptions": {
- "module": "es2015",
- "moduleResolution": "node",
- "target": "es6",
- "noImplicitAny": false,
- "sourceMap": false,
- "experimentalDecorators": true,
- "outDir": "built",
- "rootDir": ".",
- "declaration": true,
- "types": []
- },
- "exclude": [
- "vendor",
- "node_modules",
- "built",
- "dist",
- "e2e"
- ]
-}
diff --git a/integration/i18n/BUILD.bazel b/integration/i18n/BUILD.bazel
deleted file mode 100644
index 45298ffe014..00000000000
--- a/integration/i18n/BUILD.bazel
+++ /dev/null
@@ -1,6 +0,0 @@
-load("//integration:index.bzl", "ng_integration_test")
-
-ng_integration_test(
- name = "test",
- setup_chromium = True,
-)
diff --git a/integration/i18n/closure.conf b/integration/i18n/closure.conf
deleted file mode 100644
index 3d2fcdb95c0..00000000000
--- a/integration/i18n/closure.conf
+++ /dev/null
@@ -1,20 +0,0 @@
---compilation_level=SIMPLE
---language_in=ECMASCRIPT_2020
---language_out=ECMASCRIPT_2020
---js_output_file=dist/bundle.js
---output_manifest=dist/manifest.MF
---variable_renaming_report=dist/variable_renaming_report
---property_renaming_report=dist/property_renaming_report
---create_source_map=%outname%.map
-
---warning_level=QUIET
---dependency_mode=PRUNE
---rewrite_polyfills=false
-
---module_resolution=node
---package_json_entry_names es2020,module
-
-node_modules/zone.js/zone_externs.js
-
---js built/bundle.js
---entry_point=built/bundle.js
diff --git a/integration/i18n/e2e/app.e2e-spec.ts b/integration/i18n/e2e/app.e2e-spec.ts
deleted file mode 100644
index afcc36025a6..00000000000
--- a/integration/i18n/e2e/app.e2e-spec.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { browser, element, by } from 'protractor';
-
-describe('i18n E2E Tests', function () {
- it('remove i18n attributes', function () {
- browser.get('');
- const div = element(by.css('div'));
- expect(div.getAttribute('title')).not.toBe(null);
- expect(div.getAttribute('i18n')).toBe(null);
- });
-});
diff --git a/integration/i18n/e2e/browser.config.json b/integration/i18n/e2e/browser.config.json
deleted file mode 100644
index 1c4310b2527..00000000000
--- a/integration/i18n/e2e/browser.config.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "open": false,
- "logLevel": "silent",
- "port": 4204,
- "server": {
- "baseDir": "src",
- "routes": {
- "/dist": "dist",
- "/node_modules": "node_modules"
- },
- "middleware": {
- "0": null
- }
- }
-}
\ No newline at end of file
diff --git a/integration/i18n/e2e/protractor.config.js b/integration/i18n/e2e/protractor.config.js
deleted file mode 100644
index cd2fb657131..00000000000
--- a/integration/i18n/e2e/protractor.config.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// Protractor configuration file, see link for more information
-// https://github.com/angular/protractor/blob/master/lib/config.ts
-exports.config = {
- specs: [
- '../built/e2e/*.e2e-spec.js'
- ],
- chromeDriver: process.env.CHROMEDRIVER_BIN,
- capabilities: {
- browserName: 'chrome',
- chromeOptions: {
- binary: process.env.CHROME_BIN,
- // See /integration/README.md#browser-tests for more info on these args
- args: ['--no-sandbox', '--headless', '--disable-gpu', '--disable-dev-shm-usage', '--hide-scrollbars', '--mute-audio']
- }
- },
- directConnect: true,
- // Port comes from lite-server config `/e2e/browser.config.json` `"port": 4204`
- baseUrl: 'http://localhost:4204/',
- framework: 'jasmine',
- useAllAngular2AppRoots: true
-};
diff --git a/integration/i18n/e2e/tsconfig.json b/integration/i18n/e2e/tsconfig.json
deleted file mode 100644
index b60faa75fdf..00000000000
--- a/integration/i18n/e2e/tsconfig.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "compilerOptions": {
- "outDir": "../built/e2e",
- "types": ["jasmine", "jasminewd2"],
- }
-}
diff --git a/integration/i18n/package.json b/integration/i18n/package.json
deleted file mode 100644
index d48d30f4e0e..00000000000
--- a/integration/i18n/package.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "name": "angular-integration",
- "version": "0.0.0",
- "license": "MIT",
- "dependencies": {
- "@angular/common": "file:../../dist/packages-dist/common",
- "@angular/compiler": "file:../../dist/packages-dist/compiler",
- "@angular/compiler-cli": "file:../../dist/packages-dist/compiler-cli",
- "@angular/core": "file:../../dist/packages-dist/core",
- "@angular/localize": "file:../../dist/packages-dist/localize",
- "@angular/platform-browser": "file:../../dist/packages-dist/platform-browser",
- "rxjs": "file:../../node_modules/rxjs",
- "tslib": "file:../../node_modules/tslib",
- "typescript": "file:../../node_modules/typescript",
- "zone.js": "file:../../dist/zone.js-dist/archive/zone.js.tgz"
- },
- "devDependencies": {
- "@babel/core": "file:../../node_modules/@babel/core",
- "@rollup/plugin-babel": "file:../../node_modules/@rollup/plugin-babel",
- "@rollup/plugin-node-resolve": "file:../../node_modules/@rollup/plugin-node-resolve",
- "@types/jasmine": "file:../../node_modules/@types/jasmine",
- "@types/jasminewd2": "file:../../node_modules/@types/jasminewd2",
- "concurrently": "3.4.0",
- "google-closure-compiler": "file:../../node_modules/google-closure-compiler",
- "lite-server": "2.2.2",
- "protractor": "file:../../node_modules/protractor",
- "rollup": "file:../../node_modules/rollup",
- "tsickle": "file:../../node_modules/tsickle"
- },
- "scripts": {
- "build": "yarn ngc && yarn rollup -c rollup.config.mjs && yarn closure",
- "closure": "google-closure-compiler --flagfile closure.conf",
- "test": "yarn build && concurrently \"yarn run serve\" \"yarn run protractor\" --kill-others --success first && yarn test-locale-folder",
- "test-locale-folder": "node test-locale-folder.js",
- "serve": "lite-server -c e2e/browser.config.json",
- "preprotractor": "tsc -p e2e",
- "protractor": "protractor e2e/protractor.config.js"
- }
-}
diff --git a/integration/i18n/rollup.config.mjs b/integration/i18n/rollup.config.mjs
deleted file mode 100644
index 2ddcb493475..00000000000
--- a/integration/i18n/rollup.config.mjs
+++ /dev/null
@@ -1,27 +0,0 @@
-import {nodeResolve} from '@rollup/plugin-node-resolve';
-import {babel} from '@rollup/plugin-babel';
-import {ConsoleLogger, NodeJSFileSystem, LogLevel} from '@angular/compiler-cli';
-import {createEs2015LinkerPlugin} from '@angular/compiler-cli/linker/babel';
-
-/** File system used by the Angular linker plugin. */
-const fileSystem = new NodeJSFileSystem();
-/** Logger used by the Angular linker plugin. */
-const logger = new ConsoleLogger(LogLevel.info);
-/** Linker babel plugin. */
-const linkerPlugin = createEs2015LinkerPlugin({
- fileSystem,
- logger,
- linkerJitMode: false,
-});
-
-export default {
- input: './built/src/main.js',
- output: {
- file: './built/bundle.js',
- format: 'iife'
- },
- plugins: [
- nodeResolve(),
- babel({plugins: [linkerPlugin]}),
- ]
-}
\ No newline at end of file
diff --git a/integration/i18n/src/app.ts b/integration/i18n/src/app.ts
deleted file mode 100644
index 31ecac712b0..00000000000
--- a/integration/i18n/src/app.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import {HelloWorldComponent} from './hello-world.component';
-
-import {NgModule} from '@angular/core';
-import {BrowserModule} from '@angular/platform-browser';
-
-@NgModule({
- declarations: [HelloWorldComponent],
- bootstrap: [HelloWorldComponent],
- imports: [BrowserModule],
-})
-export class AppModule {}
diff --git a/integration/i18n/src/hello-world.component.ts b/integration/i18n/src/hello-world.component.ts
deleted file mode 100644
index 5aabbddd930..00000000000
--- a/integration/i18n/src/hello-world.component.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import {Component} from '@angular/core';
-
-@Component({
- selector: 'hello-world-app',
- template: `Hello {{ name }}!
`,
-})
-export class HelloWorldComponent {
- name: string = 'world';
-}
diff --git a/integration/i18n/src/index.html b/integration/i18n/src/index.html
deleted file mode 100644
index 5a1c1afc2df..00000000000
--- a/integration/i18n/src/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
- Hello World
-
-
-
-
- Loading...
-
-
-
-
-
-
-
diff --git a/integration/i18n/src/main.ts b/integration/i18n/src/main.ts
deleted file mode 100644
index e7bf284bc87..00000000000
--- a/integration/i18n/src/main.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import '@angular/localize/init'
-
-import {platformBrowser} from '@angular/platform-browser';
-import {AppModule} from './app';
-
-platformBrowser().bootstrapModule(AppModule);
diff --git a/integration/i18n/test-locale-folder.js b/integration/i18n/test-locale-folder.js
deleted file mode 100644
index 13eef35f121..00000000000
--- a/integration/i18n/test-locale-folder.js
+++ /dev/null
@@ -1,14 +0,0 @@
-const fs = require('fs');
-const path = require('path');
-
-const packageJson = require('@angular/common/package.json');
-const localesFolder = packageJson['locales'];
-if (!localesFolder) {
- throw new Error(`@angular/common/package.json does not contain 'locales' entry.`)
-}
-const enLocalePath = `@angular/common/${localesFolder}/en`;
-try {
- require.resolve(enLocalePath);
-} catch (err) {
- throw new Error(`@angular/common does not contain 'en' locale in ${enLocalePath}.`)
-}
diff --git a/integration/i18n/tsconfig.json b/integration/i18n/tsconfig.json
deleted file mode 100644
index 150751592dc..00000000000
--- a/integration/i18n/tsconfig.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "angularCompilerOptions": {
- "annotationsAs": "static fields",
- "annotateForClosureCompiler": true,
- },
- "compilerOptions": {
- "module": "es2020",
- "moduleResolution": "node",
- "target": "es2020",
- "noImplicitAny": false,
- "sourceMap": false,
- "experimentalDecorators": true,
- "outDir": "built",
- "rootDir": ".",
- "declaration": true,
- "types": []
- },
-
- "exclude": [
- "vendor",
- "node_modules",
- "built",
- "dist",
- "e2e"
- ]
-}
diff --git a/integration/ng_elements/closure.conf b/integration/ng_elements/closure.conf
deleted file mode 100644
index 3d2fcdb95c0..00000000000
--- a/integration/ng_elements/closure.conf
+++ /dev/null
@@ -1,20 +0,0 @@
---compilation_level=SIMPLE
---language_in=ECMASCRIPT_2020
---language_out=ECMASCRIPT_2020
---js_output_file=dist/bundle.js
---output_manifest=dist/manifest.MF
---variable_renaming_report=dist/variable_renaming_report
---property_renaming_report=dist/property_renaming_report
---create_source_map=%outname%.map
-
---warning_level=QUIET
---dependency_mode=PRUNE
---rewrite_polyfills=false
-
---module_resolution=node
---package_json_entry_names es2020,module
-
-node_modules/zone.js/zone_externs.js
-
---js built/bundle.js
---entry_point=built/bundle.js
diff --git a/integration/ng_elements/package.json b/integration/ng_elements/package.json
index f39c27427fd..09d1e834f86 100644
--- a/integration/ng_elements/package.json
+++ b/integration/ng_elements/package.json
@@ -21,15 +21,13 @@
"@types/jasmine": "file:../../node_modules/@types/jasmine",
"@types/jasminewd2": "file:../../node_modules/@types/jasminewd2",
"concurrently": "3.4.0",
- "google-closure-compiler": "file:../../node_modules/google-closure-compiler",
"lite-server": "2.2.2",
"protractor": "file:../../node_modules/protractor",
"rollup": "file:../../node_modules/rollup",
"tsickle": "file:../../node_modules/tsickle"
},
"scripts": {
- "closure": "google-closure-compiler --flagfile closure.conf",
- "build": "yarn ngc && yarn rollup -c rollup.config.mjs && yarn closure",
+ "build": "yarn ngc && yarn rollup -c rollup.config.mjs",
"test": "yarn build && concurrently \"yarn run serve\" \"yarn run protractor\" --kill-others --success first",
"serve": "lite-server -c e2e/browser.config.json",
"preprotractor": "tsc -p e2e",
diff --git a/integration/npm_package_archives.bzl b/integration/npm_package_archives.bzl
index a0783370257..90723bd2a08 100644
--- a/integration/npm_package_archives.bzl
+++ b/integration/npm_package_archives.bzl
@@ -6,7 +6,6 @@ NPM_PACKAGE_ARCHIVES = [
"@rollup/plugin-node-resolve",
"@rollup/plugin-commonjs",
"check-side-effects",
- "google-closure-compiler",
"jasmine",
"typescript",
"rxjs",
diff --git a/package.json b/package.json
index 15f7293010c..6ffaa19f49c 100644
--- a/package.json
+++ b/package.json
@@ -117,7 +117,6 @@
"diff": "^5.0.0",
"document-register-element": "^1.7.2",
"domino": "https://github.com/angular/domino.git#4280d0380df839d97b81e7680877ad5b55500e77",
- "google-closure-compiler": "20230206.0.0",
"graceful-fs": "4.2.10",
"hammerjs": "~2.0.8",
"http-server": "^14.0.0",