Releases: jelmer/dulwich
1.1.0
What's Changed
- Add reference to c-git-compatibility doc in README.md by @jelmer in #2069
- Implement cli commands for more porcelain by @jelmer in #2071
- Support GIT_TRACE_PACKET by @jelmer in #2073
- Fix cloning of SHA-256 repositories with protocol v2 by @jelmer in #2074
- skip tests that require merge3 when it's not available by @kulikjak in #2075
- Add test-minimal to CI; run tests without installing any optional dependencies by @jelmer in #2076
- Update SECURITY.md by @jelmer in #2077
- Don't skip 3.14 wheels by @bowiechen in #2078
- Add Git protocol v2 packfile-uris client support by @jelmer in #2079
- Attempt to fix occasional issues with long running lfs processes in tests by @jelmer in #2081
- Allow passing commit and author timestamps into porcelain.commit by @ading2210 in #2080
- Skip Python 3.14 x86_64/universal2 wheels on macOS by @jelmer in #2082
- Improve exception message for tags by @jelmer in #2083
- ci(deps): bump dependabot/fetch-metadata from 2.4.0 to 2.5.0 by @dependabot[bot] in #2084
- ci(deps): bump actions/checkout from 6.0.1 to 6.0.2 by @dependabot[bot] in #2085
- deps(deps-dev): bump ruff from 0.14.10 to 0.14.14 in the pip group by @dependabot[bot] in #2086
- Add bundle URI support for faster clones and fetches by @jelmer in #2087
- Add basic subtree support by @jelmer in #2088
- Add support for core.trustctime configuration option by @jelmer in #2091
- Fix LFS client selection for file:// URLs by @jelmer in #2089
- Add support for core.commentChar configuration option (#1852) by @jelmer in #2092
- Add --unshallow support to fetch command by @jelmer in #2093
- Add progress reporting during pack file downloads by @jelmer in #2094
- Macos wheels fix by @jelmer in #2095
- Disable git-lfs filter process in LFS status tests to fix flaky Windows failures by @jelmer in #2096
- Server side hooks by @jelmer in #2097
- Fix checkout skipping files with paths starting with '.git' by @jelmer in #2098
New Contributors
- @bowiechen made their first contribution in #2078
- @ading2210 made their first contribution in #2080
Full Changelog: dulwich-1.0.0...dulwich-1.1.0
1.0.0
dulwich-0.25.1
What's Changed
- Fix GPG signature test to handle InvalidSigners exception by @jelmer in #2064
- Make object store close() idempotent and warn on unclosed resources by @jelmer in #2065
Full Changelog: dulwich-0.25.1...dulwich-0.25.2
v0.22.6
What's Changed
- Various minor rust improvements by @jelmer in #1390
- Fix handling of symrefs with protocol v2. Fixes #1389 by @jelmer in #1392
- Refactor ref handling by @jelmer in #1393
- Bump mypy from 1.12.0 to 1.12.1 by @dependabot in #1395
- Bump ruff from 0.6.9 to 0.7.0 by @dependabot in #1396
- Build pure wheels by @jelmer in #1398
- Bump mypy from 1.12.1 to 1.13.0 by @dependabot in #1401
- Bump ruff from 0.7.0 to 0.7.1 by @dependabot in #1400
- Add ObjectStore.iter_prefix by @jelmer in #1402
- Test symrefs handling for git protocol v2 by @stspdotname in #1403
- use a default ref-prefix when fetching with git protocol v2 by @stspdotname in #1404
- Revert back to Cargo.lock format version 3 by @jelmer in #1406
- Upgrade disperse config by @jelmer in #1408
- Fix new version by @jelmer in #1409
- Drop outdated performance.txt file. Fixes #1411 by @jelmer in #1412
- return peeled refs from GitClient.get_refs() if protocol-v2 is used by @stspdotname in #1413
- Bump ruff from 0.7.1 to 0.7.2 by @dependabot in #1415
- Drop support for Python 3.8 by @jelmer in #1414
- build: respect the "pure" argument at metadata generation time by @eli-schwartz in #1417
- Move ref_prefix default behaviour down by @jelmer in #1418
- Drop broken refspecs argument for porcelain.clone by @jelmer in #1420
- consistently pass around ref_prefix and protocol_version in dulwich.client by @jelmer in #1421
- Revert broken ref_prefix handling, consistently apply ref_prefix by @jelmer in #1422
- Strip pkt-line when negotiating Git protocol v2 by @Lordshinjo in #1424
- add easy type hints to some function returns by @castedo in #1426
- Bump ruff from 0.7.2 to 0.7.3 by @dependabot in #1427
- iter_prefix: fix handling of missing loose object directories by @jelmer in #1428
- type hints for ShaFile.copy and Tree.lookup_path by @castedo in #1430
- Improve unittest calls by @jelmer in #1433
- Upgrade Python code to a modern version by @jelmer in #1436
- Reject refcontainer values that are not 40 char sha or symref by @abn in #1437
New Contributors
- @eli-schwartz made their first contribution in #1417
- @Lordshinjo made their first contribution in #1424
- @abn made their first contribution in #1437
Full Changelog: v0.22.2...v0.22.6
0.22.2
What's Changed
- Fix greenthreads import path in test_greenthreads.py by @mtelka in #1294
- Ship Cargo.lock by @jelmer in #1296
- Test sdist by @jelmer in #1297
- Sdist tests by @jelmer in #1298
- Keep up with changes in geventhttpclient by @PerchunPak in #1299
- Initial OSS-Fuzz Integration and First Fuzzing Test by @DaveLak in #1304
- client: Fix NameError 'urllib3' is not defined by @anlambert in #1300
- Drop Python 3.7 support by @jelmer in #1306
- Attempt to fix macosx wheels by @jelmer in #1308
- Re-enable building aarch64 wheels. Fixes #1303 by @jelmer in #1309
- Format source code, and enforce with github action by @jelmer in #1312
- Fuzzing Improvements by @DaveLak in #1311
- Pin ruff by @jelmer in #1315
- Update Known Exception Handling in
fuzz_repoto Prevent False Positives by @DaveLak in #1316 - Fix
fuzz_repoFalse Positive With a Refactor to Improve Effectiveness & Efficiency by @DaveLak in #1317 - Fix codespell issues by @jelmer in #1320
- Drop unnecessary tool.ruff.target-version by @jelmer in #1321
- detect and reject ref-deltas which use an object as its own delta base by @stspdotname in #1326
- remove unused variable from test_ext_ref_deltified_object_based_on_it… by @stspdotname in #1327
- dulwich does not depend on setuptools by @dimbleby in #1329
- Upgrade artifact action by @jelmer in #1328
- Bump ruff from 0.4.7 to 0.4.8 by @dependabot in #1332
- Skip failing Mac OS X wheel builds for now by @jelmer in #1330
- Split wheels build, to avoid timeouts by @jelmer in #1337
- add initial support for Git protocol v2 by @stspdotname in #1244
- Support Python 3.13 by @edgarrmondragon in #1353
- Refer to Rust rather than C bindings by @jelmer in #1354
- Fuzzing: Build Fuzz Tests with Rust Extensions and Optional Features by @DaveLak in #1358
- Attempt to fix tests on Python 3.13 on Windows by @jelmer in #1362
- attempt to fix windows build with python 3.13 by @jelmer in #1373
New Contributors
- @PerchunPak made their first contribution in #1299
- @DaveLak made their first contribution in #1304
- @edgarrmondragon made their first contribution in #1353
Full Changelog: dulwich-0.22.1...v0.22.2
dulwich-0.25.1
Full Changelog: dulwich-0.25.0...dulwich-0.25.1
v0.25.0
What's Changed
- ci(deps): bump actions/upload-artifact from 4.6.2 to 5.0.0 by @dependabot[bot] in #1975
- deps(deps): bump pyo3 from 0.27.0 to 0.27.1 in the cargo group by @dependabot[bot] in #1977
- ci(deps): bump actions/download-artifact from 5.0.0 to 6.0.0 by @dependabot[bot] in #1976
- deps(deps-dev): bump ruff from 0.13.2 to 0.14.3 in the pip group by @dependabot[bot] in #1978
- Drop python 3.9 by @jelmer in #1950
- fix(docs): add missing hyphen in date format in NEWS by @Guts in #1979
- client: relax check to support subclasses of Urllib3HttpGitClient by @skshetry in #1980
- pass key_filename and ssh_command to SSHGitClient by @skshetry in #1981
- Add tests to verify client args are passed by @jelmer in #1982
- Add mailinfo command by @jelmer in #1983
- Add column formatting support by @jelmer in #1984
- Fix warnings by @jelmer in #1985
- Fix test_concurrent_ref_operations_compatibility by @jelmer in #1986
- Fix typo in preamble by @jelmer in #1987
- Add diagnose command by @jelmer in #1988
- Add rerere support by @jelmer in #1992
- Add reachability abstraction by @jelmer in #1994
- update security support by @jelmer in #1996
- Modernize by @jelmer in #1997
- Implement core.sharedRepository configuration support (#1804) by @jelmer in #1942
- NEWS: Fix formatting for 0.24.10 by @jelmer in #2000
- Optimize status performance by using stat matching to skip unchanged files by @jelmer in #2001
- Improve error handling when trying to remove non-empty directory by @kulikjak in #2004
- Implement restore and switch commands by @jelmer in #2003
- skip tests that require merge3 when it's not available by @kulikjak in #2002
- Use bitmap support by @jelmer in #1995
- Fix doc warnings by @jelmer in #2006
- Make Ref and ObjectID newtypes for improved typing by @jelmer in #2008
- Fix get_unstaged_changes filter callback to expect Blob objects by @jelmer in #2011
- Add basic midx support by @jelmer in #1998
- avoid signing commits in stash by @skshetry in #2012
- deps(deps): bump pyo3 from 0.27.1 to 0.27.2 in the cargo group by @dependabot[bot] in #2014
- deps(deps-dev): bump the pip group with 2 updates by @dependabot[bot] in #2015
- ci(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by @dependabot[bot] in #2016
- ci(deps): bump actions/checkout from 5.0.0 to 6.0.0 by @dependabot[bot] in #2017
- Ensure maintenance tests are run by @jelmer in #2019
- Use nanosecond-resolution when comparing file entries by @jelmer in #2013
- Move peeled tags protocol functions to dulwich.protocol by @jelmer in #2020
- Move greenthreads to contrib/ by @jelmer in #2021
- Add all to all files by @jelmer in #2022
- Fix UTF-8 decode error in process filter protocol handling by @jelmer in #2024
- Add --stat argument to diff by @jelmer in #2026
- Make
porcelain.addcheck explicit forNoneby @ejfine in #2027 - Fix ParamikoSSHVendor interface compatibility with SSHVendor by @jelmer in #2029
- Quote smudge path by @jelmer in #2031
- Initial work splitting porcelain by @jelmer in #2032
- Add tests for consistent license preamble, and to prevent os.environ use in lower layers by @jelmer in #2033
- Install dulwich.porcelain by @jelmer in #2035
- fix typing by @radoering in #2036
- Split out worktree by @jelmer in #2037
- Add comprehensive SHA256 support for Git repositories by @jelmer in #1604
- dumb: Add fallback when HEAD is missing by @anlambert in #2030
New Contributors
- @Guts made their first contribution in #1979
- @ejfine made their first contribution in #2027
- @radoering made their first contribution in #2036
Full Changelog: dulwich-0.24.10...dulwich-0.25.0
dulwich-0.24.9
-
Fix passing key_filename and ssh_command parameters to SSHGitClient by @skshetry
-
Relax check to support subclasses of Urllib3HttpGitClient. Fixes
regression from 0.24.2 where subclasses of Urllib3HttpGitClient would
not receive the config object. by @skshetry -
Fix test_concurrent_ref_operations_compatibility test flakiness by @jelmer
-
Fix warnings in test suite by @jelmer
Full Changelog: dulwich-0.24.8...dulwich-0.24.9
0.24.10
Full Changelog: dulwich-0.24.9...dulwich-0.24.10
dulwich-0.24.8
What's Changed
- Support ref namespaces by @jelmer in #1957
- Add Rust test step to CI workflow. by @jelmer in #1958
- Add support for GIT_FLUSH environment variable by @jelmer in #1959
- Add support for recursive submodule updates by @jelmer in #1961
- Add maintenance subcommand by @jelmer in #1960
- Add interpret-trailers command by @jelmer in #1962
- Add support for replace command by @jelmer in #1963
- Fix config file leakage in compat tests by @jelmer in #1964
- Various bundle fixes by @jelmer in #1965
- Implement advanced Git object specification support by @jelmer in #1966
- Add rust implementation of create_delta by @jelmer in #1956
- Add support for dulwich stripspace by @jelmer in #1967
- Fix TypeError when passing refspec to clone() by @jelmer in #1968
- Drop authors by @jelmer in #1970
- Add per-URL http.extraHeader configuration support by @jelmer in #1969
- Add support for GIT_REFLOG_ACTION environment variable by @jelmer in #1971
- Make generate_pack_data() arguments consistent and keyword-only by @jelmer in #1972
- Bump typing-extensions by @jelmer in #1974
Full Changelog: dulwich-0.24.7...dulwich-0.24.8