Indigosoft / ngxd

✨🦊 NgComponentOutlet + Data-Binding + Full Lifecycle = NgxComponentOutlet for Angular 7, 8, 9, 10, 11, 12, 13, 14, 15, 16+
MIT License
321 stars 29 forks source link

Add support for Angular 17 #62

Open mxshdev opened 12 months ago

mxshdev commented 12 months ago

Describe the feature you would like to see added

Add support for Angular 17

Describe the solution you'd like

Update peer dependencies to allow angular 16:

"peerDependencies": {
    "@angular/common": "^15.0.0",
    "@angular/core": "^15.0.0",
    "rxjs": ">=6.0.0"
}

Describe alternatives you have considered

  1. Keep on old angular
  2. Force update anyway and run "npm install --force" every time
janousek commented 11 months ago

Angular 17 has breaking change, that affect change detection (and ngxd):

OnPush components that are created dynamically now only have their host bindings refreshed and ngDoCheck run during change detection if they are dirty. Previously, a bug in the change detection would result in the OnPush configuration of dynamically created components to be ignored when executing host bindings and the ngDoCheck function. This is rarely encountered but can happen if code has a handle on the ComponentRef instance and updates values read in the OnPush component template without then calling either markForCheck or detectChanges on that component's ChangeDetectorRef.

proggler23 commented 10 months ago

any ETA on when Angular 17 will be supported?

We're currently having issues described by @janousek and would love to have an official solution, rather than a hacky workaround :)

DaveMBush commented 9 months ago

Regarding the above PR.

For those of you who'd like to get moving before this is merged and published, the main change is here:

https://github.com/Indigosoft/ngxd/pull/63/files#diff-43fa391336ab67ea0f7d5dbfb5aa792982bd96c3e92377fbe6edaa7fa418cde0R65-R69

I had to make a change to some of the test code because Angular now handles OnPush and Default change notification differently. That change is here: https://github.com/Indigosoft/ngxd/pull/63/files#diff-cfe523e683be6cacaebf3ed3129dd8d981995a7e9e3222281bda90f3062aa1b0L10-R23

The other changes are just upgrading to Angular 17

diogogasparr commented 8 months ago

Any ETA for the new release?

diogogasparr commented 8 months ago

@thekiba

sergioorlov commented 7 months ago

Any ETA for the new release? @diogogasparr @DaveMBush @thekiba

bhuvangoradia commented 5 months ago

Wanted to know if there is any update on this?

diogogasparr commented 4 months ago

was this project dropped?

realbizkit commented 2 months ago

Since Angular v16.2, this library is not needed anymore for probably the majority of the use cases:

DaveMBush commented 2 months ago

@realbizkit, if you have a lot of legacy code that already uses this library, you still need it so you can make the transition.

Anyone who is using pnpm or yarn can patch the library with my fix that is still awaiting approval.