Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit37fa31d

Browse files
authored
Merge pull request#1304 from gitpython-developers/types2
Fix orderdict, improve types
2 parentse766919 +995547a commit37fa31d

File tree

5 files changed

+29
-15
lines changed

5 files changed

+29
-15
lines changed

‎git/config.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,13 @@
4141

4242
T_ConfigParser=TypeVar('T_ConfigParser',bound='GitConfigParser')
4343

44-
ifsys.version_info[:2]< (3,7):
45-
fromcollectionsimportOrderedDict
46-
OrderedDict_OMD=OrderedDict
44+
ifsys.version_info[:3]< (3,7,2):
45+
# typing.Ordereddict not added until py 3.7.2
46+
fromcollectionsimportOrderedDict# type: ignore # until 3.6 dropped
47+
OrderedDict_OMD=OrderedDict# type: ignore # until 3.6 dropped
4748
else:
48-
fromtypingimportOrderedDict
49-
OrderedDict_OMD=OrderedDict[str,List[_T]]
49+
fromtypingimportOrderedDict# type: ignore # until 3.6 dropped
50+
OrderedDict_OMD=OrderedDict[str,List[_T]]# type: ignore[assignment, misc]
5051

5152
# -------------------------------------------------------------
5253

‎git/objects/util.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -493,6 +493,11 @@ def list_traverse(self: T_TIobj, *args: Any, **kwargs: Any) -> IterableList[T_TI
493493
returnsuper(TraversableIterableObj,self)._list_traverse(*args,**kwargs)
494494

495495
@overload# type: ignore
496+
deftraverse(self:T_TIobj
497+
)->Iterator[T_TIobj]:
498+
...
499+
500+
@overload
496501
deftraverse(self:T_TIobj,
497502
predicate:Callable[[Union[T_TIobj,Tuple[Union[T_TIobj,None],T_TIobj]],int],bool],
498503
prune:Callable[[Union[T_TIobj,Tuple[Union[T_TIobj,None],T_TIobj]],int],bool],

‎git/refs/reference.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,9 @@ def __str__(self) -> str:
6262

6363
#{ Interface
6464

65-
defset_object(self,object:Commit_ish,logmsg:Union[str,None]=None)->'Reference':# @ReservedAssignment
65+
# @ReservedAssignment
66+
defset_object(self,object:Union[Commit_ish,'SymbolicReference'],logmsg:Union[str,None]=None
67+
)->'SymbolicReference':
6668
"""Special version which checks if the head-log needs an update as well
6769
:return: self"""
6870
oldbinsha=None

‎git/refs/tag.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@
44

55
# typing ------------------------------------------------------------------
66

7-
fromtypingimportAny,Union,TYPE_CHECKING
7+
fromtypingimportAny,Type,Union,TYPE_CHECKING
88
fromgit.typesimportCommit_ish,PathLike
99

1010
ifTYPE_CHECKING:
1111
fromgit.repoimportRepo
1212
fromgit.objectsimportCommit
1313
fromgit.objectsimportTagObject
14+
fromgit.refsimportSymbolicReference
1415

1516

1617
# ------------------------------------------------------------------------------
@@ -68,7 +69,8 @@ def object(self) -> Commit_ish: # type: ignore[override]
6869
returnReference._get_object(self)
6970

7071
@classmethod
71-
defcreate(cls,repo:'Repo',path:PathLike,reference:Union[Commit_ish,str]='HEAD',
72+
defcreate(cls:Type['TagReference'],repo:'Repo',path:PathLike,
73+
reference:Union[str,'SymbolicReference']='HEAD',
7274
logmsg:Union[str,None]=None,
7375
force:bool=False,**kwargs:Any)->'TagReference':
7476
"""Create a new tag reference.
@@ -78,7 +80,7 @@ def create(cls, repo: 'Repo', path: PathLike, reference: Union[Commit_ish, str]
7880
The prefix refs/tags is implied
7981
8082
:param ref:
81-
A reference to theobject you want to tag.It can be a commit, tree or
83+
A reference to theObject you want to tag.The Object can be a commit, tree or
8284
blob.
8385
8486
:param logmsg:
@@ -98,7 +100,9 @@ def create(cls, repo: 'Repo', path: PathLike, reference: Union[Commit_ish, str]
98100
Additional keyword arguments to be passed to git-tag
99101
100102
:return: A new TagReference"""
101-
args= (path,reference)
103+
if'ref'inkwargsandkwargs['ref']:
104+
reference=kwargs['ref']
105+
102106
iflogmsg:
103107
kwargs['m']=logmsg
104108
elif'message'inkwargsandkwargs['message']:
@@ -107,11 +111,13 @@ def create(cls, repo: 'Repo', path: PathLike, reference: Union[Commit_ish, str]
107111
ifforce:
108112
kwargs['f']=True
109113

114+
args= (path,reference)
115+
110116
repo.git.tag(*args,**kwargs)
111117
returnTagReference(repo,"%s/%s"% (cls._common_path_default,path))
112118

113119
@classmethod
114-
defdelete(cls,repo:'Repo',*tags:'TagReference')->None:
120+
defdelete(cls,repo:'Repo',*tags:'TagReference')->None:# type: ignore[override]
115121
"""Delete the given existing tag or tags"""
116122
repo.git.tag("-d",*tags)
117123

‎git/repo/base.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -422,14 +422,14 @@ def _to_full_tag_path(path):
422422

423423
defcreate_head(self,path:PathLike,commit:str='HEAD',
424424
force:bool=False,logmsg:Optional[str]=None
425-
)->Head:
425+
)->'Head':
426426
"""Create a new head within the repository.
427427
For more documentation, please see the Head.create method.
428428
429429
:return: newly created Head Reference"""
430430
returnHead.create(self,path,commit,logmsg,force)
431431

432-
defdelete_head(self,*heads:'SymbolicReference',**kwargs:Any)->None:
432+
defdelete_head(self,*heads:'Head',**kwargs:Any)->None:
433433
"""Delete the given heads
434434
435435
:param kwargs: Additional keyword arguments to be passed to git-branch"""
@@ -788,10 +788,10 @@ def ignored(self, *paths: PathLike) -> List[PathLike]:
788788
returnproc.replace("\\\\","\\").replace('"',"").split("\n")
789789

790790
@property
791-
defactive_branch(self)->'SymbolicReference':
791+
defactive_branch(self)->Head:
792792
"""The name of the currently active branch.
793-
794793
:return: Head to the active branch"""
794+
# reveal_type(self.head.reference) # => Reference
795795
returnself.head.reference
796796

797797
defblame_incremental(self,rev:TBD,file:TBD,**kwargs:Any)->Optional[Iterator['BlameEntry']]:

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp