Pygit2

Latest version: v1.16.0

Safety actively analyzes 687918 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 12

1.16.0

- Add support for Python 3.13

- Drop support for Python 3.9

- New `Repository.hashfile(...)`
[1298](https://github.com/libgit2/pygit2/pull/1298)

- New `Option.GET_MWINDOW_FILE_LIMIT` and `Option.SET_MWINDOW_FILE_LIMIT`
[1312](https://github.com/libgit2/pygit2/pull/1312)

- Fix overriding `certificate_check(...)` callback via argument to `RemoteCallbacks(...)`
[1321](https://github.com/libgit2/pygit2/pull/1321)

- Add py.typed
[1310](https://github.com/libgit2/pygit2/pull/1310)

- Fix `discover_repository(...)` annotation
[1313](https://github.com/libgit2/pygit2/pull/1313)

1.15.1

- New `Repository.revert(...)`
[1297](https://github.com/libgit2/pygit2/pull/1297)

- New optional `depth` argument in submodules `add()` and `update()` methods
[1296](https://github.com/libgit2/pygit2/pull/1296)

- Now `Submodule.url` returns `None` when the submodule does not have a url
[1294](https://github.com/libgit2/pygit2/pull/1294)

- Fix use after free bug in error reporting
[1299](https://github.com/libgit2/pygit2/pull/1299)

- Fix `Submodule.head_id` when the submodule is not in the current HEAD tree
[1300](https://github.com/libgit2/pygit2/pull/1300)

- Fix `Submodule.open()` when subclassing `Repository`
[1295](https://github.com/libgit2/pygit2/pull/1295)

- Fix error in the test suite when running with address sanitizer
[1304](https://github.com/libgit2/pygit2/pull/1304)
[1301](https://github.com/libgit2/pygit2/issues/1301)

- Annotations and documentation fixes
[1293](https://github.com/libgit2/pygit2/pull/1293)

1.15.0

- Many deprecated features have been removed, see below

- Upgrade to libgit2 v1.8.1

- New `push_options` optional argument in `Repository.push(...)`
[1282](https://github.com/libgit2/pygit2/pull/1282)

- New support comparison of `Oid` with text string

- Fix `CheckoutNotify.IGNORED`
[1288](https://github.com/libgit2/pygit2/issues/1288)

- Use default error handler when decoding/encoding paths
[537](https://github.com/libgit2/pygit2/issues/537)

- Remove setuptools runtime dependency
[1281](https://github.com/libgit2/pygit2/pull/1281)

- Coding style with ruff
[1280](https://github.com/libgit2/pygit2/pull/1280)

- Add wheels for ppc64le
[1279](https://github.com/libgit2/pygit2/pull/1279)

- Fix tests on EPEL8 builds for s390x
[1283](https://github.com/libgit2/pygit2/pull/1283)

Deprecations:

- Deprecate `IndexEntry.hex`, use `str(IndexEntry.id)`

Breaking changes:

- Remove deprecated `oid.hex`, use `str(oid)`
- Remove deprecated `object.hex`, use `str(object.id)`
- Remove deprecated `object.oid`, use `object.id`

- Remove deprecated `Repository.add_submodule(...)`, use `Repository.submodules.add(...)`
- Remove deprecated `Repository.lookup_submodule(...)`, use `Repository.submodules[...]`
- Remove deprecated `Repository.init_submodules(...)`, use `Repository.submodules.init(...)`
- Remove deprecated `Repository.update_submodule(...)`, use `Repository.submodules.update(...)`

- Remove deprecated constants `GIT_OBJ_XXX`, use `ObjectType`
- Remove deprecated constants `GIT_REVPARSE_XXX`, use `RevSpecFlag`
- Remove deprecated constants `GIT_REF_XXX`, use `ReferenceType`
- Remove deprecated `ReferenceType.OID`, use instead `ReferenceType.DIRECT`
- Remove deprecated `ReferenceType.LISTALL`, use instead `ReferenceType.ALL`

- Remove deprecated support for passing dicts to repository\'s `merge(...)`,
`merge_commits(...)` and `merge_trees(...)`. Instead pass `MergeFlag` for `flags`, and
`MergeFileFlag` for `file_flags`.

- Remove deprecated support for passing a string for the favor argument to repository\'s
`merge(...)`, `merge_commits(...)` and `merge_trees(...)`. Instead pass `MergeFavor`.

1.14.1

- Update wheels to libgit2 v1.7.2

- Now `Object.filemode` returns `enums.FileMode` and `Reference.type` returns
`enums.ReferenceType`
[1273](https://github.com/libgit2/pygit2/pull/1273)

- Fix tests on Fedora 40
[1275](https://github.com/libgit2/pygit2/pull/1275)

Deprecations:

- Deprecate `ReferenceType.OID`, use `ReferenceType.DIRECT`
- Deprecate `ReferenceType.LISTALL`, use `ReferenceType.ALL`

1.14.0

- Drop support for Python 3.8
- Add Linux wheels for musl on x86\_64
[1266](https://github.com/libgit2/pygit2/pull/1266)
- New `Repository.submodules` namespace
[1250](https://github.com/libgit2/pygit2/pull/1250)
- New `Repository.listall_mergeheads()`, `Repository.message`,
`Repository.raw_message` and `Repository.remove_message()`
[1261](https://github.com/libgit2/pygit2/pull/1261)
- New `pygit2.enums` supersedes the `GIT_` constants
[1251](https://github.com/libgit2/pygit2/pull/1251)
- Now `Repository.status()`, `Repository.status_file()`,
`Repository.merge_analysis()`, `DiffFile.flags`, `DiffFile.mode`,
`DiffDelta.flags` and `DiffDelta.status` return enums
[1263](https://github.com/libgit2/pygit2/pull/1263)
- Now repository\'s `merge()`, `merge_commits()` and `merge_trees()`
take enums/flags for their `favor`, `flags` and `file_flags` arguments.
[1271](https://github.com/libgit2/pygit2/pull/1271)
[1272](https://github.com/libgit2/pygit2/pull/1272)
- Fix crash in filter cleanup
[1259](https://github.com/libgit2/pygit2/pull/1259)
- Documentation fixes
[1255](https://github.com/libgit2/pygit2/pull/1255)
[1258](https://github.com/libgit2/pygit2/pull/1258)
[1268](https://github.com/libgit2/pygit2/pull/1268)
[1270](https://github.com/libgit2/pygit2/pull/1270)

Breaking changes:

- Remove deprecated `Repository.create_remote(...)` function, use
instead `Repository.remotes.create(...)`

Deprecations:

- Deprecate `Repository.add_submodule(...)`, use `Repository.submodules.add(...)`
- Deprecate `Repository.lookup_submodule(...)`, use `Repository.submodules[...]`
- Deprecate `Repository.init_submodules(...)`, use `Repository.submodules.init(...)`
- Deprecate `Repository.update_submodule(...)`, use `Repository.submodules.update(...)`
- Deprecate `GIT_*` constants, use `pygit2.enums`

- Passing dicts to repository\'s `merge(...)`, `merge_commits(...)` and `merge_trees(...)`
is deprecated. Instead pass `MergeFlag` for the `flags` argument, and `MergeFileFlag` for
`file_flags`.

- Passing a string for the favor argument to repository\'s `merge(...)`, `merge_commits(...)`
and `merge_trees(...)` is deprecated. Instead pass `MergeFavor`.

1.13.3

- New API for filters in Python
[1237](https://github.com/libgit2/pygit2/pull/1237)
[1244](https://github.com/libgit2/pygit2/pull/1244)
- Shallow repositories: New `depth` optional argument for
`clone_repository(...)` and `Remote.fetch(...)`
[1245](https://github.com/libgit2/pygit2/pull/1245)
[1246](https://github.com/libgit2/pygit2/pull/1246)
- New submodule `init(...)`, `update(...)` and `reload(...)` functions
[1248](https://github.com/libgit2/pygit2/pull/1248)
- Release GIL in `Walker.__next__`
[1249](https://github.com/libgit2/pygit2/pull/1249)
- Type hints for submodule functions in `Repository`
[1247](https://github.com/libgit2/pygit2/pull/1247)

Page 1 of 12

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.