mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 07:17:55 +03:00
Add annotations to eden/scm/edenscm/store.py
Reviewed By: jordanwebster Differential Revision: D39811574 fbshipit-source-id: 3e8dc73afff656444201b4891c391491ca3ef468
This commit is contained in:
parent
1ef82e79cc
commit
5111891f6f
@ -16,7 +16,7 @@ import errno
|
||||
import hashlib
|
||||
import os
|
||||
import stat
|
||||
from typing import Optional
|
||||
from typing import Optional, Sized
|
||||
|
||||
import bindings
|
||||
|
||||
@ -303,10 +303,10 @@ def _auxencode(path, dotencode):
|
||||
|
||||
_maxstorepathlen = 120
|
||||
_dirprefixlen = 8
|
||||
_maxshortdirslen = 8 * (_dirprefixlen + 1) - 4
|
||||
_maxshortdirslen: int = 8 * (_dirprefixlen + 1) - 4
|
||||
|
||||
|
||||
def _hashencode(path, dotencode):
|
||||
def _hashencode(path, dotencode) -> str:
|
||||
digest = hashlib.sha1(encodeutf8(path)).hexdigest()
|
||||
le = lowerencode(path[5:]).split("/") # skips prefix 'data/' or 'meta/'
|
||||
parts = _auxencode(le, dotencode)
|
||||
@ -377,7 +377,7 @@ def _hybridencode(path, dotencode):
|
||||
return res
|
||||
|
||||
|
||||
def _pathencode(path):
|
||||
def _pathencode(path: Sized):
|
||||
de = encodedir(path)
|
||||
if len(path) > _maxstorepathlen:
|
||||
return _hashencode(de, True)
|
||||
@ -415,7 +415,7 @@ _data = (
|
||||
)
|
||||
|
||||
|
||||
def setvfsmode(vfs):
|
||||
def setvfsmode(vfs) -> None:
|
||||
vfs.createmode = _calcmode(vfs)
|
||||
|
||||
|
||||
@ -764,7 +764,7 @@ class fncachestore(basicstore):
|
||||
return False
|
||||
|
||||
|
||||
def store(requirements, path, vfstype, uiconfig=None):
|
||||
def store(requirements, path, vfstype, uiconfig=None) -> fncachestore:
|
||||
store = fncachestore(path, vfstype, "dotencode" in requirements)
|
||||
# Change remotenames and visibleheads to be backed by metalog,
|
||||
# so they can be atomically read or written.
|
||||
|
Loading…
Reference in New Issue
Block a user