equal
deleted
inserted
replaced
64 def __init__(self, state, mode, size, mtime): |
64 def __init__(self, state, mode, size, mtime): |
65 self._state = state |
65 self._state = state |
66 self._mode = mode |
66 self._mode = mode |
67 self._size = size |
67 self._size = size |
68 self._mtime = mtime |
68 self._mtime = mtime |
|
69 |
|
70 @classmethod |
|
71 def from_v1_data(cls, state, mode, size, mtime): |
|
72 """Build a new DirstateItem object from V1 data |
|
73 |
|
74 Since the dirstate-v1 format is frozen, the signature of this function |
|
75 is not expected to change, unlike the __init__ one. |
|
76 """ |
|
77 return cls( |
|
78 state=state, |
|
79 mode=mode, |
|
80 size=size, |
|
81 mtime=mtime, |
|
82 ) |
69 |
83 |
70 def __getitem__(self, idx): |
84 def __getitem__(self, idx): |
71 if idx == 0 or idx == -4: |
85 if idx == 0 or idx == -4: |
72 msg = b"do not use item[x], use item.state" |
86 msg = b"do not use item[x], use item.state" |
73 util.nouideprecwarn(msg, b'6.0', stacklevel=2) |
87 util.nouideprecwarn(msg, b'6.0', stacklevel=2) |
544 pos1 = pos2 + e[4] |
558 pos1 = pos2 + e[4] |
545 f = st[pos2:pos1] |
559 f = st[pos2:pos1] |
546 if b'\0' in f: |
560 if b'\0' in f: |
547 f, c = f.split(b'\0') |
561 f, c = f.split(b'\0') |
548 copymap[f] = c |
562 copymap[f] = c |
549 dmap[f] = DirstateItem(*e[:4]) |
563 dmap[f] = DirstateItem.from_v1_data(*e[:4]) |
550 return parents |
564 return parents |
551 |
565 |
552 |
566 |
553 def pack_dirstate(dmap, copymap, pl, now): |
567 def pack_dirstate(dmap, copymap, pl, now): |
554 now = int(now) |
568 now = int(now) |