Skip to content

Bump soupsieve from 2.8.4 to 2.9 - #465

Merged
aaronspring merged 1 commit into
mainfrom
dependabot/uv/soupsieve-2.9
Sep 21, 2026
Merged

aaronspring merged 1 commit into
mainfrom
dependabot/uv/soupsieve-2.9

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 18, 2026

Copy link
Copy Markdown
Contributor

Bumps soupsieve from 2.8.4 to 2.9.

Release notes

Sourced from soupsieve's releases.

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).
Commits
  • 8763f91 Format changelog message
  • cf198fc Fix inefficient trimming of comments and white space
  • ce44e49 Merge commit from fork
  • 751c57b Fix :nth-child/:nth-of-type matching for An+B index boundaries (#297)
  • 08e9ede Drop Python 3.9
  • d6e6830 Rework selector mapping
  • d2d1581 Utilize property for accessing lazy regular expression pattern
  • b8701de Build patterns and regexes lazily in css_parser (#296)
  • See full diff in compare view

Dependabot compatibility score

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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [soupsieve](https://github.com/facelessuser/soupsieve) from 2.8.4 to 2.9.
- [Release notes](https://github.com/facelessuser/soupsieve/releases)
- [Commits](facelessuser/soupsieve@2.8.4...2.9)

---
updated-dependencies:
- dependency-name: soupsieve
  dependency-version: '2.9'
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Sep 18, 2026
@aaronspring

Copy link
Copy Markdown
Collaborator

Why is soupsieve in this repo at all?

It is a fourth-level transitive dependency of the docs extra only — nothing xskillscore itself imports:

xskillscore[complete] → nbsphinx → nbconvert → beautifulsoup4 → soupsieve

soupsieve is the CSS-selector engine BeautifulSoup uses; nbconvert uses BeautifulSoup to post-process the HTML of the executed notebooks in docs/source/*.ipynb. So it is only ever pulled in when someone builds the documentation.

It is not a runtime dependency. pip install xskillscore installs only dask[array], numpy, properscoring, scipy, statsmodels, xarray, xhistogram (pyproject.toml [project].dependencies) — no BeautifulSoup, no soupsieve. It is not in the accel or test extras either.

Two notes on this particular bump:

  • 2.9 drops Python 3.9 support. Irrelevant for us since Drop Python 3.9 support and bump GHA actions to Node.js 24 #452 raised requires-python to >=3.10.
  • uv.lock is currently not consumed by anything: no workflow in .github/workflows/ runs uv sync/uv run --locked, and the docs jobs resolve nbsphinx through conda (ci/doc.yml, ci/docs_notebooks.yml). So merging this changes no environment that CI or users actually install.

Merging is harmless; it just has no effect outside a local uv sync. If these uv-lock bumps feel like churn, the two ways out are (a) add a job that actually exercises the lockfile (uv sync --locked + pytest), which would make the bumps meaningful, or (b) add a .github/dependabot.yml that groups dev/docs transitives into a single monthly PR.


Generated by Claude Code

@aaronspring
aaronspring merged commit c0dec31 into main Sep 21, 2026
15 of 16 checks passed
@aaronspring
aaronspring deleted the dependabot/uv/soupsieve-2.9 branch September 21, 2026 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant