Improvement: memory optimizations, reducing the retained size of a Document by ~ 39%, and allocations by ~ 9%:
Attributes holder in Elements is only created if the element has attributes
Only track the baseUri in an element when it is set via DOM to a new value for a given tree
After parsing, do not retain the input character reader (and associated buffers) in the Document#parser
Improvement: when pretty-printing, comments in inline tags are not pushed to a newline
Improvement: added Attributes#hasDeclaredValueForKey(key) and Attribute#hasDeclaredValueForKeyIgnoreCase(), to check
if an attribute is set but has no value. Useful in place of the deprecated and removed BooleanAttribute class and
instanceof test.
Improvement: removed old methods and classes that were marked deprecated in previous releases.
Bugfix: in a
Bugfix: in CharacterReader when parsing an input stream, could throw a Mark Invalid exception if the reader was
marked, a bufferUp occurred, and then the reader was rewound.
jhy/jsoup#1324
Bugfix: empty tags and form tags did not have their attributes normalized (lower-cased by default)
jhy/jsoup#1323
Bugfix: when preserve case was set to on, the HTML pretty-print formatter didn't indent capitalized tags correctly.
Bugfix: ensure that script and style contents are parsed into DataNodes, not TextNodes, when in case-sensitive
parse mode.
**** Release 1.12.2 [2020-Feb-08]
Improvement: the :has() selector now supports relative selectors. For example, the query
"div:has(> a)" will select all "div" elements that have at least one direct child "a" element.
jhy/jsoup#1214
Improvement: added Element chaining methods for various overridden methods on Node.
jhy/jsoup#1193
Improvement: ensure HTTP keepalives work when fetching content via body() and bodyAsBytes().
jhy/jsoup#1232
Improvement: set the default max body size in Jsoup.Connection to 2MB (up from 1MB) so fewer people get trimmed
content if they have not set it, but still in sensible bounds. Also updated the default user-agent to improve
default compatibility.
Improvement: dramatic speed improvement when bulk inserting child nodes into an element (wrapping contents).
jhy/jsoup#1281
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.
Note: This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit.
You can always request more updates by clicking Bump now in your Dependabot dashboard.
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
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps jsoup from 1.8.3 to 1.12.2.
Changelog
Sourced from jsoup's changelog.
Commits
6ef8922
[maven-release-plugin] prepare release jsoup-1.12.2e81c35f
Fix file to LF endingsd06d8f4
Avoid unnecessary null checks, as Element#indexInList never returns null.f91e1e8
Avoid unnecessary boxing of char in TokenQueue#chompBalanced.a0711e5
Use String#replace instead of String#replaceAll where possible.0bec593
Readme URL updatee020854
In W3CDom, handle doctypes, and don't force XML outputfb50d96
Deepclone attributes in LeafNodes if set3bd77f8
Don't want that6b2bf55
Added test to validate #1243Dependabot 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
.Note: This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit.
You can always request more updates by clicking
Bump now
in your Dependabot dashboard.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 - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)