equal
deleted
inserted
replaced
387 b'requires', |
387 b'requires', |
388 ] |
388 ] |
389 |
389 |
390 REVLOG_FILES_MAIN_EXT = (b'.i', b'i.tmpcensored') |
390 REVLOG_FILES_MAIN_EXT = (b'.i', b'i.tmpcensored') |
391 REVLOG_FILES_OTHER_EXT = (b'.d', b'.n', b'.nd', b'd.tmpcensored') |
391 REVLOG_FILES_OTHER_EXT = (b'.d', b'.n', b'.nd', b'd.tmpcensored') |
|
392 # files that are "volatile" and might change between listing and streaming |
|
393 # |
|
394 # note: the ".nd" file are nodemap data and won't "change" but they might be |
|
395 # deleted. |
|
396 REVLOG_FILES_VOLATILE_EXT = (b'.n', b'.nd') |
392 |
397 |
393 |
398 |
394 def is_revlog(f, kind, st): |
399 def is_revlog(f, kind, st): |
395 if kind != stat.S_IFREG: |
400 if kind != stat.S_IFREG: |
396 return None |
401 return None |
399 |
404 |
400 def revlog_type(f): |
405 def revlog_type(f): |
401 if f.endswith(REVLOG_FILES_MAIN_EXT): |
406 if f.endswith(REVLOG_FILES_MAIN_EXT): |
402 return FILEFLAGS_REVLOG_MAIN |
407 return FILEFLAGS_REVLOG_MAIN |
403 elif f.endswith(REVLOG_FILES_OTHER_EXT): |
408 elif f.endswith(REVLOG_FILES_OTHER_EXT): |
404 return FILETYPE_FILELOG_OTHER |
409 t = FILETYPE_FILELOG_OTHER |
|
410 if f.endswith(REVLOG_FILES_VOLATILE_EXT): |
|
411 t |= FILEFLAGS_VOLATILE |
|
412 return t |
405 |
413 |
406 |
414 |
407 # the file is part of changelog data |
415 # the file is part of changelog data |
408 FILEFLAGS_CHANGELOG = 1 << 13 |
416 FILEFLAGS_CHANGELOG = 1 << 13 |
409 # the file is part of manifest data |
417 # the file is part of manifest data |
415 |
423 |
416 # the main entry point for a revlog |
424 # the main entry point for a revlog |
417 FILEFLAGS_REVLOG_MAIN = 1 << 1 |
425 FILEFLAGS_REVLOG_MAIN = 1 << 1 |
418 # a secondary file for a revlog |
426 # a secondary file for a revlog |
419 FILEFLAGS_REVLOG_OTHER = 1 << 0 |
427 FILEFLAGS_REVLOG_OTHER = 1 << 0 |
|
428 |
|
429 # files that are "volatile" and might change between listing and streaming |
|
430 FILEFLAGS_VOLATILE = 1 << 20 |
420 |
431 |
421 FILETYPE_CHANGELOG_MAIN = FILEFLAGS_CHANGELOG | FILEFLAGS_REVLOG_MAIN |
432 FILETYPE_CHANGELOG_MAIN = FILEFLAGS_CHANGELOG | FILEFLAGS_REVLOG_MAIN |
422 FILETYPE_CHANGELOG_OTHER = FILEFLAGS_CHANGELOG | FILEFLAGS_REVLOG_OTHER |
433 FILETYPE_CHANGELOG_OTHER = FILEFLAGS_CHANGELOG | FILEFLAGS_REVLOG_OTHER |
423 FILETYPE_MANIFESTLOG_MAIN = FILEFLAGS_MANIFESTLOG | FILEFLAGS_REVLOG_MAIN |
434 FILETYPE_MANIFESTLOG_MAIN = FILEFLAGS_MANIFESTLOG | FILEFLAGS_REVLOG_MAIN |
424 FILETYPE_MANIFESTLOG_OTHER = FILEFLAGS_MANIFESTLOG | FILEFLAGS_REVLOG_OTHER |
435 FILETYPE_MANIFESTLOG_OTHER = FILEFLAGS_MANIFESTLOG | FILEFLAGS_REVLOG_OTHER |