# HG changeset patch # User Pierre-Yves David # Date 1638885105 -3600 # Node ID 7964a2dbde125b4cd45e226660711a6545a8e468 # Parent 5e6542143d40603fc2154a82d798b9681e5a5377 share: move the requirement initialisation code around We will make this logic more flexible in the next patch. We start by moving it at the end of the function without any other change for clarity. Differential Revision: https://phab.mercurial-scm.org/D11891 diff -r 5e6542143d40 -r 7964a2dbde12 mercurial/localrepo.py --- a/mercurial/localrepo.py Wed Dec 08 05:35:32 2021 +0100 +++ b/mercurial/localrepo.py Tue Dec 07 14:51:45 2021 +0100 @@ -3566,16 +3566,6 @@ Extensions can wrap this function to specify custom requirements for new repositories. """ - # If the repo is being created from a shared repository, we copy - # its requirements. - if b'sharedrepo' in createopts: - requirements = set(createopts[b'sharedrepo'].requirements) - if createopts.get(b'sharedrelative'): - requirements.add(requirementsmod.RELATIVE_SHARED_REQUIREMENT) - else: - requirements.add(requirementsmod.SHARED_REQUIREMENT) - - return requirements if b'backend' not in createopts: raise error.ProgrammingError( @@ -3671,6 +3661,17 @@ if ui.configbool(b'format', b'use-share-safe'): requirements.add(requirementsmod.SHARESAFE_REQUIREMENT) + # If the repo is being created from a shared repository, we copy + # its requirements. + if b'sharedrepo' in createopts: + requirements = set(createopts[b'sharedrepo'].requirements) + if createopts.get(b'sharedrelative'): + requirements.add(requirementsmod.RELATIVE_SHARED_REQUIREMENT) + else: + requirements.add(requirementsmod.SHARED_REQUIREMENT) + + return requirements + return requirements