News¶
1.2.1 (2026-04-29)¶
Bugfix release. See the full changelog for details.
1.2.0 (2026-04-21)¶
Highlights:
- Add
amcommand andporcelain.am()for applying mailbox-style email patches (git am), with state persistence for--continue,--skip,--abort, and--quit. - Add
applycommand andporcelain.apply_patch()for applying unified diffs, including support for rename/copy detection, binary patches, and--3waymerge fallback. - Expanded
logcommand options:--oneline,--abbrev-commit,--author,--grep,--since,--stat,--patch,--follow, and more. - Add support for push options (
-o/--push-option) and atomic push (--atomic). - Add support for
extensions.relativeworktrees. - Several configuration options honoured:
gc.pruneExpire,core.precomposeunicode,core.gitProxy,core.maxStat,core.packedGitLimit,core.deltaBaseCacheLimit. - HTTP client now respects
http.userAgentconfiguration. - Fix client incorrectly sending
unbornin Git protocol v2ls-refsto servers that don't advertise it (e.g. Gerrit 3.12.2).
1.1.0 (2026-02-17)¶
- Add basic subtree support.
- Implement server-side Git hooks (
pre-receive,update,post-receive) inReceivePackHandler. - Report real-time transfer progress during clone/fetch.
- Add client-side support for Git protocol v2
packfile-uriscapability. - Add bundle URI support for faster clones and fetches (
dulwich.bundle_uri). - Add
--unshallowsupport to thefetchcommand. - Support
GIT_TRACE_PACKETindulwich.cli. - Fix
porcelain.checkoutincorrectly skipping files whose paths start with.git(.github/,.gitignore, etc.). - Fix cloning of SHA-256 repositories in Git protocol v2.
1.0.0 (2026-01-17)¶
Dulwich 1.0 is out!
From this release onwards, Dulwich will not break backwards compatibility until 2.0. Micro releases (1.x.y) are reserved for important bugfixes; major releases (1.x.0) introduce new features without breaking backwards compatibility.
Highlights leading up to 1.0:
- Signature vendor system supporting GPG, SSH signatures, and X.509 certificates.
- Partial clone with object filtering.
aiohttp-based server support (dulwich.aiohttp).- Callback-based HTTP authentication support.
- SHA-256 repository support throughout.
For the full history, see the NEWS file.