Update dependency org.jsoup:jsoup to v1.21.1 #499
No reviewers
Labels
No labels
antville.org
bug
compatibility
dependency
duplicate
enhancement
help wanted
invalid
java
javascript
major
needs feedback
needs work
no-issue-activity
runtime
security
urgent
usability
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: antville/antville#499
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "renovate/org.jsoup-jsoup-1.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
1.19.1
->1.21.1
Release Notes
jhy/jsoup (org.jsoup:jsoup)
v1.21.1
Changes
:matchText
pseduo-selector due to its side effects on the DOM; use the new::textnode
selector and theElement#selectNodes(String css, Class type)
method instead. #2343Connection.Response#bufferUp()
in lieu ofConnection.Response#readFully()
which can throw a checked IOException.Validate#ensureNotNull
(replaced by typedValidate#expectNotNull
); protected HTML appenders from Attribute and Node.Improvements
Selector
to support direct matching against nodes such as comments and text nodes. For example, you can now find an element that follows a specific comment:::comment:contains(prices) + p
will selectp
elements immediately after a<!-- prices: -->
comment. Supported types include::node
,::leafnode
,::comment
,::text
,::data
, and::cdata
. Node contextual selectors like::node:contains(text)
,:matches(regex)
, and:blank
are also supported. IntroducedElement#selectNodes(String css)
andElement#selectNodes(String css, Class nodeType)
for direct node selection. #2324TagSet#onNewTag(Consumer<Tag> customizer)
: register a callback that’s invoked for each new or cloned Tag when it’s inserted into the set. Enables dynamic tweaks of tag options (for example, marking all custom tags as self-closing, or everything in a given namespace as preserving whitespace).TokenQueue
andCharacterReader
autocloseable, to ensure that they will release their buffers back to the buffer pool, for later reuse.Selector#evaluatorOf(String css)
, as a clearer way to obtain an Evaluator from a CSS query. An alias ofQueryParser.parse(String css)
.TagSet
) in a foreign namespace (e.g. SVG) can be configured to parse as data tags.NodeVisitor#traverse(Node)
to simplify node traversal calls (vs. importingNodeTraversor
).Connection#readFully()
as a replacement forConnection#bufferUp()
with an explicit IOException. Similarly, addedConnection#readBody()
overConnection#body()
. DeprecatedConnection#bufferUp()
. #2327<
and>
characters are now escaped in attributes. This helps prevent a class of mutation XSS attacks. #2337Connection
to prefer using the JDK's HttpClient over HttpUrlConnection, if available, to enable HTTP/2 support by default. Users can disable via-Djsoup.useHttpClient=false
. #2340Bug Fixes
script
in asvg
foreign context should be parsed as script data, not text. #2320Tag#isFormSubmittable()
was updating the Tag's options. #2323v1.20.1
Changes
<foo />
)to close HTML elements by default. Foreign content (SVG, MathML), and content parsed with the XML parser, still
supports self-closing tags. If you need specific HTML tags to support self-closing, you can register a custom tag via
the
TagSet
configured inParser.tagSet()
, usingTag#set(Tag.SelfClose)
. Standard void tags (such as<img>
,<br>
, etc.) continue to behave as usual and are not affected by thischange. #2300.
ChangeNotifyingArrayList
,Document.updateMetaCharsetElement()
,Document.updateMetaCharsetElement(boolean)
,HtmlTreeBuilder.isContentForTagData(String)
,Parser.isContentForTagData(String)
,Parser.setTreeBuilder(TreeBuilder)
,Tag.formatAsBlock()
,Tag.isFormListed()
,TokenQueue.addFirst(String)
,TokenQueue.chompTo(String)
,TokenQueue.chompToIgnoreCase(String)
,TokenQueue.consumeToIgnoreCase(String)
,TokenQueue.consumeWord()
,TokenQueue.matchesAny(String...)
Functional Improvements
Tags, and provide a cleaner path for ongoing improvements. The specific HTML produced by the pretty-printer may be
different from previous versions. #2286.
TagSet
tag collection.Their properties can impact both the parse and how content is
serialized (output as HTML or XML). #2285.
Element.cssSelector()
will prefer to return shorter selectors by using ancestor IDs when available and unique. E.g.#id > div > p
instead ofhtml > body > div > div > p
#2283.Elements.deselect(int index)
,Elements.deselect(Object o)
, andElements.deselectAll()
methods to removeelements from the
Elements
list without removing them from the underlying DOM. Also addedElements.asList()
methodto get a modifiable list of elements without affecting the DOM. (Individual Elements remain linked to the
DOM.) #2100.
Connection.requestBodyStream(InputStream stream)
. #1122.Attributes. Also, added
Tag#prefix()
,Tag#localName()
,Attribute#prefix()
,Attribute#localName()
, andAttribute#namespace()
to retrieve these. #2299.Element#cssSelector()
will emitappropriately escaped selectors, and the QueryParser supports those. Added
Selector.escapeCssIdentifier()
andSelector.unescapeCssIdentifier()
. #2297, #2305Structure and Performance Improvements
QueryParser
into a clearer recursive descentparser. #2310.
div >> p
) will throw an explicit parseexception. #2311.
#2307.
HTML. #2304.
Parser
instances threadsafe, so that inadvertent use of the same instance across threads will not lead toerrors. For actual concurrency, use
Parser#newInstance()
perthread. #2314.
Bug Fixes
serializing. #1496.
encoded). #1743.
Document
to the W3C DOM inW3CDom
, elements with an attribute in an undeclared namespace nowget a declaration of
xmlns:prefix="undefined"
. This allows subsequent serialization to XML viaW3CDom.asString()
to succeed. #2087.
StreamParser
could emit the final elements of a document twice, due to howonNodeCompleted
was fired when closing out the stack. #2295.?
in<?xml version="1.0"?>
wouldincorrectly emit an error. #2298.
Element#cssSelector()
on an element with combining characters in the class or ID now produces the correct output. #1984.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
Update dependency org.jsoup:jsoup to v1.20.1to Update dependency org.jsoup:jsoup to v1.21.16ee6b23548
to77c99be343
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.