equal
deleted
inserted
replaced
972 # requirement, we have to assume the repo is using revlog version 0. |
972 # requirement, we have to assume the repo is using revlog version 0. |
973 # This revlog format is super old and we don't bother trying to parse |
973 # This revlog format is super old and we don't bother trying to parse |
974 # opener options for it because those options wouldn't do anything |
974 # opener options for it because those options wouldn't do anything |
975 # meaningful on such old repos. |
975 # meaningful on such old repos. |
976 if ( |
976 if ( |
977 b'revlogv1' in requirements |
977 requirementsmod.REVLOGV1_REQUIREMENT in requirements |
978 or requirementsmod.REVLOGV2_REQUIREMENT in requirements |
978 or requirementsmod.REVLOGV2_REQUIREMENT in requirements |
979 ): |
979 ): |
980 options.update(resolverevlogstorevfsoptions(ui, requirements, features)) |
980 options.update(resolverevlogstorevfsoptions(ui, requirements, features)) |
981 else: # explicitly mark repo as using revlogv0 |
981 else: # explicitly mark repo as using revlogv0 |
982 options[b'revlogv0'] = True |
982 options[b'revlogv0'] = True |
996 """Resolve opener options specific to revlogs.""" |
996 """Resolve opener options specific to revlogs.""" |
997 |
997 |
998 options = {} |
998 options = {} |
999 options[b'flagprocessors'] = {} |
999 options[b'flagprocessors'] = {} |
1000 |
1000 |
1001 if b'revlogv1' in requirements: |
1001 if requirementsmod.REVLOGV1_REQUIREMENT in requirements: |
1002 options[b'revlogv1'] = True |
1002 options[b'revlogv1'] = True |
1003 if requirementsmod.REVLOGV2_REQUIREMENT in requirements: |
1003 if requirementsmod.REVLOGV2_REQUIREMENT in requirements: |
1004 options[b'revlogv2'] = True |
1004 options[b'revlogv2'] = True |
1005 |
1005 |
1006 if b'generaldelta' in requirements: |
1006 if b'generaldelta' in requirements: |
1197 # - manifestv2: An experimental new manifest format that allowed |
1197 # - manifestv2: An experimental new manifest format that allowed |
1198 # for stem compression of long paths. Experiment ended up not |
1198 # for stem compression of long paths. Experiment ended up not |
1199 # being successful (repository sizes went up due to worse delta |
1199 # being successful (repository sizes went up due to worse delta |
1200 # chains), and the code was deleted in 4.6. |
1200 # chains), and the code was deleted in 4.6. |
1201 supportedformats = { |
1201 supportedformats = { |
1202 b'revlogv1', |
1202 requirementsmod.REVLOGV1_REQUIREMENT, |
1203 b'generaldelta', |
1203 b'generaldelta', |
1204 requirementsmod.TREEMANIFEST_REQUIREMENT, |
1204 requirementsmod.TREEMANIFEST_REQUIREMENT, |
1205 requirementsmod.COPIESSDC_REQUIREMENT, |
1205 requirementsmod.COPIESSDC_REQUIREMENT, |
1206 requirementsmod.REVLOGV2_REQUIREMENT, |
1206 requirementsmod.REVLOGV2_REQUIREMENT, |
1207 requirementsmod.SIDEDATA_REQUIREMENT, |
1207 requirementsmod.SIDEDATA_REQUIREMENT, |
3408 b'storage backend: %s' |
3408 b'storage backend: %s' |
3409 ) |
3409 ) |
3410 % createopts[b'backend'] |
3410 % createopts[b'backend'] |
3411 ) |
3411 ) |
3412 |
3412 |
3413 requirements = {b'revlogv1'} |
3413 requirements = {requirementsmod.REVLOGV1_REQUIREMENT} |
3414 if ui.configbool(b'format', b'usestore'): |
3414 if ui.configbool(b'format', b'usestore'): |
3415 requirements.add(b'store') |
3415 requirements.add(b'store') |
3416 if ui.configbool(b'format', b'usefncache'): |
3416 if ui.configbool(b'format', b'usefncache'): |
3417 requirements.add(b'fncache') |
3417 requirements.add(b'fncache') |
3418 if ui.configbool(b'format', b'dotencode'): |
3418 if ui.configbool(b'format', b'dotencode'): |
3456 if ui.configbool(b'experimental', b'treemanifest'): |
3456 if ui.configbool(b'experimental', b'treemanifest'): |
3457 requirements.add(requirementsmod.TREEMANIFEST_REQUIREMENT) |
3457 requirements.add(requirementsmod.TREEMANIFEST_REQUIREMENT) |
3458 |
3458 |
3459 revlogv2 = ui.config(b'experimental', b'revlogv2') |
3459 revlogv2 = ui.config(b'experimental', b'revlogv2') |
3460 if revlogv2 == b'enable-unstable-format-and-corrupt-my-data': |
3460 if revlogv2 == b'enable-unstable-format-and-corrupt-my-data': |
3461 requirements.remove(b'revlogv1') |
3461 requirements.remove(requirementsmod.REVLOGV1_REQUIREMENT) |
3462 # generaldelta is implied by revlogv2. |
3462 # generaldelta is implied by revlogv2. |
3463 requirements.discard(b'generaldelta') |
3463 requirements.discard(b'generaldelta') |
3464 requirements.add(requirementsmod.REVLOGV2_REQUIREMENT) |
3464 requirements.add(requirementsmod.REVLOGV2_REQUIREMENT) |
3465 # experimental config: format.internal-phase |
3465 # experimental config: format.internal-phase |
3466 if ui.configbool(b'format', b'internal-phase'): |
3466 if ui.configbool(b'format', b'internal-phase'): |