Skip to content

Releases: facelessuser/soupsieve

2.9.1

Choose a tag to compare

@facelessuser facelessuser released this 21 Jul 16:56

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

Choose a tag to compare

@facelessuser facelessuser released this 19 Jul 01:34

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) for An+B values 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

Choose a tag to compare

@facelessuser facelessuser released this 24 May 13:55

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

Choose a tag to compare

@facelessuser facelessuser released this 20 Jan 04:26

2.8.3

  • FIX: Fix inefficient attribute pattern.

2.8.2

Choose a tag to compare

@facelessuser facelessuser released this 18 Jan 16:20

2.8.2

  • FIX: Ensure custom selectors or namespace dictionaries reject non-string keys (@mundanevision20).
  • FIX: Fix handling of :in-range and :out-of-range with end of year weeks (@mundanevision20).
  • FIX: Fix a potential infinite loop in the pretty printing debug function (@mundanevision20).

2.8.1

Choose a tag to compare

@facelessuser facelessuser released this 18 Dec 13:50

2.8.1

  • FIX: Changes in tests to accommodate latest Python HTML parser changes.

2.8

2.8

Choose a tag to compare

@facelessuser facelessuser released this 27 Aug 15:39
bf93778

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

Choose a tag to compare

@facelessuser facelessuser released this 20 Apr 18:49

2.7

  • NEW: Add :open pseudo selector.
  • NEW: Add :muted pseudo 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

Choose a tag to compare

@facelessuser facelessuser released this 13 Aug 13:38
f974ea7

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

Choose a tag to compare

@facelessuser facelessuser released this 02 Sep 12:47

2.5

  • NEW: Update to support Python 3.12.
  • NEW: Drop support for Python 3.7.