comparison mercurial/upgrade_utils/engine.py @ 50537:aede57466804

store: use boolean property for upgrade's matchrevlog
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 15 May 2023 22:03:39 +0200
parents e4186ddab473
children e1ee6910f6bc
comparison
equal deleted inserted replaced
50536:e4186ddab473 50537:aede57466804
103 UPGRADE_ALL_REVLOGS = frozenset( 103 UPGRADE_ALL_REVLOGS = frozenset(
104 [UPGRADE_CHANGELOG, UPGRADE_MANIFEST, UPGRADE_FILELOGS] 104 [UPGRADE_CHANGELOG, UPGRADE_MANIFEST, UPGRADE_FILELOGS]
105 ) 105 )
106 106
107 107
108 def matchrevlog(revlogfilter, rl_type): 108 def matchrevlog(revlogfilter, entry):
109 """check if a revlog is selected for cloning. 109 """check if a revlog is selected for cloning.
110 110
111 In other words, are there any updates which need to be done on revlog 111 In other words, are there any updates which need to be done on revlog
112 or it can be blindly copied. 112 or it can be blindly copied.
113 113
114 The store entry is checked against the passed filter""" 114 The store entry is checked against the passed filter"""
115 if rl_type & store.FILEFLAGS_CHANGELOG: 115 if entry.is_changelog:
116 return UPGRADE_CHANGELOG in revlogfilter 116 return UPGRADE_CHANGELOG in revlogfilter
117 elif rl_type & store.FILEFLAGS_MANIFESTLOG: 117 elif entry.is_manifestlog:
118 return UPGRADE_MANIFEST in revlogfilter 118 return UPGRADE_MANIFEST in revlogfilter
119 assert rl_type & store.FILEFLAGS_FILELOG 119 assert entry.is_filelog
120 return UPGRADE_FILELOGS in revlogfilter 120 return UPGRADE_FILELOGS in revlogfilter
121 121
122 122
123 def _perform_clone( 123 def _perform_clone(
124 ui, 124 ui,
131 oncopiedrevision, 131 oncopiedrevision,
132 ): 132 ):
133 """returns the new revlog object created""" 133 """returns the new revlog object created"""
134 newrl = None 134 newrl = None
135 revlog_path = entry.main_file_path() 135 revlog_path = entry.main_file_path()
136 if matchrevlog(upgrade_op.revlogs_to_process, entry.revlog_type): 136 if matchrevlog(upgrade_op.revlogs_to_process, entry):
137 ui.note( 137 ui.note(
138 _(b'cloning %d revisions from %s\n') 138 _(b'cloning %d revisions from %s\n')
139 % (len(old_revlog), revlog_path) 139 % (len(old_revlog), revlog_path)
140 ) 140 )
141 newrl = _revlog_from_store_entry(dstrepo, entry) 141 newrl = _revlog_from_store_entry(dstrepo, entry)