Angular v8 support
This is a...
- [x] feature request
- [ ] bug report
- [ ] usage question
What toolchain are you using for transpilation/bundling?
- [x] @angular/cli
- [ ] Custom @ngTools/webpack
- [ ] Raw
ngc - [ ] SystemJS
- [ ] Rollup
- [ ] Other
Environment
NodeJS Version: 10.16 Typescript Version: 3.4 Angular Version: 8 @angular-redux/store version: 10 @angular/cli version: (if applicable) OS: Windows
Additional Notes:
Should we wait support of angular v8 from angular-redux or it's safe to use it as is with angular v8? Have you any plans to upgrade?
There will definitely be an upgrade, however major version changes of Angular don't usually produce too many issues with using the library. Please do let us know if you see anything breaking in v8
We recently upgraded to Angular 8 and angular-redux v10 works fine with Angular 8, and we didn't have to change anything. The only annoyance is that yarn (npm would do it too I guess) throws a warning that angular-redux expects Angular 7 not 8. It would be nice if package.json was updated to support both.
That was my theory, but thank you for confirming. Feel free to utilize v10 with Angular 8. I will do a version bump at some point to remove the dependency warning, but that will require a major release and I want to see if I can get some more work in before I do so.
I'm getting an error after upgrading to Angular 8 (from 7):
Property '[Symbol.observable]' is missing in type 'NgRedux<RootState>' but required in type 'ObservableStore<RootState>'.
Not sure if I need to update another package (maybe the redux node_module itself?). If it can help, my package.json has these dependencies:
"dependencies": { "@angular-redux/form": "^10.0.0", "@angular-redux/store": "^10.0.0", "@angular/animations": "^8.1.0", "@angular/cdk": "^8.0.2", "@angular/common": "^8.1.0", "@angular/compiler": "^8.1.0", "@angular/core": "^8.1.0", "@angular/forms": "^8.1.0", "@angular/material": "^8.0.2", "@angular/platform-browser": "^8.1.0", "@angular/platform-browser-dynamic": "^8.1.0", "@angular/router": "^8.1.0", "@ngrx/store-devtools": "^8.0.1", "core-js": "^3.1.4", "hammerjs": "^2.0.8", "ng-click-outside": "^4.0.0", "npm": "^6.10.0", "redux": "^4.0.3", "redux-devtools-extension": "^2.13.8", "rxjs": "~6.5.2", "ts-md5": "^1.2.4", "zone.js": "~0.9.1" }, "devDependencies": { "@angular-devkit/build-angular": "~0.801.0", "@angular/cli": "^8.1.0", "@angular/compiler-cli": "^8.1.0", "@angular/language-service": "^8.1.0", "@types/node": "~12.6.1", "codelyzer": "^5.0.1", "protractor": "~5.4.2", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "^3.4.5" }
I'm getting an error after upgrading to Angular 8 (from 7):
Property '[Symbol.observable]' is missing in type 'NgRedux<RootState>' but required in type 'ObservableStore<RootState>'.Not sure if I need to update another package (maybe the redux node_module itself?). If it can help, my package.json has these dependencies:
"dependencies": { "@angular-redux/form": "^10.0.0", "@angular-redux/store": "^10.0.0", "@angular/animations": "^8.1.0", "@angular/cdk": "^8.0.2", "@angular/common": "^8.1.0", "@angular/compiler": "^8.1.0", "@angular/core": "^8.1.0", "@angular/forms": "^8.1.0", "@angular/material": "^8.0.2", "@angular/platform-browser": "^8.1.0", "@angular/platform-browser-dynamic": "^8.1.0", "@angular/router": "^8.1.0", "@ngrx/store-devtools": "^8.0.1", "core-js": "^3.1.4", "hammerjs": "^2.0.8", "ng-click-outside": "^4.0.0", "npm": "^6.10.0", "redux": "^4.0.3", "redux-devtools-extension": "^2.13.8", "rxjs": "~6.5.2", "ts-md5": "^1.2.4", "zone.js": "~0.9.1" }, "devDependencies": { "@angular-devkit/build-angular": "~0.801.0", "@angular/cli": "^8.1.0", "@angular/compiler-cli": "^8.1.0", "@angular/language-service": "^8.1.0", "@types/node": "~12.6.1", "codelyzer": "^5.0.1", "protractor": "~5.4.2", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "^3.4.5" }
Ok, found the issue. Apparently, [email protected] doesn't work. Installed 4.0.1, works fine. Hope this helps anyone who has the same issue.
@smithad15
but that will require a major release and I want to see if I can get some more work in before I do so.
Hah, it's what about I argued with my team few weeks ago. Why do we need to wait any additional changes? Why we can't just make yet another release even if it require minor or major version bump? Why it can't include only single simple fix? Chrome now have version 75 and there are no one worry about that.
Could it just be a patch release to change the package.json? I really don't want to wait just so I can get rid of some install warnings that I can't tell which ones are real warnings anymore. You've had 2 months since Angular 8 has been released to fix this?
Im getting the same error as @JackSchaible will there be a fix ? or should I downgrade my Redux to 4.0.1 ?
Update It builds once I change redux from ^4.0.1 to just 4.0.1. I'll leave the following as is in case it helps anyone else.
"Ok, found the issue. Apparently, [email protected] doesn't work. Installed 4.0.1, works fine. Hope this helps anyone who has the same issue."
This didn't fix the problem. My versions are as follows (redux set from 4.0.4 back to 4.0.1, same error).
"@angular-redux/store": "^10.0.0", "redux": "^4.0.1", "redux-devtools-extension": "^2.13.8",
and I'm on Angular 8.1.3. The error with either redux version is
ERROR in node_modules/@angular-redux/store/components/ng-redux.d.ts:10:31 - error TS2420: Class 'NgRedux<RootState>' incorrectly implements interface 'ObservableStore<RootState>'. Property '[Symbol.observable]' is missing in type 'NgRedux<RootState>' but required in type 'ObservableStore<RootState>'.
10 export declare abstract class NgRedux<RootState> implements ObservableStore<RootState> {
node_modules/redux/index.d.ts:247:3 247 [Symbol.observable()]: Observable<S> [Symbol.observable] is declared here.
Any chance to update the dependency for angular? I'm using this version with angular 8 and it works as expected, I would like to avoid seeing the npm warnings...
I still expecting problems with redux-observable-decorator (@Epic) because of lacking support of es2015 mode in redux observable: https://github.com/redux-observable/redux-observable/issues/644
because of that I was need to create a fork of redux-observable decorator (https://github.com/asvishnyakov/redux-observable-decorator-es6-compat) and use it together with redux-observable-es6-compat to have ability to use differential loading
@dalu I've just moved to using ngxs instead of relying on this directly.
@dalu see my comment above...
any progress on this?