Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
5cde83b
test(angular): add ng19 test app
brandyscarney Nov 25, 2024
4adbc8e
chore(angular): add test app to CI workflows
brandyscarney Nov 25, 2024
53e2dca
docs(angular): add missing step for running a test app
brandyscarney Nov 25, 2024
5b8ab33
add back polyfills
brandyscarney Nov 25, 2024
ca62104
server fixes
brandyscarney Nov 25, 2024
4725dfc
test(angular): lint
brandyscarney Nov 25, 2024
33396fd
test(angular): update angular config
brandyscarney Nov 26, 2024
0e9f3b9
test(angular): config changes
brandyscarney Nov 26, 2024
47b69c9
test(angular): move common e2e flies
brandyscarney Nov 26, 2024
87b4d1b
test(angular): update version test
brandyscarney Nov 26, 2024
655cbdd
test(angular): remove and update duplicated test files
brandyscarney Nov 26, 2024
8b31ce5
test(angular): lint
brandyscarney Nov 26, 2024
6aacb4a
test(angular): move duplicate files
brandyscarney Nov 26, 2024
803515f
test(angular): update app module
brandyscarney Nov 26, 2024
ed76218
test(angular): add back standalone true for backwards compat
brandyscarney Nov 26, 2024
a34e5c0
docs(angular): clarify process for adding new test app
brandyscarney Nov 27, 2024
c002219
test(angular): update so all versions pass lint
brandyscarney Nov 27, 2024
c6167c4
test(angular): only update the OnInit changes
brandyscarney Nov 27, 2024
f9b18fa
test(angular): update ng19 for ssr
brandyscarney Nov 27, 2024
30379cf
test(angular): update eslint to latest
brandyscarney Dec 2, 2024
668d00a
test(angular): ignore prefer standalone
brandyscarney Dec 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ jobs:
strategy:
fail-fast: false
matrix:
apps: [ng16, ng17, ng18]
apps: [ng16, ng17, ng18, ng19]
needs: [build-angular, build-angular-server]
runs-on: ubuntu-latest
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stencil-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ jobs:
strategy:
fail-fast: false
matrix:
apps: [ng16, ng17, ng18]
apps: [ng16, ng17, ng18, ng19]
needs: [build-angular, build-angular-server]
runs-on: ubuntu-latest
steps:
Expand Down
13 changes: 8 additions & 5 deletions docs/angular/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,13 @@ Ionic Framework supports multiple versions of Angular. As a result, we need to v

The Angular test app supports syncing your locally built changes for validation.

1. Build the `core` and `packages/angular` directories using `npm run build`.
2. [Build the Angular test app](#test-app-build-structure).
3. Navigate to the built test app directory (e.g. `packages/angular/test/build/ng14`).
4. Install dependencies using `npm install`.
5. Sync your local changes using `npm run sync`.
1. Build the `core` directory.
2. Navigate to `packages/angular` and run `npm run sync`.
3. Build `packages/angular` using `npm run build`.
4. [Build the Angular test app](#test-app-build-structure).
5. Navigate to the built test app directory (e.g. `packages/angular/test/build/ng14`).
6. Install dependencies using `npm install`.
7. Sync your local changes using `npm run sync`.

From here you can either build the application or start a local dev server. When re-syncing changes, you will need to [wipe or disable the application cache](#application-cache).

Expand Down Expand Up @@ -86,6 +88,7 @@ As we add support for new versions of Angular, we will also need to update this
2. Update the application by following the steps on https://update.angular.io/.
3. Make note of any files that changed during the upgrade (`package.json`, `package-lock.json`, `angular.json`, etc).
4. Copy the changed files to a new directory in `apps`.
- Do NOT copy the entire directory. The `test/base` directory contains shared files between all major versions. Only files that are different than previous major versions should be copied to the new directory in `apps`.
5. Add a new entry to the matrix for `test-core-angular` in `./github/workflows/build.yml`. This will allow the new test app to run against all PRs.
6. Commit these changes and push.

Expand Down
14 changes: 7 additions & 7 deletions packages/angular/test/apps/ng16/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,22 +41,22 @@
},
"devDependencies": {
"@angular-devkit/build-angular": "^16.0.0",
"@angular-eslint/builder": "^16.0.0",
"@angular-eslint/eslint-plugin": "^16.0.0",
"@angular-eslint/eslint-plugin-template": "^16.0.0",
"@angular-eslint/schematics": "^16.0.0",
"@angular-eslint/builder": "^16.3.1",
"@angular-eslint/eslint-plugin": "^16.3.1",
"@angular-eslint/eslint-plugin-template": "^16.3.1",
"@angular-eslint/schematics": "^16.3.1",
"@angular-eslint/template-parser": "^16.0.0",
"@angular/cli": "^16.0.0",
"@angular/compiler-cli": "^16.0.0",
"@angular/language-service": "^16.0.0",
"@nguniversal/builders": "^16.0.0",
"@types/express": "^4.17.7",
"@types/node": "^12.12.54",
"@typescript-eslint/eslint-plugin": "4.28.2",
"@typescript-eslint/parser": "4.28.2",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"concurrently": "^6.0.0",
"cypress": "^13.2.0",
"eslint": "^7.26.0",
"eslint": "^8.57.1",
"ts-loader": "^6.2.2",
"ts-node": "^8.3.0",
"typescript": "~5.0.2",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { JsonPipe } from "@angular/common";
import { Component, Input } from "@angular/core";
import { Component, Input, OnInit } from "@angular/core";

import { IonicModule } from "@ionic/angular";

/**
* This is used to track if any occurences of
* This is used to track if any occurrences of
* the ion-nav root component being attached to
* the DOM result in the rootParams not being
* assigned to the component instance.
Expand All @@ -21,7 +21,7 @@ let rootParamsException = false;
standalone: true,
imports: [IonicModule, JsonPipe]
})
export class NavRootComponent {
export class NavRootComponent implements OnInit {

@Input() params: any = {};

Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { JsonPipe } from "@angular/common";
import { Component, Input } from "@angular/core";
import { Component, Input, OnInit } from "@angular/core";

import { IonicModule } from "@ionic/angular";

/**
* This is used to track if any occurences of
* This is used to track if any occurrences of
* the ion-nav root component being attached to
* the DOM result in the rootParams not being
* assigned to the component instance.
Expand All @@ -21,7 +21,7 @@ let rootParamsException = false;
standalone: true,
imports: [IonicModule, JsonPipe]
})
export class NavRootComponent {
export class NavRootComponent implements OnInit {

@Input() params: any;

Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { JsonPipe } from "@angular/common";
import { Component } from "@angular/core";
import { Component, OnInit } from "@angular/core";

import { IonicModule } from "@ionic/angular";

/**
* This is used to track if any occurences of
* This is used to track if any occurrences of
* the ion-nav root component being attached to
* the DOM result in the rootParams not being
* assigned to the component instance.
Expand All @@ -21,7 +21,7 @@ let rootParamsException = false;
standalone: true,
imports: [IonicModule, JsonPipe]
})
export class NavRootComponent {
export class NavRootComponent implements OnInit {

params: any;

Expand Down
Loading
Loading