Skip to content
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

SECNG-1381 | Update dependencies, update library to 4.0.0 #261

Merged
merged 8 commits into from
Oct 15, 2022

Conversation

mcab
Copy link
Member

@mcab mcab commented Oct 15, 2022

Updates some dependencies.

Due to breaking changes, this will be a new major version.

@mcab mcab force-pushed the SECNG-1381/update-dependencies branch 2 times, most recently from 10754d4 to bc010fb Compare October 15, 2022 02:20
@mcab mcab force-pushed the SECNG-1381/update-dependencies branch from 2c313bc to 6e9acf5 Compare October 15, 2022 02:30
@mcab mcab force-pushed the SECNG-1381/update-dependencies branch 4 times, most recently from 3a1e160 to 5ed056b Compare October 15, 2022 02:49
9.0.0 breaks compatability with Node v10.
For [0].

Any usage of @xmldom/xmldom >= 0.8.0 will normalize these, see [1] and [2].

The current xml-encryption (2.0.0) does not do this normalization, but will
in 2.0.1 [3]. It's technically within the path of xmlenc.decrypt() [4], but
this follows how assertions have been handled (not handling non-normalized
whitespace).

For xml-crypto, this was changed in 3.0.0 with [5].

[0] https://github.com/Clever/saml2/blob/6da3e9c39c326a2f6793bb87c6d12c9ab4446585/lib/saml2.coffee#L242-L245
[1] xmldom/xmldom#307
[2] xmldom/xmldom#314
[3] auth0/node-xml-encryption#101
[4] https://github.com/auth0/node-xml-encryption/blob/291f3f10d5d1d571a3b6da2d411aa323398f5650/lib/xmlenc.js#L185
[5] node-saml/xml-crypto#261
Updates some dependencies.

Closes #232, #234, #237, #240, #246, #248, #252.
@mcab mcab force-pushed the SECNG-1381/update-dependencies branch from 5ed056b to cfb5ce4 Compare October 15, 2022 02:51
@mcab
Copy link
Member Author

mcab commented Oct 15, 2022

From the wide array of Node LTS tests, this library should still function as expected.

Please open an issue if this is not the case.

@mcab mcab merged commit 9900264 into master Oct 15, 2022
@mcab mcab changed the title SECNG-1381 | Update dependencies SECNG-1381 | Update dependencies, update library to 4.0.0 Oct 15, 2022
@mcab mcab deleted the SECNG-1381/update-dependencies branch October 16, 2022 00:39
@ruffrey
Copy link

ruffrey commented Nov 3, 2022

Is there somewhere we can view a changelog showing breaking changes in 4.x? It is not clear if those are included in just this PR, or others. Thanks.

@mcab
Copy link
Member Author

mcab commented Nov 3, 2022

Mainly this PR. Off the top of my head:

  • xml-encryption was bumped up to ^2.0.0, which drops support for Node 8, and uses native crypto functions. Any user still on Node 8 will be unable to use 4.x and onwards.
  • @xmldom/xmldom was bumped up to ^0.8.3. This has a security fix for prototype pollution and other cases, but more critically, changes how normalization and serialization of XML documents occur. This can potentially affect the parsing of XML documents, but shouldn't affect the majority of cases.
  • xml-crypto was bumped up to ^3.0.0, which uses @xmldom/xmldom's 0.8.3. If you don't find issues with xmldom parsing, you should be fine.

@ruffrey
Copy link

ruffrey commented Nov 3, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants