Store: Angular 8 Support

Created on 12 Jun 2019  路  33Comments  路  Source: ngxs/store

I'm submitting a...


[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report  
[ ] Performance issue
[ ] Feature request
[x] Documentation issue or request
[ ] Support request => https://github.com/ngxs/store/blob/master/CONTRIBUTING.md
[ ] Other... Please describe:

A statement as to the current status regarding Angular 8 and Universal would be appreciated as I can't find one if this exists. I can see various dependency update chores however I can see the benefit of having this ticket closed when full support is reached for anyone else finding this.

core

Most helpful comment

@internalsystemerror
We know about that and we're working on that, actually @splincode already has a skeleton for upgrading to Angular 8. It's currently working with Angular 8 (I checked), but not with Ivy (it's related to @angular/cli, not our issue, will be fixed in 2-3 weeks as Google team says)

All 33 comments

Thank you for reporting

@internalsystemerror
We know about that and we're working on that, actually @splincode already has a skeleton for upgrading to Angular 8. It's currently working with Angular 8 (I checked), but not with Ivy (it's related to @angular/cli, not our issue, will be fixed in 2-3 weeks as Google team says)

@arturovt thanks for the feedback. Just planning our own upgrades and getting the status of various libraries. A ticket like this I feel is just good for reference.

@internalsystemerror
We know about that and we're working on that, actually @splincode already has a skeleton for upgrading to Angular 8. It's currently working with Angular 8 (I checked), but not with Ivy (it's related to @angular/cli, not our issue, will be fixed in 2-3 weeks as Google team says)

Can you please publish the version of ngxs that works with Angular 8 (without Ivy support)? I just went through a lengthy upgrade from 7 -> 8 and just now noticed that ngxs isn't supporting Angular 8.

@jtomek
This is the third place where you鈥檙e telling that something doesn鈥檛 work. Create an issue with reproduce, please!

@jtomek
This is the third place where you鈥檙e telling that something doesn鈥檛 work. Create an issue with reproduce, please!

As people have reported, it's not working with Angular 8. I don't think it's necessary to create another issue regarding this topic.

Maybe I should create one about the future of ngxs. I don't want to sound bitter, but I think it's a big problem that so many people are left hanging while everybody package had such a long runway to prepare for a new version. I've implemented ngxs as an integral part of my app because it's been so easy and reduced the boilerplate. But as pointed out in a different discussion here, ngxs has been stale for some time and this problem with Angular 8 is just not helping at all.

I am wondering, I saw that you worked on ngxs examples. I think that the whole community can only thank you for that. But why prioritize working on minor examples around over such as important topic that a new Angular version is? It's not only me but also others who I am sure will have to consider or will be forced by their organizations to switch to ngrx.

@jtomek My project uses Angular 8 and everything works, except for warnings when installing npm you will not see anything that could not work with NGXS

@jtomek

will be forced by their organizations to switch to ngrx.

up to you

@jtomek My project uses Angular 8 and everything works, except for warnings when installing npm you will not see anything that could not work with NGXS

I see. Are you using latest release of NGXS v3.4.3?

yes, I use v3.4.3

I thought that the latest version of NGXS was breaking my code and I started reversing my upgrade. Thank you @splincode and @arturovt for the information that it was working under Angular 8. I've now managed to get it working (there is a new polyfill to be included and loadChildren was and then wasn' upgraded in my case).

@jtomek
I鈥檓 happy to help you and my purpose is to make our user鈥檚 development more productive.
Just if you鈥檙e asking anything - would be great if you show us an error or create an issue, hard to determine what鈥檚 really going wrong there, without seeing the code or some screenshot :wink:

This project use ngxs heavenly and it works with angular 8
https://github.com/xmlking/ngx-starter-kit

Is there an ETA on Ivy support? Thanks.

@andrewjrhill See my first comment!

@arturovt - missed that; thanks!

Just to confirm - works fine under 8 (and _next_) without Ivy :)

@lppedd thanks for confirming.

Gentlemen, to make things clear - we can't focus on Ivy, as it's senseless right now. Igor Minar said that Ivy will be stable in Angular 9 or 10.

Makes sense to me. I just don't want to go through the effort of upgrading everything if it means our builds are going to fail due to incorrect warnings. This is my intention behind this ticket.

(Edit: i.e. this ticket should be closed as completed once the warnings no longer appear)

Ivy is not compatible with ng-packagr right now, that's used with @angular-devkit. If Google makes it compatible - we also can start the integration with Ivy.

@arturovt

Igor Minar said that Ivy will be stable in Angular 9 or 10.

Do you have a source or know when he said this? And do you mean stable in the sense of API stability or just that it'll be the default?

During 2019 the ng-conf keynotes and a few other talks this year the message I heard was that Ivy would be an opt-in preview in Angular 8 but default in Angular 9. With Angular 8 released they did seem to keep that deadline.

With 97% of tests in Google already passing and virtually all members of the Angular team working on this I would expect them to keep the deadline of Angular 9 with some risk that it'll be delayed until Angular 10 if they can't make it stable enough.

So think we should plan on Ivy coming in Angular 9 and try to test it with Ivy as soon as possible so that we can:

  1. Track how close this library is towards working with Ivy. This would also be helpful for users of the library as we'd be more aware of how realistic it will be to turn on Ivy in the near-future.
  2. Report unintentional breaking changes and bugs for Ivy. This way hopefully the Angular team will solve these issues before Ivy becomes default.

I do expect the main changes in this library to integrate Ivy to not really happen until a beta or release candidate of Angular 9 is released and up until then mainly reporting the issues we face with Ivy.

@Koslun just pasting

it's not fully functional (opt-in preview) and as suggested by Igor Minar in ngConf 2019, View Engine is still recommended for new apps.

@arturovt I inquired about this over here https://github.com/ng-packagr/ng-packagr/issues/1175#issuecomment-505122191 and it sounds like angular packages produced with the current version of ng-packagr should be consumable by both View Engine and Ivy applications

@mnahkies
That's great. But actually it was blocked by this PR and as you see it was merged 6 days ago.

Any news on this?

@markwhitfeld ping

@Carniatto what's the issue? I'm using Angular 8 in production since it was in Beta, nothing at all for me.

There is a lot of warnings when I update angular to 8 cuz the peerDependencies for NGXS are wrong. Based on this I found this thread and checked the changelogs that does not say a work about support to Angular 8. If is compatible why the required Angular version on package.json is still angular 7.2.15?

@Carniatto Ahhh okay. Well when I updated, I reviewed warnings one by one. They're just warnings, you can run libs safely anyway, most of the times.

I suppose they're waiting for Ivy support (?).

@lppedd Thanks for the info, that's was my question is I could just ignore the warnings without side effects, we use ngxs in a large product and I wanted to be safe

@Carniatto Update, give a dev spin of the product and check.
Everything should work as is, without Ivy obviously.

The Ivy issue will be tracked locally here: #1165

Released in 3.5.0

Was this page helpful?
0 / 5 - 0 ratings

Related issues

piernik picture piernik  路  19Comments

akisvolanis picture akisvolanis  路  18Comments

perjansson picture perjansson  路  30Comments

amjmhs picture amjmhs  路  21Comments

Carniatto picture Carniatto  路  22Comments