* ``ObjectStore.iter_prefix``: fix handling of missing
loose object directories. (Jelmer Vernooij)
* Reject invalid refcontainer values (not 40 characters or
symref).
* Add type hints to various functions. (Castedo Ellerman)
* Drop support for Python 3.8. (Jelmer Vernooij)
* Fix refspec handling in porcelain.pull. (Jelmer Vernooij)
* Drop broken refspec support in porcelain.clone.
* Provide ``ref_prefix`` functionality client-side
if the server does not support it.
* Consistently honor ``ref_prefix`` and ``protocol_version``
arguments in client. (Jelmer Vernooij)
* Strip pkt-line when negotiating protocol v2. Fixes
compatibility with gerrit. (Rémy Pecqueur, #1423)
* Don't pull in ``setuptools_rust`` when building pure
package. (Eli Schwartz)
* Return peeled refs from ``GitClient.get_refs`` if protocol-v2
is used. (Stefan Sperling, #1410)
* Drop outdated performance file. (Jelmer Vernooij, #1411)
* Fix handling of symrefs with protocol v2.
* Add ``ObjectStore.iter_prefix``. (Jelmer Vernooij)
* Revert back to version 3 of ``Cargo.lock``, to allow
building with older Cargo versions.
* Use a default ref-prefix when fetching with git protocol v2
* Add `ObjectStore.iter_prefix`. (Jelmer Vernooij)
* Improve wheel building in CI, so we can upload wheels for the
next release.
* Ship ``Cargo.lock``. (Jelmer Vernooij, #1287)
* Ship ``tests/`` and ``testdata/`` in sdist. (Jelmer Vernooij,
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=35
latest geventhttpclient.
(gh#jelmer/dulwich#1299, gh#jelmer/dulwich#1294)
- Update 0.22.1:
* Fix pypi deployments by @jelmer in #1284
* Handle alternate case for worktreeconfig setting by @wshanks in #1286
* Ship rust files. Fixes#1287 by @jelmer in #1290
- update 0.22.0:
* Start on 0.21.8 by @jelmer in #1240
* Install twine when uploading to pypi by @jelmer in #1241
* Remove shebang from graph.py by @mtelka in #1242
* Disable pypi uploads in disperse; this is now down by the GitHub actions workflow by @jelmer in #1243
* tweak doc-strings in LocalGitClient for clarity by @stspdotname in #1245
* Keep GitHub Actions up to date with GitHub's Dependabot by @cclauss in #1249
* Bump the github_actions group with 5 updates by @dependabot in #1250
* Add Python 3.12 to the testing by @cclauss in #1251
* pyproject.toml: Add trove classifier for Python 3.12 by @cclauss in #1252
* Convert _objects.c to _objects.rs by @jelmer in #1204
* Convert pack C helper to rust by @jelmer in #1255
* Convert diff-tree C helper to rust by @jelmer in #1256
* Revert "Bump the github_actions group with 5 updates" by @jelmer in #1257
* Only expect a shallow update when requesting a depth by @abderrahim in #1259
* Use f-strings by @jelmer in #1263
* Wrap all urllib3 read ProtocolErrors as GitProtocolError by @nanonyme in #1261
* Update cargo dependencies with dependabot by @jelmer in #1264
* wheels: Don't build with nightly by @jelmer in #1273
* Reformat with ruff by @jelmer in #1272
* Use latest cibuildwheel by @jelmer in #1276
* cibuildwheel: define options in pyproject.toml by @jelmer in #1275
* Move tests to root. Fixes#1024 by @jelmer in #1277
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=33
* Fix NameError when encountering errors during HTTP operation.
* Raise exception when default identity can't be found.
* Add a dedicated exception class for unresolved
deltas.
* Support credentials in proxy URL. (Jelmer Vernooij, #1227)
* Add ``dulwich.porcelain.for_each_ref``. (Daniele Trifirò)
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=31
- update to 0.21.6:
* index: Handle different stages of conflicted paths.
* Improve LCA finding performance. (Kevin Hendricks)
* client: Handle Content-Type with encoding set.
* Only import _hashlib for type checking.
* Update docs regarding building dulwich without c bindings
* objects: Define a stricter return type for _parse_message
* Raise GitProtocolError when encountering HTTP Errors in
* HTTPGitClient.
* tests: Ignore errors when deleting GNUPG
* Fix some stash functions on Python 3.
+ Add workaround for
https://bitbucket.org/pypy/pypy/issues/2499/cpyext-pystring_asstring-doesnt-work,
+ Properly quote config values with a ‘#’ character in them.
+ Skip test that requires sync to synchronize filesystems if os.sync is not
+ Raise exception in Repo.stage() when absolute paths are passed in. Allow
+ Set bufsize=0 for subprocess interaction with SSH client. Fixes hangs on
+ Don’t drop first slash for SSH paths, except for those starting with “~”.
than a list of revisions.
OBS-URL: https://build.opensuse.org/request/show/1112077
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-dulwich?expand=0&rev=61
* index: Handle different stages of conflicted paths.
* Improve LCA finding performance. (Kevin Hendricks)
* client: Handle Content-Type with encoding set.
* Only import _hashlib for type checking.
* Update docs regarding building dulwich without c bindings
* objects: Define a stricter return type for _parse_message
* Raise GitProtocolError when encountering HTTP Errors in
* HTTPGitClient.
* tests: Ignore errors when deleting GNUPG
* Fix some stash functions on Python 3.
+ Add workaround for
https://bitbucket.org/pypy/pypy/issues/2499/cpyext-pystring_asstring-doesnt-work,
+ Properly quote config values with a ‘#’ character in them.
+ Skip test that requires sync to synchronize filesystems if os.sync is not
+ Raise exception in Repo.stage() when absolute paths are passed in. Allow
+ Set bufsize=0 for subprocess interaction with SSH client. Fixes hangs on
+ Don’t drop first slash for SSH paths, except for those starting with “~”.
than a list of revisions.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=29
* Be more tolerant to non-3-length tuple versions.
* Support ``core.symlinks=false``.
* Deprecate ``dulwich.objects.parse_commit``.
* Fix fetching into MemoryRepo.
* Support ``init.defaultBranch`` config.
* Fix ``ObjectStore.iterobjects_subset()`` when
hex shas are passed for objects that live in packs.
* client: Handle absolute path as redirect location in HTTP
client.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=26
* Add support for ``worktreeconfig`` extension.
* Deprecate ``Commit.extra``; the Git project specifically
discourages adding custom lines, and the contents of
``Commit.extra`` are unpredictable as contents
may be different between different versions of Dulwich
with support for different headers.
``Commit._extra`` still exists.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=24
- Update to version 0.21.2.
* Fix early file close bug in dulwich.pack.extend_pack. (@jelmer)
- Update to version 0.21.1.
* Factor out dulwich.pack.extend_pack. (@jelmer)
- Update to version 0.21.0.
* Pack internals have been significantly refactored, including significant low-level API changes.
As a consequence of this, Dulwich now reuses pack deltas when
communicating with remote servers, which brings a big boost to network performance. (@jelmer)
* Add 'pack-refs' command. (@danchr)
* Handle more errors when trying to read a ref (@danchr)
* Allow for reuse of existing deltas while creating pack files (@stspdotname)
* cli: fix argument parsing for pack-objects --stdout (@stspdotname)
* cli: open pack-objects output files in binary mode to avoid write() error (@stspdotname)
* Bump minimum python version to 3.7. (@jelmer)
* honor no_proxy environment variable (#1098, @afaul)
* In HTTP Git Client, allow missing Content-Type. (@jelmer)
* Fix --pure builds (@jelmer, #1093)
* Allow passing abbrev to describe (#1084, @nanonyme)
OBS-URL: https://build.opensuse.org/request/show/1059604
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=20
- Update to version 0.20.50.
* Fix Repo.reset_index. Previously, it instead took the union with the given tree. (Christian Sattler, #1072)
* Add -b argument to dulwich clone. (Jelmer Vernooij)
* On Windows, provide a hint about developer mode when creating symlinks fails due to a permission error. (Jelmer Vernooij, #1005)
* Add new ObjectID type in dulwich.objects, currently just an alias for bytes. (Jelmer Vernooij)
* Support repository format version 1. (Jelmer Vernooij, #1056)
* Support \r\n line endings with continuations when parsing configuration files. (Jelmer Vernooij)
* Fix handling of SymrefLoop in RefsContainer.setitem. (Dominic Davis-Foster, Jelmer Vernooij)
OBS-URL: https://build.opensuse.org/request/show/1037168
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=18
- update to 0.20.46:
* Apply insteadOf to rsync-style location strings
* Drop use of certifi, instead relying on urllib3's default
code to find system CAs.
* Implement timezone parsing in porcelain.
* Drop support for running without setuptools.
* Ensure configuration is loaded when
running "dulwich clone".
* Build 32 bit wheels for Windows.
* tests: Ignore errors when deleting GNUPG
home directory. Fixes spurious errors racing
gnupg-agent. Thanks, Matěj Cepl. Fixes#1000
* config: Support closing brackets in quotes in section
names. (Jelmer Vernooij, #10124)
* Various and formatting fixes. (Kian-Meng Ang)
* Document basic authentication in dulwich.porcelain.clone.
* Flush before calling fsync, ensuring buffers
are filled. (wernha)
* Support GPG commit signing. (springheeledjack0)
* Add python 3.11 support. (Saugat Pachhai)
* Allow missing GPG during tests. (Jakub Kulík)
* status: return posix-style untracked paths instead of nt-style paths on
win32 (Daniele Trifirò)
* Honour PATH environment when running C Git for testing.
* Split out exception for symbolic reference loops.
* Move various long-deprecated methods.
- drop rmtree-ignore-errors.patch (upstream)
OBS-URL: https://build.opensuse.org/request/show/1003048
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-dulwich?expand=0&rev=55
* Apply insteadOf to rsync-style location strings
* Drop use of certifi, instead relying on urllib3's default
code to find system CAs.
* Implement timezone parsing in porcelain.
* Drop support for running without setuptools.
* Ensure configuration is loaded when
running "dulwich clone".
* Build 32 bit wheels for Windows.
* tests: Ignore errors when deleting GNUPG
home directory. Fixes spurious errors racing
gnupg-agent. Thanks, Matěj Cepl. Fixes#1000
* config: Support closing brackets in quotes in section
names. (Jelmer Vernooij, #10124)
* Various and formatting fixes. (Kian-Meng Ang)
* Document basic authentication in dulwich.porcelain.clone.
* Flush before calling fsync, ensuring buffers
are filled. (wernha)
* Support GPG commit signing. (springheeledjack0)
* Add python 3.11 support. (Saugat Pachhai)
* Allow missing GPG during tests. (Jakub Kulík)
* status: return posix-style untracked paths instead of nt-style paths on
win32 (Daniele Trifirò)
* Honour PATH environment when running C Git for testing.
* Split out exception for symbolic reference loops.
* Move various long-deprecated methods.
- drop rmtree-ignore-errors.patch (upstream)
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/python-dulwich?expand=0&rev=16
- update to 0.20.30:
* Support staging submodules.
* Drop deprecated Index.iterblobs and iter_fresh_blobs.
* Unify clone behaviour of ``Repo.clone`` and
``porcelain.clone``, and add branch parameter for
clone.
* Fix hook test on Mac OSX / Linux when dulwich is
not installed system-wide.
* Cope with gecos being unset.
* Allow adding files to repository in pre-commit hook.
* Raise SubmoduleEncountered in ``tree_lookup_path``.
OBS-URL: https://build.opensuse.org/request/show/945421
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-dulwich?expand=0&rev=44
- update to 0.20.23:
* Fix installation of GPG during package publishing.
* Prevent removal of refs directory when the last ref is
deleted.
* Fix filename: MERGE_HEADS => MERGE_HEAD.
* For ignored directories, porcelain.add and porcelain.status now only return
the path to directory itself in the list of ignored paths. Previously, paths
for all files within the directory would also be included in the list.
* Provide depth argument to ``determine_wants``.
* Various tag signature handling improvements.
* Add separate Tag.verify(). (Peter Rowlands)
* Add support for version 3 index files. (Jelmer Vernooij)
* Fix autocrlf=input handling. (Peter Rowlands, Boris Feld)
* Attempt to find C Git global config on Windows.
* The APIs for writing and reading individual index entries have changed
to handle lists of (name, entry) tuples rather than tuples.
* Add basic support for a GcsObjectStore that stores
pack files in gcs.
* In porcelain.push, default to local active branch.
* Support fetching symrefs.
OBS-URL: https://build.opensuse.org/request/show/897849
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-dulwich?expand=0&rev=40
- update to 0.20.20:
* Support untracked symlinks to paths outside the
repository.
* Fix handling of negative matches in nested gitignores.
* Fix formatting in setup.py. (Jelmer Vernooij)
* Add release configuration. (Jelmer Vernooij)
* credentials: ignore end-of-line character. (Georges Racinet)
* Fix failure in get_untracked_paths when the repository contains symlinks.
* docs: Clarify that Git objects are created on `git add`.
* Add flag to only attempt to fetch ignored untracked files when specifically requested.
OBS-URL: https://build.opensuse.org/request/show/887882
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-dulwich?expand=0&rev=38