--- a/mercurial/localrepo.py Wed Sep 12 15:03:17 2018 -0700
+++ b/mercurial/localrepo.py Wed Sep 12 13:10:45 2018 -0700
@@ -438,6 +438,19 @@
# Then we validate that the known set is reasonable to use together.
ensurerequirementscompatible(ui, requirements)
+ # TODO there are unhandled edge cases related to opening repositories with
+ # shared storage. If storage is shared, we should also test for requirements
+ # compatibility in the pointed-to repo. This entails loading the .hg/hgrc in
+ # that repo, as that repo may load extensions needed to open it. This is a
+ # bit complicated because we don't want the other hgrc to overwrite settings
+ # in this hgrc.
+ #
+ # This bug is somewhat mitigated by the fact that we copy the .hg/requires
+ # file when sharing repos. But if a requirement is added after the share is
+ # performed, thereby introducing a new requirement for the opener, we may
+ # will not see that and could encounter a run-time error interacting with
+ # that shared store since it has an unknown-to-us requirement.
+
# At this point, we know we should be capable of opening the repository.
# Now get on with doing that.