zync
zync copied to clipboard
🚨 [security] Update rexml 3.2.5 → 3.2.8 (patch)
🚨 Your current dependencies have known security vulnerabilities 🚨
This dependency update fixes known security vulnerabilities. Please see the details below and assess their impact carefully. We recommend to merge and deploy this as soon as possible!
Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.
What changed?
↗️ rexml (indirect, 3.2.5 → 3.2.8) · Repo · Changelog
Security Advisories 🚨
🚨 REXML contains a denial of service vulnerability
Impact
The REXML gem before 3.2.6 has a DoS vulnerability when it parses an XML that has many
<
s in an attribute value.If you need to parse untrusted XMLs, you many be impacted to this vulnerability.
Patches
The REXML gem 3.2.7 or later include the patch to fix this vulnerability.
Workarounds
Don't parse untrusted XMLs.
References
Release Notes
3.2.7
Improvements
Improve parse performance by using
StringScanner
.Improved parse performance when an attribute has many
<
s.Fixes
XPath: Fixed a bug of
normalize_space(array)
.XPath: Fixed a bug that wrong position is used with nested path.
Fixed a bug that an exception message can't be generated for
invalid encoding XML.
3.2.6
Improvements
Required Ruby 2.5 or later explicitly.
GH-69
[Patch by Ivo Anjo]Added documentation for maintenance cycle.
GH-71
[Patch by Ivo Anjo]Improved performance and memory usage.
GH-94
[Patch by fatkodima]
REXML::Parsers::XPathParser#abbreviate
: Added support for
function arguments.
GH-95
[Reported by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added support for string
literal that contains double-quote.
GH-96
[Patch by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added missing/
to
:descendant_or_self/:self/:parent
.
GH-97
[Reported by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added support for more patterns.
GH-97
[Reported by pulver]Fixes
Fixed a typo in NEWS.
GH-72
[Patch by Spencer Goodman]Fixed a typo in NEWS.
GH-75
[Patch by Andrew Bromwich]Fixed documents.
GH-87
[Patch by Alexander Ilyin]Fixed a bug that
Attriute
convert'
and'
even when
attribute_quote: :quote
is used.
GH-92
[Reported by Edouard Brière]Fixed links in tutorial.
GH-99
[Patch by gemmaro]Thanks
Ivo Anjo
Spencer Goodman
Andrew Bromwich
Burdette Lamar
Alexander Ilyin
Edouard Brière
fatkodima
pulver
gemmaro
Does any of this look wrong? Please let us know.
Commits
See the full diff on Github. The new version differs by 58 commits:
Add 3.2.8 entry
Remove an unused variable (#128)
Suppress a warning
ci: install only gems required for running tests (#129)
Add missing Thanks section
Bump version
Add 3.2.7 entry
Read quoted attributes in chunks (#126)
Exclude older than 2.6 on macos-14
Move development dependencies to Gemfile (#124)
Fix a problem that parse exception message can't be generated for invalid encoding XML (#123)
xpath: Fix wrong position with nested path (#122)
Change `attribute.has_key?(name)` to ` attributes[name]`. (#121)
Optimize the parse_attributes method to use `Source#match` to parse XML. (#119)
Make the test suite compatible with `--enable-frozen-string-literal` (#120)
Separate `IOSource#ensure_buffer` from `IOSource#match`. (#118)
Remove `Source#string=` method (#117)
source: Remove unnecessary string length comparisons in the case of string comparisons (#116)
Use more StringScanner based API to parse XML (#114)
test: Fix invalid XML with spaces before the XML declaration (#115)
Stop specifying the gem version of strscan in benchmarks. (#113)
Remove unnecessary checks in baseparser (#112)
xpath: Fix normalize_space(array) case (#111)
Change loop in parse_attributes to `while true`. (#109)
Reduce calls to StringScanner.new() (#108)
Use `@scanner << readline` instead of `@scanner.string = @scanner.rest + readline` (#107)
Reduce calls to `Source#buffer`(`StringScanner#rest`) (#106)
Use string scanner with baseparser (#105)
Add parse benchmark (#104)
Use reusing workflow for Ruby versions (#103)
CI: Add ruby-3.3 (#102)
build(deps): bump actions/checkout from 3 to 4 (#101)
Bump version
Add 3.2.6 entry
ci: add support for creating release automatically
doc: Fix some method links in tutorial (#99)
xpath abbreviate: add a special case for only "//"
xpath abbreviate: rewrite to support complex cases
xpath: add a test for XPathParser#abbreviate
xpath: rename "string" to "path"
xpah abbreviate: add missing "/" to :descendant_or_self/:self/:parent
xpath abbreviate: add support for string literal that contains double-quote (#96)
xpath: fix a bug that #abbreviate can't handle function arguments
Performance and memory optimizations (#94)
CI against Ruby 3.0, 3.1, and 3.2 (#93)
attribute: don't convert ' and ' with {attribute_quote: :quote}
Bump actions/checkout from 2 to 3 (#90)
Added dependabot for GitHub Actions (#89)
Fix RDoc for Element (#87)
gemspec: Drop unused directives (#83)
Fix typos
doc: link to tutorial (#78)
Tutorial (#77)
Fix typo in NEWS.md (#75)
Fix typo in NEWS.md (#72)
Document that REXML follows the Ruby maintenance cycle (#71)
Set 2.5 as minimum required ruby version for gem (#70)
Bump version
🆕 strscan (added, 3.1.0)
Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase
.
All Depfu comment commands
- @depfu rebase
- Rebases against your default branch and redoes this update
- @depfu recreate
- Recreates this PR, overwriting any edits that you've made to it
- @depfu merge
- Merges this PR once your tests are passing and conflicts are resolved
- @depfu cancel merge
- Cancels automatic merging of this PR
- @depfu close
- Closes this PR and deletes the branch
- @depfu reopen
- Restores the branch and reopens this PR (if it's closed)
- @depfu pause
- Ignores all future updates for this dependency and closes this PR
- @depfu pause [minor|major]
- Ignores all future minor/major updates for this dependency and closes this PR
- @depfu resume
- Future versions of this dependency will create PRs again (leaves this PR as is)