largefiles: avoid dynamically subclassing context instances
E.g. copies.pathcopies() compares context objects for equality and
basectx.__eq__ compares the type. But since largefiles was dynamically
creating classes, they would all be unequal. That led pathcopies(),
after some changes I made, to not short-circuit to get copy info only
from the dirstate. This patch fixes that short-circuiting (and other
places where context are being compared for equality).
Differential Revision: https://phab.mercurial-scm.org/D7143
relnotes: copy "next" to "5.2" and clear "next"
This is the same thing as we did for 5.1 in
cba59b338976 (relnotes:
copy "next" to "5.1" and clear "next", 2019-08-01).
Differential Revision: https://phab.mercurial-scm.org/D7231
py3: avoid `b'%s' % type(...)` in a ProgrammingError
Differential Revision: https://phab.mercurial-scm.org/D7363
largefiles: delete unused repo.status_nolfiles()
Differential Revision: https://phab.mercurial-scm.org/D7142
largefiles: use context manager for wlock in repo.status() override
Differential Revision: https://phab.mercurial-scm.org/D7141
largefiles: allow "lfstatus" context manager to set value to False
Differential Revision: https://phab.mercurial-scm.org/D7140