-
Notifications
You must be signed in to change notification settings - Fork 6
feat: Add manifest validation tool #93
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
base: main
Are you sure you want to change the base?
Conversation
c0f9c6b to
85d48a7
Compare
9ee721e to
b1ed71b
Compare
Pull Request Test Coverage Report for Build 19666892989Details
💛 - Coveralls |
|
Looks good to me |
6ee3a30 to
0f4d9df
Compare
alexandar-mitsev
left a comment
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.
-
now I often get "The MCP validation tool timed out". Seems that it happens mainly if I ask to validate a manifest, complete the task, then edit the manifest and ask to validate again.
Maybe it is related to the mutex log and cache. Or to the ajv tool itself
If I restart VS code, the tool can run again without a timeout. Also it runs smoothly couple of times in the same task. But fails with timeout if it runs in two different tasks in the same window. -
every time when I validate manifest _version: "1.60.0" - I get an error
Error:
Failed to create UI5 manifest validate function: items value must be ["object","boolean"] -
some older manifests are in the mapping, but have no tag for them, e.g. 1.50.0, 1.45.0
we should think of how to improve the tool to handle this. Maybe suggest an upgrade in that case as well? -
there are many logs for format "uri" ignored and format "uri-reference" ignored in the console, but this is not an error. Can be resolved with later update
Fixed it, it was caused by not releasing the mutex when fetching external schemas, particularly the Adaptive cards schema.
The reason behind that is that UI5 Manifest schemas prior 1.68.0 are using older version of the meta schema. Our setup doesn't support it. I have added an error and hint whenever such old version of manifest is encountered, to suggest upgrade to a newer one.
Now, upgrade is suggested if version lower than 1.68.0 is encountered.
Resolved it. There is dedicated package that contains those formats, called "ajv-formats". |
alexandar-mitsev
left a comment
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.
Looks good to me.
@MatthiasSchmalz fyi, in case you have any comments or suggestions we would highly appreciate it. Otherwise we will go forward with this setup CC: @codeworrior |
|
@RandomByte However 1.67.0 is not very old, so a lot of consumers might still use it. |
matz3
left a comment
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.
The architecture document should also be updated to reflect the new changes, especially the new dependencies to external services.
Hello @MatthiasSchmalz , The error now looks like This tool focuses on performing validation based on concrete schema. |
7673deb to
6c7eae5
Compare
286fbe7 to
e41177c
Compare
matz3
left a comment
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.
LGTM, apart from one detail.
I've also updated the URLs to use the new GitHub repo, after the recent move from SAP to UI5.
matz3
left a comment
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.
LGTM.
UA review is pending, and I'd like to give @RandomByte also the chance for another look.
KlattG
left a comment
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.
Some very minor suggestions, but overall looking really good
No description provided.