Skip to content

Conversation

@timdeschryver
Copy link
Contributor

Upgraded using ng update:

  • Angular
  • Angular ESLint

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR upgrades the project from Angular 19 to Angular 20, along with updating related dependencies and build configuration. The upgrade was performed using the ng update command and includes both Angular core libraries and Angular ESLint packages.

Key changes:

  • Angular core packages updated from ^19.0.1 to ^20.2.3
  • Build system migrated from @angular-devkit/build-angular to the new @angular/build package
  • Import statements reorganized to consolidate Angular core imports

Reviewed Changes

Copilot reviewed 39 out of 41 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
package.json Updated Angular dependencies from v19 to v20 and related tooling packages
angular.json Migrated all builder references from @angular-devkit/build-angular to @angular/build
Multiple karma.conf.js files Removed deprecated @angular-devkit/build-angular/plugins/karma plugin references
Multiple TypeScript service files Consolidated import statements to import DOCUMENT from @angular/core instead of @angular/common
jwk-window-crypto.service.ts Updated method parameter type from BufferSource to Uint8Array
Comments suppressed due to low confidence (1)

projects/sample-implicit-flow-silent-renew/karma.conf.js:1

  • Empty array element left after removing the karma plugin. Consider removing the trailing comma on line 12 or adding a comment explaining why this empty element exists.
// Karma configuration file, see link for more information

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

damienbod and others added 3 commits August 30, 2025 12:22
…l.service.spec.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…l.service.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link

@codybtc codybtc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Xxx

@dausm
Copy link

dausm commented Sep 3, 2025

Hey, just curious is there an eta for when this will be merged and the next version released?

@damienbod
Copy link
Owner

damienbod commented Sep 5, 2025

LGTM

I merge and test and will deploy if all is ok

@damienbod damienbod merged commit 0dcd04e into damienbod:main Sep 5, 2025
8 of 9 checks passed
@damienbod
Copy link
Owner

damienbod commented Sep 5, 2025

@timdeschryver @FabianGosebrink @codybtc

Thanks for the PR. I merged the PR and everything and everything works great. When I try to pack the lib to publish, I get the following errors:

projects/schematics/src/ng-add/actions/add-standalone-import.ts:13:18 - error TS2345: Argument of type 'Rule[]' is not assignable to parameter of type 'Iterable<Rule> | AsyncIterable<Rule>'.
  Type 'Rule[]' is not assignable to type 'Iterable<Rule>'.
    The types returned by '[Symbol.iterator]().next(...)' are incompatible between these types.
      Type 'IteratorResult<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Rule, any>' is not assignable to type 'IteratorResult<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Rule, any>'.
        Type 'IteratorYieldResult<Rule>' is not assignable to type 'IteratorResult<Rule, any>'.
          Type 'IteratorYieldResult<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Rule>' is not assignable to type 'IteratorYieldResult<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Rule>'.
            Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Rule' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Rule'.
              Types of parameters 'context' and 'context' are incompatible.
                Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").SchematicContext' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").SchematicContext'.
                  The types of 'engine.createCollection' are incompatible between these types.
                    Type '(name: string, requester?: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}> | undefined) => import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").C...' is not assignable to type '(name: string, requester?: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}> | undefined) => import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angula...'.
                      Types of parameters 'requester' and 'requester' are incompatible.
                        Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}> | undefined' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}> | undefined'.
                          Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}>' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/engine/interface").Collection<{}, {}>'.
                            The types of 'createSchematic(...).call' are incompatible between these types.
                              Type '<OptionT extends object>(options: OptionT, host: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Observable").Observable<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/t...' is not assignable to type '<OptionT extends object>(options: OptionT, host: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Observable").Observable<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/...'.
                                Types of parameters 'host' and 'host' are incompatible.
                                  Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Observable").Observable<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/schematics/src/tree/interface").Tree>' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Observable").Observable<import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@schematics/angular/node_modules/@angular-devkit/schematics/src/tree/interface").Tree>'.
                                    Types of property 'source' are incompatible.
                                      Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Observable").Observable<any> | undefined' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Observable").Observable<any> | undefined'.
                                        Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Observable").Observable<any>' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Observable").Observable<any>'.
                                          Types of property 'operator' are incompatible.
                                            Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Operator").Operator<any, any> | undefined' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Operator").Operator<any, any> | undefined'.
                                              Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Operator").Operator<any, any>' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Operator").Operator<any, any>'.
                                                Types of property 'call' are incompatible.
                                                  Type '(subscriber: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Subscriber").Subscriber<any>, source: any) => import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/t...' is not assignable to type '(subscriber: import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Subscriber").Subscriber<any>, source: any) => import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/types").TeardownLogic'.
                                                    Types of parameters 'subscriber' and 'subscriber' are incompatible.
                                                      Type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/rxjs/dist/types/internal/Subscriber").Subscriber<any>' is not assignable to type 'import("C:/repos/git/angularVueJSReact/angular-auth-oidc-client/node_modules/@angular-devkit/core/node_modules/rxjs/dist/types/internal/Subscriber").Subscriber<any>'.
                                                        Property 'isStopped' is protected but type 'Subscriber<T>' is not a class derived from 'Subscriber<T>'.

 13     return chain([
                     ~
 14       addRootProvider(projectName, ({code, external}) => {
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
 17       }),
    ~~~~~~~~~
 18     ]);
    ~~~~~

Cmd:

npm run pack-lib

Any ideas how to fix?

@timdeschryver
Copy link
Contributor Author

@damienbod I'll take a look at it today.

@damienbod
Copy link
Owner

@timdeschryver Thanks

I added this fix:

https://github.com/damienbod/angular-auth-oidc-client/blob/main/projects/schematics/src/ng-add/actions/add-standalone-import.ts#L18

Maybe just review this?

I am unsure about the whole schematics part :) I tested everything else and all is working now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants