-
-
Notifications
You must be signed in to change notification settings - Fork 6
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
Angular upgrade v18 #487
Angular upgrade v18 #487
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
This is a replica of our app configuration to test and work on the Map issue: https://codesandbox.io/p/devbox/gracious-tesla-4ts9k4 The error persist also in a mock up environment. |
cf6d7df
to
df49f59
Compare
…ic file from parent package
…re fix, removes ngModelGroup. Materia-ui module was stale. Prior setDiagnosticOptions configuration caused error due to missing object. The ngModelGroup template property also caused runtime error and is not needed.
…span child element covering is acceptable.
…ting! Needs fixing later!
* restore correct UI style to grid * apply breaking changes with frmeworkComponents, bump version to 31
6c22869
to
2c60e86
Compare
This PR is ready to be reviewed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Phew! Good work. The code looks good, aside from a few stray merge markers.
I had to upgrade node.js
to install and test these code changes. Not a problem obviously, but it would be neater if any required upgrades were done under the hood. Can we add the minimum required node version as a dependency in package.json
?
Hey @CodeKrakken thank you very much for your review :D About node version:
In the package.json there is already specified the minimum required node version
We cannot really enforce it. We can add a Also, which node version you had before and which one you have installed now? |
@gsambrotta I think it was 17.6.0. I've rolled back to recreate the errors but it's not the same this time around. The first issue was when I ran
I don't have any ideas about how to enforce the node version unfortunately. It's a shame we can't add it as a dependency! |
@CodeKrakken thank you for clarifying what had happen. Theoretically they should update by their self when run I also woner if we should suggest to run |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one bit of possibly stray text.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do wish that the Workflow to Flow changes and other unrelated changes were not in this branch, OR instead, if 5645a0a could be merged into develop and main that would be better.
There are some whitespace changes that don't make sense to me.
I have a few other questions I commented on.
Anyway, these are mostly small things. In general, this has been a lot of work that you've boldly wrestled with, well done!
Once the smaller comments are understood and resolved, I am thinking that since it's so big and complex and because we can't know what the Angular reactivity changes will be, and I don't trust the testing of the Vercel environment to be as comprehensive as what real world use of the Flows on the production version will be, it might make sense for us at some point soon to try it for a while in production for real, and see what kinds of regressions there are, of course we can always revert back.
Well done! Thanks for your diligent and patient work!
import { | ||
HttpInterceptor, | ||
HttpRequest, | ||
HttpResponse, | ||
HttpHandler, | ||
HttpEvent, | ||
HttpErrorResponse | ||
} from '@angular/common/http'; | ||
import { HttpInterceptor, HttpRequest, HttpResponse, HttpHandler, HttpEvent, HttpErrorResponse } from '@angular/common/http'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you know why this changed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope, I didn't change, not in purpose at least, as I prefer the older formatting style
I think that it is better to take care of the formatting issues once we have a formatting style guide in place.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It happened in e6862e1which is a commit under your name, it appears, maybe it was automatically done somehow, perhaps as part of a migration script?
It does make me wonder if we should force linting on all branches before we apply this. 🤔
@@ -1,6 +1,5 @@ | |||
import { Component, ElementRef, EventEmitter, Input, NgZone, OnChanges, OnInit, Output, ViewChild } from '@angular/core'; | |||
import { clone, get, has, isArray, isObject, toPairs } from 'lodash-es'; | |||
import { search } from 'jmespath'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Presumably search wasn't used?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is your question exactly?
I deleted these imports because they were highlighted as imported but never used in the document.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It wasn't clear why it was deleted, and you've said now.
But in future, please can we keep the difference as small as possible and do tidying separately so it's easier to review, as a general rule?
<p class="adapter-metadata-edit-text"> | ||
Title: {{ workflow.title }}<br> | ||
Adapter: {{ workflow.getAdapterName() }}<br> | ||
Workflow ID: {{ workflow.id }}<br> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This may be a regression, since if said Flow before?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where do you see that it was saying Flow before? If you look at the Git Diff, you can see that the {{workflow.title}} and similar are the same.
What has changed here is the class of the DIV and P tag
@lukestanley
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On the existing version line 49 said "Flow ID". On line 45 in the new version it says "Workflow ID".
src/app/dialogs/edit-workflow-metadata-dialog/edit-workflow-metadata-dialog.component.ts
Outdated
Show resolved
Hide resolved
import {AdapterBlocksConfigSelectDialogComponent} from | ||
'../../dialogs/adapter-blocks-config-select-dialog/adapter-blocks-config-select-dialog.component'; | ||
import {ExportConfigDialogComponent} from '../../dialogs/export-config-dialog/export-config-dialog.component'; | ||
import {PasteConfigDialogComponent} from '../../dialogs/paste-config-dialog/paste-config-dialog.component'; | ||
import * as stringify from 'json-stringify-safe'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happened here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All of these were "declared but their value is never read"
So i cleaned up a bit
import {AppSettingsService} from './app-settings.service'; | ||
import { MatSnackBar } from '@angular/material/snack-bar'; | ||
import * as LZS from 'lz-string'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose LSZ is not used here now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was never used. It was an import not used in the file
For reference, I used this view (and some variations) to try and compare the changes you made @gsambrotta |
Hi @gsambrotta and @lukestanley
I'm curious how this situation came about in the first place. Perhaps we could discuss sometime? Great work Gio! |
I am curious too. I think all these old commits are parts of the history of this branch, as it is so old but the changes are not visible, since it has no difference with develop. Which is the branch we want to merge into |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All comments addressed, all tests passing. Nice job!
Once that Workflow to Flow pull request is resolved, I suspect that this Pull Request will be in a much better shape! By the way, I'm not sure |
The very valuable work from this was put into Angular 18 Squashed, which is now merged into develop, so I am closing this. It could still serve as very useful reference. |
Here is the upgrade to angular 18.
Issue ref: #476 - In the issue, it can be found a good list of the commands used to upgrade.
HOW TO TEST IT:
npm i
What is missing:
See screenshots:
AgGrid do not display custom components and do not show any error
v18
v15
Material UI padding is slightly wrong:
v18
v15
Forms (or material UI?)
v18
v15
Leaflet issue:
v18
Widget Form Issue:
v18