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: An exract method (cheeriojs/cheerio#2523) and NodeJS specific loader methods (cheeriojs/cheerio#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
Cheerio is now a dual CommonJS and ESM module. That means that deep imports will now fail in newer versions of Node. cheeriojs/cheerio#2508
Starting with 1.0.0-rc.4, release notes are exclusively tracked in
GitHub Releases.
1.0.0-rc.3 / 2019-04-06
This release corrects a test expectation that was fixed by one of the project's
dependencies.
1.0.0-rc.2 / 2017-07-02
This release changes Cheerio's default parser to the Parse5 HTML
parser. Parse5 is an excellent project
that rigorously conforms to the HTML standard. It does not support XML, so
Cheerio continues to use htmlparser2
when working with XML documents.
This switch addresses many long-standing bugs in Cheerio, but some users may
experience slower behavior in performance-critical applications. In addition,
htmlparser2 is more forgiving of invalid markup which can be useful when
input sourced from a third party and cannot be corrected. For these reasons,
the load method also accepts a DOM structure as produced by the htmlparser2
library. See the project's "readme" file for more details on this usage
pattern.
Migrating from version 0.x
cheerio.load( html[, options ] ) This method continues to act as a "factory"
function. It produces functions that define an API that is similar to the
global jQuery function provided by the jQuery library. The generated function
operates on a DOM structure based on the provided HTML.
In releases prior to version 1.0, the provided HTML was interpreted as a
document fragment. Following version 1.0, strings provided to the load method
are interpreted as documents. The same example will produce a $ function that
operates on a full HTML document, including an <html> document element with
nested <head> and <body> tags. This mimics web browser behavior much more
closely, but may require alterations to existing code.
For example, the following code will produce different results between 0.x and
1.0 releases:
var $ = cheerio.load('<p>Hello, <b>world</b>!</p>');
$.root().html();
//=> In version 0.x: '<p>Hello, <b>world</b>!</p>'
//=> In version 1.0: '<html><head></head><body><p>Hello, <b>world</b>!</p></body></html>'
Users wishing to parse, manipulate, and render full documents should not need
to modify their code. Likewise, code that does not interact with the "root"
This major release fully focuses on getting in sync with the wider ESLint ecosystem
and doesn't in itself introduce any new rules or features.
When you upgrade, consider running standard --fix to automatically format your
code to match the current set of rules.
This is the first release by two of our standard co-maintainers @Divlo and @voxpelli.
Buy them a cake if you run into them, thanks for getting this release out!
Major changes
eslint-config-node has been replaced with the up to date fork eslint-config-n. If you have used comments like // eslint-disable-line node/no-deprecated-api you now have to reference the n/ rules instead.
We're finally able to offer a pre-release of ESLint 8 based standard 17!
This major release fully focuses on getting in sync with the wider ESLint ecosystem and doesn't in itself introduce any new rules or features.
This pre-release exists to test out the ESLint 8 related changes and discover possible backwards incompatible changes that comes with it and mitigate unintended such before a stable release.
When you upgrade, consider running standard --fix to automatically format your code to match the current set of rules.
This major release fully focuses on getting in sync with the wider ESLint ecosystem
and doesn't in itself introduce any new rules or features.
When you upgrade, consider running standard --fix to automatically format your
code to match the current set of rules.
This is the first release by two of our standard co-maintainers @Divlo and @voxpelli. Buy them a cake if you run into them, thanks for getting this release out!
Major changes
eslint-config-node has been replaced with the up to date fork eslint-config-n. If you have used comments like // eslint-disable-line node/no-deprecated-api you now have to reference the n/ rules instead.
Use of ESLint 8, which allows for support for all of the latest syntax that ESLint 8 includes, such as top level await#1548#1775
--verbose by default
Changed features
Update eslint from ~7.18.0 to ^8.13.0
Update eslint-config-standard from 16.0.3 to 17.0.0 to adapt to ESLint 8
Update eslint-config-standard-jsx from 10.0.0 to ^11.0.0 to adapt to ESLint 8
Update standard-engine from ^14 to ^15.0.0 to adapt to ESLint 8, see its CHANGELOG
Move from eslint-plugin-node@~11.1.0 to eslint-plugin-n@^15.1.0 to adapt to ESLint 8
Update eslint-plugin-import from ~2.24.2 to ^2.26.0
Update eslint-plugin-promise from ~5.1.0 to ^6.0.0
Update eslint-plugin-react from ~7.25.1 to ^7.28.0
[17.0.0-2] - 2022-02-03
Fix: Follow up to the fix of #1548 in 17.0.0-1#1775
[17.0.0-1] - 2022-01-31
Fix: Ensure we support all of the latest syntax that ESLint 8 includes, such as top level await#1548
[17.0.0-0] - 2022-01-31
We're finally able to offer a pre-release of ESLint 8 based standard 17!
This major release fully focuses on getting in sync with the wider ESLint ecosystem
and doesn't in itself introduce any new rules or features.
This pre-release exists to test out the ESLint 8 related changes and discover
possible backwards incompatible changes that comes with it and mitigate
unintended such before a stable release.
When you upgrade, consider running standard --fix to automatically format your
This version was pushed to npm by voxpelli, a new releaser for standard since your current version.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/jlord/git-it-electron/network/alerts).
Removes lodash. It's no longer used after updating ancestor dependencies lodash, cheerio and standard. These dependencies need to be updated together.
Removes
lodash
Updates
cheerio
from 0.19.0 to 1.0.0-rc.12Release notes
Sourced from cheerio's releases.
... (truncated)
Changelog
Sourced from cheerio's changelog.
... (truncated)
Commits
d1cbc66
1.0.0-rc.124b4432f
chore: Update license to 202272e3c42
chore(deps): Remove tslib dependency810ce07
build(deps-dev): bump@types/node
from 17.0.43 to 18.0.0 (#2596)b6bdc24
doc(comments): fix minor spelling mistake (#2585)aef3205
Update Sponsors (#2599)febcb41
build(deps-dev): bump jsdom from 19.0.0 to 20.0.0 (#2606)16a3adb
docs: update History.md (#2588)43d9f50
fix(package): Allow imports ofcheerio/lib/utils
(#2601)6fe629a
build(deps-dev): bump@types/jest
from 28.1.2 to 28.1.3 (#2609)Updates
standard
from 5.4.1 to 17.0.0Release notes
Sourced from standard's releases.
... (truncated)
Changelog
Sourced from standard's changelog.
... (truncated)
Commits
d511a2b
17.0.067af3a4
UpdateCHANGELOG.md
2ca9ad4
Update dependencies717ae8e
Disable/remove packages broken for other reasons41a78f3
Disable packages broken byeslint 7.19.0
72774e8
Disable packages broken byeslint-plugin-n
0dd0ea4
build(deps): bump actions/checkout from 2 to 3ca1219c
Merge pull request #1776 from standard/prerelease-17.0.0439b57c
chore: add CHANGELOG entrya16c41a
17.0.0-2Maintainer changes
This version was pushed to npm by voxpelli, a new releaser for standard since your current version.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/jlord/git-it-electron/network/alerts).