commit - ecaf366aabafc87df8b53596ef5d28a30a6d5fac
commit + 65c6626b658b5b99c7d9b46d2c25e9a5edb18dfc
blob - bcea5a7f4760273a4ff5ba0e09f39cc7cde65dc5
blob + b55d35b31e4034d4e152f4cc27adb383e41b9908
--- dulwich/object_store.py
+++ dulwich/object_store.py
)
from dulwich.file import GitFile
from dulwich.objects import (
+ ObjectID,
Commit,
ShaFile,
Tag,
PackStreamCopier,
)
from dulwich.protocol import DEPTH_INFINITE
-from dulwich.refs import ANNOTATED_TAG_SUFFIX
+from dulwich.refs import ANNOTATED_TAG_SUFFIX, Ref
INFODIR = "info"
PACKDIR = "pack"
def determine_wants_all(
self,
- refs: Dict[bytes, bytes],
+ refs: Dict[Ref, ObjectID],
depth: Optional[int] = None
- ) -> List[bytes]:
+ ) -> List[ObjectID]:
def _want_deepen(sha):
if not depth:
return False
"""
raise NotImplementedError(self.get_raw)
- def __getitem__(self, sha):
+ def __getitem__(self, sha: ObjectID):
"""Obtain an object by SHA1."""
type_num, uncomp = self.get_raw(sha)
return ShaFile.from_raw_string(type_num, uncomp, sha=sha)
"""List with pack objects."""
return []
- def get_raw(self, name):
+ def get_raw(self, name: ObjectID):
"""Obtain the raw text for an object.
Args:
obj = self[self._to_hexsha(name)]
return obj.type_num, obj.as_raw_string()
- def __getitem__(self, name):
+ def __getitem__(self, name: ObjectID):
return self._data[self._to_hexsha(name)].copy()
- def __delitem__(self, name):
+ def __delitem__(self, name: ObjectID):
"""Delete an object from this store, for testing only."""
del self._data[self._to_hexsha(name)]
blob - f3b5f7c86ba0b198dba68955cee7bf9ede03dd68
blob + d8f792f29be4ad90bb1723044fcb00e64ed06a4b
--- dulwich/repo.py
+++ dulwich/repo.py
ShaFile,
Tag,
Tree,
+ ObjectID,
)
from dulwich.pack import (
pack_objects_to_data,
from dulwich.line_ending import BlobNormalizer, TreeBlobNormalizer
from dulwich.refs import ( # noqa: F401
+ Ref,
ANNOTATED_TAG_SUFFIX,
LOCAL_BRANCH_PREFIX,
LOCAL_TAG_PREFIX,
return Walker(self.object_store, include, *args, **kwargs)
- def __getitem__(self, name):
+ def __getitem__(self, name: Union[ObjectID, Ref]):
"""Retrieve a Git object by SHA1 or ref.
Args: