Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 11, 2026

Bumps pathspec from 0.12.1 to 1.0.3.

Release notes

Sourced from pathspec's releases.

v1.0.3

Release v1.0.3. See CHANGES.rst.

v1.0.2

Release v1.0.2. See CHANGES.rst.

v1.0.1

Release v1.0.1. See CHANGES.rst.

v1.0.0

Release v1.0.0. See CHANGES.rst.

Changelog

Sourced from pathspec's changelog.

1.0.3 (2026-01-09)

Bug fixes:

  • Issue [#101](https://github.com/cpburnz/python-pathspec/issues/101)_: pyright strict errors with pathspec >= 1.0.0.
  • Issue [#102](https://github.com/cpburnz/python-pathspec/issues/102)_: No module named 'tomllib'.

.. _Issue [#101](https://github.com/cpburnz/python-pathspec/issues/101): cpburnz/python-pathspec#101 .. _Issue [#102](https://github.com/cpburnz/python-pathspec/issues/102): cpburnz/python-pathspec#102

1.0.2 (2026-01-07)

Bug fixes:

  • Type hint collections.abc.Callable does not properly replace typing.Callable until Python 3.9.2.

1.0.1 (2026-01-06)

Bug fixes:

  • Issue [#100](https://github.com/cpburnz/python-pathspec/issues/100)_: ValueError(f"{patterns=!r} cannot be empty.") when using black.

.. _Issue [#100](https://github.com/cpburnz/python-pathspec/issues/100): cpburnz/python-pathspec#100

1.0.0 (2026-01-05)

Major changes:

  • Issue [#91](https://github.com/cpburnz/python-pathspec/issues/91)_: Dropped support of EoL Python 3.8.
  • Added concept of backends to allow for faster regular expression matching. The backend can be controlled using the backend argument to PathSpec(), PathSpec.from_lines(), GitIgnoreSpec(), and GitIgnoreSpec.from_lines().
  • Renamed "gitwildmatch" pattern back to "gitignore". The "gitignore" pattern behaves slightly differently when used with PathSpec (gitignore as documented) than with GitIgnoreSpec (replicates Git's edge cases).

API changes:

  • Breaking: protected method pathspec.pathspec.PathSpec._match_file() (with a leading underscore) has been removed and replaced by backends. This does not affect normal usage of PathSpec or GitIgnoreSpec. Only custom subclasses will be affected. If this breaks your usage, let me know by opening an issue <https://github.com/cpburnz/python-pathspec/issues>_.
  • Deprecated: "gitwildmatch" is now an alias for "gitignore".
  • Deprecated: pathspec.patterns.GitWildMatchPattern is now an alias for pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.
  • Deprecated: pathspec.patterns.gitwildmatch module has been replaced by the pathspec.patterns.gitignore package.
  • Deprecated: pathspec.patterns.gitwildmatch.GitWildMatchPattern is now an alias for pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.
  • Deprecated: pathspec.patterns.gitwildmatch.GitWildMatchPatternError is now an alias for pathspec.patterns.gitignore.GitIgnorePatternError.
  • Removed: pathspec.patterns.gitwildmatch.GitIgnorePattern has been deprecated since v0.4 (2016-07-15).

... (truncated)

Commits

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 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 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)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Jan 11, 2026
@coderabbitai
Copy link

coderabbitai bot commented Jan 11, 2026

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@winstonsung
Copy link
Collaborator

@dependabot rebase

@dependabot dependabot bot force-pushed the dependabot/uv/dev/pathspec-1.0.3 branch from d251471 to 3e49ddb Compare January 11, 2026 10:42
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Jan 11, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@winstonsung winstonsung deleted the dependabot/uv/dev/pathspec-1.0.3 branch January 11, 2026 10:50
@winstonsung
Copy link
Collaborator

Why Dependabot didn't update uv.lock as well in this pull request?

@coderabbitai

@coderabbitai
Copy link

coderabbitai bot commented Jan 11, 2026

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash

# Check what files were changed in PR #370
echo "=== Files changed in PR #370 ==="
gh pr view 370 --json files --jq '.files[].path'

echo -e "\n=== Dependabot configuration ==="
cat .github/dependabot.yml

echo -e "\n=== Check if uv.lock exists ==="
if [ -f "uv.lock" ]; then
    echo "uv.lock exists"
    echo -e "\n=== Current pathspec version in uv.lock ==="
    grep -A 5 "name = \"pathspec\"" uv.lock | head -20
else
    echo "uv.lock does not exist"
fi

echo -e "\n=== Check requirements.txt pathspec version ==="
if [ -f "requirements.txt" ]; then
    grep pathspec requirements.txt
else
    echo "requirements.txt does not exist"
fi

echo -e "\n=== Check if pathspec is in pyproject.toml ==="
if [ -f "pyproject.toml" ]; then
    grep -i pathspec pyproject.toml || echo "pathspec not found in pyproject.toml"
else
    echo "pyproject.toml does not exist"
fi

Length of output: 1841


🏁 Script executed:

#!/bin/bash

echo "=== Check requirements_dev.txt content (pathspec line) ==="
if [ -f "requirements_dev.txt" ]; then
    grep pathspec requirements_dev.txt || echo "pathspec not found in requirements_dev.txt"
    echo -e "\n=== Full requirements_dev.txt content ==="
    cat requirements_dev.txt
else
    echo "requirements_dev.txt does not exist"
fi

echo -e "\n=== List all requirements files ==="
fd -e txt -e in "requirements"

echo -e "\n=== Check PR diff for requirements_dev.txt ==="
gh pr diff 370 -- requirements_dev.txt

Length of output: 4941


🏁 Script executed:

#!/bin/bash

echo "=== Get full PR diff ==="
gh pr diff 370

echo -e "\n=== Check current pathspec versions ==="
echo "In requirements_dev.txt:"
grep "pathspec==" requirements_dev.txt

echo -e "\nIn uv.lock:"
grep -A 2 'name = "pathspec"' uv.lock | grep "version"

Length of output: 864


@winstonsung, you've caught an important issue! 🐱 Based on my investigation, I can see that:

What happened:

  • Only requirements_dev.txt was updated in this PR (pathspec 0.12.1 → 1.0.3)
  • uv.lock still shows pathspec version 0.12.1 and was not updated

The expected behavior:
According to the previous learning about this repository, both the pip and uv package ecosystems are configured in .github/dependabot.yml to ensure that uv.lock and requirements files are updated together in the same Dependabot PR, avoiding the need for follow-up CI commits.

Why this might have happened:

  1. Dev dependencies handling: The uv ecosystem in Dependabot might not recognize or process requirements_dev.txt files the same way it handles main dependencies
  2. Transitive dependency limitation: pathspec is a transitive dependency (it comes from black), and Dependabot's uv ecosystem might not detect transitive dependency updates
  3. Ecosystem limitation: The uv ecosystem support in Dependabot might be limited compared to the pip ecosystem

What happens next:
Your sync_dependencies.yml workflow should automatically run after this PR is merged and synchronize uv.lock with the updated requirements_dev.txt. However, this creates the extra CI commit that the dual configuration was meant to avoid.

Recommendation:
You might want to check if this is a known limitation of Dependabot's uv ecosystem support for dev dependencies, or consider opening an issue with the Dependabot team about this behavior.


🧠 Learnings used
Learnt from: winstonsung
Repo: SCAICT/SCAICT-uwu PR: 366
File: .github/dependabot.yml:16-21
Timestamp: 2026-01-10T18:47:53.744Z
Learning: In the SCAICT/SCAICT-uwu repository's .github/dependabot.yml, both the `pip` and `uv` package ecosystems are intentionally configured. The `uv` ecosystem manages uv.lock, while the `pip` ecosystem manages requirements.txt. This dual configuration ensures both files are updated in the same Dependabot PR, avoiding the need for follow-up CI commits from sync_dependencies.yml to synchronize requirements.txt after uv.lock changes.

@winstonsung
Copy link
Collaborator

@dependabot rebase

@dependabot dependabot bot force-pushed the dependabot/uv/dev/pathspec-1.0.3 branch from e313717 to 3dbd2d7 Compare January 11, 2026 12:39
@winstonsung
Copy link
Collaborator

@winstonsung winstonsung force-pushed the dependabot/uv/dev/pathspec-1.0.3 branch 3 times, most recently from c9b23df to d095808 Compare January 13, 2026 15:18
@winstonsung
Copy link
Collaborator

Note: Only merge this after the problems had been fixed in Black formatter.

Bumps [pathspec](https://github.com/cpburnz/python-pathspec) from 0.12.1 to 1.0.3.
- [Release notes](https://github.com/cpburnz/python-pathspec/releases)
- [Changelog](https://github.com/cpburnz/python-pathspec/blob/master/CHANGES.rst)
- [Commits](cpburnz/python-pathspec@v0.12.1...v1.0.3)

---
updated-dependencies:
- dependency-name: pathspec
  dependency-version: 1.0.3
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Change-Id: I688858091b65c6933cc5f3bbe39a6c8a43a52320
Signed-off-by: dependabot[bot] <support@github.com>
@winstonsung winstonsung force-pushed the dependabot/uv/dev/pathspec-1.0.3 branch from d095808 to fda861c Compare January 13, 2026 15:47
@winstonsung
Copy link
Collaborator

Merged into #375 .

@winstonsung winstonsung deleted the dependabot/uv/dev/pathspec-1.0.3 branch January 19, 2026 15:39
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.

2 participants