This MR contains the following updates:
| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [gitpython](
https://github.com/gitpython-developers/GitPython) | dev | patch | `3.1.46` → `3.1.47` | [](https://securityscorecards.dev/viewer/?uri=github.com/gitpython-developers/GitPython) |
---
### Release Notes
<details>
<summary>gitpython-developers/GitPython (gitpython)</summary>
### [`v3.1.47`](
https://github.com/gitpython-developers/GitPython/releases/tag/3.1.47): - with security fixes
[Compare Source](
gitpython-developers/GitPython@3.1.46...3.1.47)
#### Advisories
- <
GHSA-rpm5-65cw-6hj4>
- <
GHSA-x2qx-6953-8485>
#### What's Changed
- Prepare next release by [@​Byron](
https://github.com/Byron) in [#​2095](
gitpython-developers/GitPython#2095)
- Bump git/ext/gitdb from `335c0f6` to `4c63ee6` by [@​dependabot](
https://github.com/dependabot)\[bot] in [#​2096](
gitpython-developers/GitPython#2096)
- DOC: README Add urls and updated a relative url by [@​Timour-Ilyas](
https://github.com/Timour-Ilyas) in [#​2098](
gitpython-developers/GitPython#2098)
- Fix GitConfigParser ignoring multiple \[include] path entries by [@​daniel7an](
https://github.com/daniel7an) in [#​2100](
gitpython-developers/GitPython#2100)
- Switch back from Alpine to Debian for WSL by [@​EliahKagan](
https://github.com/EliahKagan) in [#​2108](
gitpython-developers/GitPython#2108)
- Bump git/ext/gitdb from `4c63ee6` to `5c1b303` by [@​dependabot](
https://github.com/dependabot)\[bot] in [#​2106](
gitpython-developers/GitPython#2106)
- Run `gc.collect()` twice in `test_rename` on Python 3.12 by [@​EliahKagan](
https://github.com/EliahKagan) in [#​2109](
gitpython-developers/GitPython#2109)
- fix: guard AutoInterrupt terminate during interpreter shutdown by [@​lweyrich1](
https://github.com/lweyrich1) in [#​2105](
gitpython-developers/GitPython#2105)
- Improve CI infrastructure for pre-commit by [@​EliahKagan](
https://github.com/EliahKagan) in [#​2110](
gitpython-developers/GitPython#2110)
- Bump the pre-commit group with 5 updates by [@​dependabot](
https://github.com/dependabot)\[bot] in [#​2111](
gitpython-developers/GitPython#2111)
- Upgrade Sphinx for 3.14 support; drop doc build support on 3.8; test 3.14 by [@​EliahKagan](
https://github.com/EliahKagan) in [#​2112](
gitpython-developers/GitPython#2112)
- Fix `Repo.active_branch` resolution for reftable-backed repositories by [@​Copilot](
https://github.com/Copilot) in [#​2114](
gitpython-developers/GitPython#2114)
- docs: warn about GitDB performance with large commits by [@​mvanhorn](
https://github.com/mvanhorn) in [#​2115](
gitpython-developers/GitPython#2115)
- cmd: fix kwarg formatting in docstring example by [@​UweSchwaeke](
https://github.com/UweSchwaeke) in [#​2117](
gitpython-developers/GitPython#2117)
- Bump <
https://github.com/astral-sh/ruff-pre-commit> from v0.15.5 to 0.15.8 in the pre-commit group by [@​dependabot](
https://github.com/dependabot)\[bot] in [#​2122](
gitpython-developers/GitPython#2122)
- Add trailer support for commit creation by [@​Krishnachaitanyakc](
https://github.com/Krishnachaitanyakc) in [#​2116](
gitpython-developers/GitPython#2116)
- Harden commit trailer subprocess handling and align trailer I/O paths by [@​Copilot](
https://github.com/Copilot) in [#​2125](
gitpython-developers/GitPython#2125)
- git.cmd.Git.execute(..): fix `with_stdout=False` by [@​ngie-eign](
https://github.com/ngie-eign) in [#​2126](
gitpython-developers/GitPython#2126)
- Make sure that multi-options are checked after splitting them with `shlex` by [@​Byron](
https://github.com/Byron) in [#​2130](
gitpython-developers/GitPython#2130)
- Block unsafe underscored git kwargs / Fix for
GHSA-rpm5-65cw-6hj4 by [@​WesR](
https://github.com/WesR) in [#​2131](
gitpython-developers/GitPython#2131)
#### New Contributors
- [@​Timour-Ilyas](
https://github.com/Timour-Ilyas) made their first contribution in [#​2098](
gitpython-developers/GitPython#2098)
- [@​daniel7an](
https://github.com/daniel7an) made their first contribution in [#​2100](
gitpython-developers/GitPython#2100)
- [@​lweyrich1](
https://github.com/lweyrich1) made their first contribution in [#​2105](
gitpython-developers/GitPython#2105)
- [@​Copilot](
https://github.com/Copilot) made their first contribution in [#​2114](
gitpython-developers/GitPython#2114)
- [@​mvanhorn](
https://github.com/mvanhorn) made their first contribution in [#​2115](
gitpython-developers/GitPython#2115)
- [@​UweSchwaeke](
https://github.com/UweSchwaeke) made their first contribution in [#​2117](
gitpython-developers/GitPython#2117)
- [@​Krishnachaitanyakc](
https://github.com/Krishnachaitanyakc) made their first contribution in [#​2116](
gitpython-developers/GitPython#2116)
- [@​ngie-eign](
https://github.com/ngie-eign) made their first contribution in [#​2126](
gitpython-developers/GitPython#2126)
- [@​WesR](
https://github.com/WesR) made their first contribution in [#​2131](
gitpython-developers/GitPython#2131)
**Full Changelog**: <
gitpython-developers/GitPython@3.1.46...3.1.47>
</details>
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Mend Renovate](
https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNDEuNSIsInVwZGF0ZWRJblZlciI6IjQzLjE0MS41IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->
See merge request swiss-armed-forces/cyber-command/cea/loom!486
Co-authored-by: Loom MR Pipeline Trigger <group_103951964_bot_9504bb8dead6d4e406ad817a607f24be@noreply.gitlab.com>
As detailed in d1ca2af and 8d97906, no version of Sphinx supports both Python 3.8 and Python 3.14. This makes changes analogous to those in #1954 and #1956, except to extend support to Python 3.14 (rather than Python 3.13), and the changes here are significantly simpler than what had to be done in #1954, since no Python code had to be changed in this case.
d1ca2af uses a newer Sphinx version range where supported. 8d97906 then requires that version range, thereby dropping the ability to build documentation on 3.8, and adjusting CI accordingly. I did these as separate steps, expressing the version conditionally in d1ca2af, so that we can restore the relevant files to how they were there in the unexpected event that it's necessary to continue supporting building documentation on Python 3.8.
This adds some more interpreters to be tested regularly. The main purpose of this is to test Python 3.14 on GNU/Linux and macOS, where it is currently expected to work. It is expected only to mostly work on Windows, for the same reason that Python 3.13 is also only expected to mostly work on Windows. In both cases, there is a test that will fail on Windows. This is still as described in #1955, except that I haven't yet updated that to note that the situation is now the same for--and that it will thus also be able to address--Python 3.14.
Another change made to the interpreters tested here is that this tests free-threaded interpreters not only on GNU/Linux but also on macOS. We might want to undo that if it makes CI take longer overall. I expect that to rarely or never happen, but I'm not sure. I might find out during the course of testing this PR, which I'm doing in multiple pushes, whether that's a problem. For some more details (and rationale) on the interpreters added to be tested, see d1ab2e4 and 53c0a88.
This remains a draft mainly because, while I know the documentaton builds, I want to look at the RTD docs to make sure they look okay--they should either look the same or slightly better due to the upgrade, but this shouldn't be assumed.
Edit: Here's the build, and here's what it looks like. It looks the same as before, which is as expected--I just wanted to make sure it was no worse. With the newer Sphinx, I suspect it may be easier to make it look better too, such as by looking at other themes that might make the content clearer, especially in the API reference. But that's not automatic, and it's definitely outside the scope of this PR.
The main remaning thing to check, beisdes that all CI jobs pass (they should actually all pass for each commit except 53c0a88) is that macOS isn't what keeps CI on the PR from completing sooner. If so, then we might consider going back to testing free-threaded builds only on Ubuntu and not macOS, since that would decrease the number of macOS jobs by 2.
Further edit: See comments for more updates on this.