Skip to content

Commit fb42553

Browse files
committed
filter: support FilterSource.repo
1 parent 99ba827 commit fb42553

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

pygit2/decl/filter.h

+1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ int git_filter_init(git_filter *filter, unsigned int version);
6060
int git_filter_register(
6161
const char *name, git_filter *filter, int priority);
6262
int git_filter_unregister(const char *name);
63+
git_repository *git_filter_source_repo(const git_filter_source *src);
6364
const char *git_filter_source_path(const git_filter_source *src);
6465
uint16_t git_filter_source_filemode(const git_filter_source *src);
6566
const git_oid *git_filter_source_id(const git_filter_source *src);

pygit2/filter.py

+3
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
from .callbacks import Payload
3333
from .errors import check_error, Passthrough
3434
from .ffi import ffi, C
35+
from .repository import Repository
3536
from .utils import maybe_string, to_bytes
3637

3738

@@ -48,6 +49,7 @@ class FilterSource:
4849
be None.
4950
flags: GIT_FILTER_* flags to be applied for this blob.
5051
"""
52+
repo: Repository
5153
path: str
5254
filemode: int
5355
oid: Optional[Oid]
@@ -56,6 +58,7 @@ class FilterSource:
5658
@classmethod
5759
def _from_c(cls, ptr):
5860
src = cls.__new__(cls)
61+
src.repo = Repository._from_c(C.git_filter_source_repo(ptr), owned=False)
5962
src.path = maybe_string(C.git_filter_source_path(ptr))
6063
src.filemode = C.git_filter_source_filemode(ptr)
6164
try:

0 commit comments

Comments
 (0)