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

feat: update to angular16 #3194

Open
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

Eslam-Gaber645
Copy link

@Eslam-Gaber645 Eslam-Gaber645 commented Jul 2, 2023

Please read and mark the following check list before creating a pull request:

Short description of what this resolves:

feat: update to angular 16

  • update typescript and tslib
  • update eslint and eslint plugins
  • update zone.js and angular packages
  • update 'peerDependencies' versions in @nebular/* packages
  • migrate playground, packages-smoke and @nebular packages to angular 16

fix(theme/styles): add a space after '+' operator

  • fix the warning that was showing due to 'strict unary operators'

fix(NbSelectWithAutocompleteComponent/spec): fix test spec

  • fix fakeAsync tests
  • fix binding properties name for 'nb-select-with-autocomplete'

build(gulp): remove incorrect 'typeRoots' from tsconfig

fix(schematics): fix project schematics issues

  • fix broken schematics test specs
  • use getAppModulePath util from '@schematics/angular' instead of defining our own
  • use runSchematic instead of runSchematicAsync method because it is deprecated
  • use runExternalSchematic instead of runExternalSchematicAsync method because it is deprecated

refactor(playground): fix linting issues

  • change components selectors to start with 'npg' prefix instead of 'nb'
  • use @HostBinding decorator instead of the host property
  • fix negated async pipes
  • remove duplicated routes in 'playground-routing.module'
  • format unformatted code with prettier

refactor(framework/theme): fix linting issues

  • use @HostBinding decorator instead of the host property
  • use 'eslint-disable-next-line' comment to disable some rules without breaking changes
  • format unformatted code with prettier

refactor(framework/auth): refactor to pass linter

  • use strict equality instead of loose equality in the component's template
  • format unformatted code with prettier

refactor(docs): refactor to pass linter

  • use strict equality instead of loose equality in the component's template
  • format unformatted code with prettier
  • remove unnecessary @input alias
  • fix un-safe takeUntil 'rxjs'
  • add missing components name suffixes
  • fix shadow variables '@typescript-eslint/no-shadow'

* change components selectors to start with 'npg' prefix instead of 'nb'
* use @HostBinding decorator instead of host property
* fix negated async pipes
* remove duplicated routes in 'playground-routing.module'
* format unformatted code with prettier
* use @HostBinding decorator instead of host property
* use 'eslint-disable-next-line' comment to disable some rules without breaking changes
* format unformatted code with prettier
* use strict equality instead of loose equality in components template
* format unformatted code with prettier
* use strict equality instead of loose equality in components template
* format unformatted code with prettier
* rmove unnecessary @input alias
* fix un-safe takeUntil 'rxjs'
* add missing components name suffixes
* fix shadow variables '@typescript-eslint/no-shadow'
* update typescript and tslib
* update eslint and eslint plugins
* update zone.js and angular packages
* update 'peerDependencies' versions in @nebular/* packages
* migrate playground, packages-smoke and @nebular packages to angular 16
fix the warning that was showing due to 'strict unary operators'
* fix fakeAsync tests
* fix binding properties name for 'nb-select-with-autocomplete'
* fix broken schematics test specs
* use getAppModulePath util from '@schematics/angular' instead of defining our own
* use runSchematic instead of runSchematicAsync method becuase it is deprecated
* use runExternalSchematic instead of runExternalSchematicAsync method becuase it is deprecated
Because it has been changed to a function that implements CanActivateFn
@Eslam-Gaber645
Copy link
Author

@elupanov @azaiko-akveo
I was wondering if someone could give me feedback on this PR.

@Eslam-Gaber645 Eslam-Gaber645 mentioned this pull request Jul 17, 2023
2 tasks
@Voldemat
Copy link

Will there be any comments?

@Eslam-Gaber645
Copy link
Author

Will there be any comments?

@denStrigo
@sashaqred

@sashaqred
Copy link
Member

Hi.

I'm not an active maintainer here, just occasionally fixing some bugs.

The only comment I can give is that there are a loooooot of changes: 837 files and 38k of changed lines. Also, not all of the changes are about angular update. It will be hard to review that. Actually, I think that it'll be simpler to perform such an update manually from scratch than to review 38k+ changes.

I suggest you try a workaround for installing nebular with angular v16: use overrides in package.json https://docs.npmjs.com/cli/v8/configuring-npm/package-json#overrides. So if npm is throwing errors after you install nebular with the latest angular, try to override nebular's dependencies. Like:

  "overrides": {
    "@nebular/theme": {
      "@angular/core": "^16.0.0"
    }
  }

I hope that this will help.

@sashaqred
Copy link
Member

I've tried overrides in my project, such config works great

  "overrides": {
    "@nebular/auth": {
      "@angular/common": "$@angular/common",
      "@angular/core": "$@angular/core",
      "@angular/forms": "$@angular/forms",
      "@angular/router": "$@angular/router"
    },
    "@nebular/security": {
      "@angular/common": "$@angular/common",
      "@angular/core": "$@angular/core",
      "@angular/router": "$@angular/router"
    },
    "@nebular/theme": {
      "@angular/animations": "$@angular/animations",
      "@angular/cdk": "$@angular/cdk",
      "@angular/common": "$@angular/common",
      "@angular/core": "$@angular/core",
      "@angular/router": "$@angular/router"
    }
  },

@sashaqred sashaqred mentioned this pull request Oct 27, 2023
1 task
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.

None yet

4 participants