-
Notifications
You must be signed in to change notification settings - Fork 6.2k
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
Upgrade xml2js to address security vulnerability #22080
Conversation
Ah, seems maybe this is already done by the bot over here: |
Hi there! 👋 I'm a bot whose goal is to ensure your contributions meet our guidelines. I've found some issues in your pull request that should be addressed (click on them for more details) 👇
|
Hello @karlhorky, thank you for preparing a bump PR! 👍 Unfortunately, it looks like some tests are failing after the package upgrade: Would you like to look at the failures and try to find the root cause of that? Maybe there were some breaking changes in new version, besides the vulnerability fix, since they have bumped the minor? |
is anybody looking at these failing tests? |
Could this be addressed? Using
|
It seems a primary change in xml2js 0.5.0 was to start using |
It appears that many tests are failing because they parse XML to JS objects (with null prototype) and then feed those objects back through logic like this which expects properties like expo/packages/@expo/config-plugins/src/utils/XML.ts Lines 61 to 78 in 0746a58
Might be a bit tricky to fix this without pulling some things apart. Possibly might also be worth considering an alternative like https://github.com/NaturalIntelligence/fast-xml-parser. They seemed to have recently addressed the issue in a slightly more pragmatic manner ... NaturalIntelligence/fast-xml-parser@2b032a4 |
we use [email protected] now, thanks for the PR though! sorry i didn't follow up here |
Why
Address security vulnerability in
xml2js
below version0.5.0
Ref: Leonidas-from-XIV/node-xml2js#663 (comment)
How
Upgrade
xml2js
versionTest Plan
Checklist
expo prebuild
& EAS Build (eg: updated a module plugin).