revlog: add an exception hint when processing LFS flags without the extension
It would be even better if this was either detected sooner, or the transaction
completed (especially since the read/write processors aren't needed for the
exchange). But this makes it easier for the user to resolve until that can be
figured out.
tests: drop py36 conditionals in test-bad-extension.t
Since this is a `>=` test, it's really conditionalizing py27 content, which
isn't a thing anymore.
tests: drop py36 conditionals in test-hook.t
Since this is a `>=` test, it's really conditionalizing py27 content, which
isn't a thing anymore.
tests: drop py36 conditionals in test-http-bad-server.t
Since this is a `>=` test, it's really conditionalizing py27 content, which
isn't a thing anymore.
configitems: enable changegroup3 by default (unless using infinitepush)
The LFS extension requires this, and if it isn't enabled on the client (or the
LFS extension isn't loaded), a web client gets a 500 instead of a sensible error
message. Now it gets a different (client) error, but maybe it can be handled
more gracefully.
c0f11347b107 indicates that treemanifest repos have this issue
too.
29cfc474c5fd mentions gating this behind `experimental` so that the format
could change, but that was 7 years ago and we now have an experimental
`changegroup4` as well.
We can keep this as a config for the next cycle in case someone runs into an
unexpected problem, and then jettison it if the infinitepush bundle name changes
are either acceptable as-is or can be created differently.
infinitepush: opt out of changegroup3 unless explicitly configured
This is currently a no-op, as changegroup3 is disabled by default. But when it
is enabled, it changes the hash names of the bundle files. As I don't use this
extension, I have no idea if that's OK or not. So keep the current default
behavior until we can get more info from actual users, while allowing them to
opt-in for testing purposes.
statichttprepo: unbyteify several IOError messages
Builtin errors generally want str messages.
statichttprepo: fix the vfs.join() method to match the base class definition
Flagged by PyCharm. The superclass implementation raised NotImplementedError.
mail: unbyteify the SMTPException message
This is a subclass of OSError, which wants str instead of bytes.
mail: add a missing argument to properly override starttls
I didn't look into when this changed, but it was flagged by PyCharm.