Releases: facelessuser/soupsieve
Releases · facelessuser/soupsieve
Release list
2.9.1
2.9.1
- FIX: Correct
[attr^=""],[attr$=""], and[attr*=""]to match nothing when the value is empty, per CSS
Selectors Level 4 substring matching, which previously matched any element merely having the attribute
(@chuenchen309).
2.9
2.9
- NEW: Drop Python 3.9 support.
- NEW: Lazy compile selector patterns to improve initial import speed.
- FIX: Correct
:nth-child/:nth-of-type(and-last-variants) forAn+Bvalues whose sequence steps onto
index 0 or onto the last child (e.g.:nth-child(2n-2),:nth-child(n-1),:nth-child(n+5)), which previously
matched the wrong elements or nothing at all (@gaoflow). - FIX: More efficient CSS ID matching (@kaimandalic).
- FIX: Fix inefficient trimming of comments and white space (@kaimandalic).
2.8.4
2.8.4
- FIX: Fix another inefficient attribute pattern (@mauriceng98).
- FIX: Limit total number of selectors processed in a pattern to prevent massive selector requests (@mauriceng98).
2.8.3
2.8.3
- FIX: Fix inefficient attribute pattern.
2.8.2
2.8.2
- FIX: Ensure custom selectors or namespace dictionaries reject non-string keys (@mundanevision20).
- FIX: Fix handling of
:in-rangeand:out-of-rangewith end of year weeks (@mundanevision20). - FIX: Fix a potential infinite loop in the pretty printing debug function (@mundanevision20).
2.8.1
2.8.1
- FIX: Changes in tests to accommodate latest Python HTML parser changes.
2.8
2.8
- NEW: Drop support for Python 3.8.
- NEW: Add support for Python 3.14.
- NEW: Deploy with PyPI's "Trusted Publisher".
2.7
2.7
- NEW: Add
:openpseudo selector. - NEW: Add
:mutedpseudo selector. - NEW: Recognize the following pseudo selectors:
:autofill,:buffering,:fullscreen,:picture-in-picture,
:popover-open,:seeking,:stalled, and:volume-locked. These selectors, while recognized, will not match any
element as they require a live environment to check element states and browser states. This just prevents Soup Sieve
from failing when any of these selectors are specified. - NEW: A number of existing pseudo-classes are no longer noted as experimental.
- FIX: Typing fixes.
2.6
2.6
- NEW: Add official support for Python 3.13.
- NEW: Add support for
&as scoping root per the CSS Nesting Module, Level 1. When&is used outside the
context of nesting, it is treated as the scoping root (equivalent to:scope). - FIX: Improve error message when an unrecognized pseudo-class is used.
2.5
2.5
- NEW: Update to support Python 3.12.
- NEW: Drop support for Python 3.7.