[Snyk] Upgrade: async, body-parser, cheerio, exceljs, express, faker, mongoose, multer, multer-s3, nodemailer, public-ip, socket.io, xlsx #43
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Snyk has created this PR to upgrade multiple dependencies.
👯♂ The following dependencies are linked and will therefore be updated together.ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
async
from 3.2.0 to 3.2.6 | 6 versions ahead of your current version | 22 days ago
on 2024-08-19
body-parser
from 1.19.0 to 1.20.2 | 5 versions ahead of your current version | 2 years ago
on 2023-02-22
cheerio
from 1.0.0-rc.3 to 1.0.0 | 10 versions ahead of your current version | a month ago
on 2024-08-09
exceljs
from 4.1.1 to 4.4.0 | 4 versions ahead of your current version | a year ago
on 2023-10-19
express
from 4.17.1 to 4.19.2 | 9 versions ahead of your current version | 6 months ago
on 2024-03-25
faker
from 5.1.0 to 5.5.3 | 8 versions ahead of your current version | 3 years ago
on 2021-04-08
mongoose
from 5.10.5 to 5.13.22 | 74 versions ahead of your current version | 8 months ago
on 2024-01-02
multer
from 1.4.2 to 1.4.4 | 3 versions ahead of your current version | 3 years ago
on 2021-12-07
multer-s3
from 2.9.0 to 2.10.0 | 2 versions ahead of your current version | 3 years ago
on 2021-10-17
nodemailer
from 6.4.11 to 6.9.14 | 39 versions ahead of your current version | 3 months ago
on 2024-06-19
public-ip
from 4.0.2 to 4.0.4 | 2 versions ahead of your current version | 3 years ago
on 2021-05-29
socket.io
from 2.3.0 to 2.5.1 | 4 versions ahead of your current version | 3 months ago
on 2024-06-19
xlsx
from 0.16.8 to 0.18.5 | 13 versions ahead of your current version | 2 years ago
on 2022-03-24
Issues fixed by the recommended upgrade:
SNYK-JS-ASYNC-2441827
SNYK-JS-IP-6240864
SNYK-JS-WS-7266574
SNYK-JS-XLSX-1311137
SNYK-JS-XLSX-1311139
SNYK-JS-XLSX-1311141
SNYK-JS-SOCKETIO-7278048
SNYK-JS-DNSPACKET-1293563
SNYK-JS-SOCKETIOPARSER-1056752
SNYK-JS-ENGINEIO-1056749
SNYK-JS-ENGINEIO-3136336
SNYK-JS-XMLHTTPREQUESTSSL-1082936
SNYK-JS-XMLHTTPREQUESTSSL-1255647
SNYK-JS-WS-7266574
SNYK-JS-MQUERY-1050858
SNYK-JS-MQUERY-1089718
SNYK-JS-NODEMAILER-1038834
SNYK-JS-LODASH-1040724
SNYK-JS-NTHCHECK-1586032
SNYK-JS-QS-3153490
SNYK-JS-MONGOOSE-2961688
SNYK-JS-MONGOOSE-5777721
SNYK-JS-JSZIP-1251497
SNYK-JS-JSZIP-3188562
SNYK-JS-LODASH-1018905
SNYK-JS-WS-1296835
SNYK-JS-IP-7148531
SNYK-JS-SOCKETIO-1024859
SNYK-JS-ISSVG-1085627
SNYK-JS-ISSVG-1243891
SNYK-JS-EXPRESS-6474509
SNYK-JS-WS-1296835
SNYK-JS-MPATH-1577289
SNYK-JS-NODEMAILER-1296415
SNYK-JS-NODEMAILER-6219989
SNYK-JS-MINIMATCH-3050818
SNYK-JS-MONGODB-5871303
SNYK-JS-MONGOOSE-1086688
Release notes
Package name: async
Version 3.2.6
Version 3.2.5
Version 3.2.4
Version 3.2.3
Version 3.2.2
Version 3.2.1
Version 3.2.0
Package name: body-parser
strict
eval
usage withFunction
constructorprocess
to check for listeners__proto__
keyspb
) supportthrow
on invalid typePackage name: cheerio
Cheerio 1.0 is here! 🎉
Announcement Blog Post
Breaking Changes
The minimum NodeJS version is now 18.17 or higher #3959
Import paths were simplified. For example, use
cheerio/slim
instead ofcheerio/lib/slim
. #3970The deprecated default Cheerio instance and static methods were removed. #3974
Before, it was possible to write code like this:
html(cheerio('<test></test>')); // ~ '<test></test>' -- NO LONGER WORKS
Make sure to always load documents first:
cheerio.load('<test></test>').html();
Node types previously re-exported by Cheerio must now be imported directly
from (
domhandler
)(https://github.com/fb55/domhandler). #3969htmlparser2 options now reside exclusively under the
xml
key (#2916):New Features
Fixes
cheerio/utils
by @ blixt in #2601data
, and simplify by @ fb55 in #2818closest
be able to start from text nodes by @ Qualtagh in #2811Other
Full Changelog: v1.0.0-rc.12...v1.0.0
Bugfix release. Fixed issues:
prop
undefined handling with jQuery by @ fb55 in #2557cheerio/lib/utils
by @ blixt in #2601New Contributors
Full Changelog: v1.0.0-rc.11...v1.0.0-rc.12
cheerio@1.0.0-rc.11
is hopefully the last RC before the 1.0.0 release of Cheerio. There are two APIs that will be added for the next major release: Anexract
method (#2523) and NodeJS specific loader methods (#2051). These are still in flux and I'd appreciate feedback on the proposals.A big thank you to everyone that contributed to this release! This includes code contributors, as well as the amazing financial support on GitHub Sponsors!
Under the hood, a lot of work for this release went into updating parse5, cheerio's default HTML parser. Have a look at parse5's release notes to see what has changed there.
Breaking
script
andstyle
contents are added again in.text()
#2509.text()
to.prop('innerText')
Features
cheerio-select
#2511pseudos
option..prop()
method:textContent
andinnerText
props #2214baseURI
option, which will lead tohref
andsrc
props to be resolved as URLs. #2510slim
export, which will always use htmlparser2 #1960Fixes
text
turn passed values to strings #2047undefined
in the return type ofget
by @ glen-84 in #2392undefined
return value #2505Refactor
domutils
module directly #1928isHTML
#1935load
#1951closest
#2057Development Experience
Docs
New Contributors
Full Changelog: v1.0.0-rc.10...v1.0.0-rc.11
Fixes:
.html(node)
now moves passed nodes (#1923, fixes #940) 258b26bfilter
work on all collections (#1870, fixes #1867) fb8d31eDocumentation:
require
5dfbd35Refactors:
traversing
(#1909) 58e090ais
totraversing
, optimize (#1908) 1c6fa3edomEach
(#1892) feda230load
export a function (#1869) c370f4ev1.0.0-rc.9...v1.0.0-rc.10
Port to TypeScript
Cheerio has been ported entirely to TypeScript (in #1816)! This eliminates a lot of edge-cases within Cheerio and will allow you to use Cheerio with confidence. This release also features a new documentation website based on TypeDoc, allowing you to quickly navigate all available methods: https://cheerio.js.org
Breaking change: If you were using the function exported by Cheerio directly instead of first
load()
ing a document, you will now have to update therequire
to use thedefault
export.+ const cheerio = require("cheerio").default;
cheerio('div', dom)
Please note that this way of using Cheerio is deprecated and might be removed in a future version. Please consider updating your code to:
const $ = cheerio.load(dom)
$('div')
Note: Cheerio uses template literal types to determine return types. These are available starting with TypeScript 4.1, so you might have to bump your TypeScript version.
For TypeScript types, Cheerio now implements the
ArrayLike<T>
interface. That means that Cheerio instances can contain objects of arbitrary types, but not all methods can be called on them.The TypeScript compiler will figure out what structures you are operating on:
$('<div>')
, it will product aCheerio<Node>
type.Node
is the base class for DOM elements and includes eg. comment and text nodes.$('.foo')
, it will produce aCheerio<Element>
, as onlyElement
s can be part of the result set.Element
is the class representing tags.$('...').map()
to map to arbitrary values, and will get a compiler error when trying to call method that are not supported.$('.foo').map((i, el) => $(el).text()).attr('test')
will no longer be possible, as.attr
is not allowed to be called on aCheerio<string>
.This release does not contain other changes to functionality. Feedback is greatly appreciated; if you encounter a problem, please file an issue!
v1.0.0-rc.6...v1.0.0-rc.9
Second botched release. Please use
v1.0.0-rc.9
instead.Published without a
lib
directory — please ignore.Breaking:
prevAll
,prevUntil
andparentsUntil
. The new order matches jQuery.This release contains three breaking changes inherited from dependencies.
type: 'tag'
.New features:
.unwrap
(#1651 by @ 5saviahv) 2037d83.wrapAll
(#1590 by @ 5saviahv) cd4a4d9prop('innerHTML')
(#1578 by @ fb55) c58258fscriptingEnabled
parse5 option (#1707 by @ 5saviahv) 7eb4cc4scriptingEnabled
tofalse
, it is now possible to parse the contents of<noscript>
tags.Types:
.load
type (#1584 by @ f0x52) 6a90bda.get
(