Communicate removal of Subversion bindings more clearly
Created originally on Bitbucket by Anonymous
After updating from TorteiseHg 3.3.3 to 3.4, my usual "hg pull" was unexpectedly answered with an "abort: no compatible bindings available:" error message.
Why this is bad
- I wasn't warned(*) that a feature I use becomes unavailable. It was just suddenly broken, interrupting my work.
- The message doesn't indicate that the removal was intentional - I figured this had to be a bug and downgraded to wait for the next release to fix it.
- Apparently, there's no easy way to get the missing bindings back.
- For users evaluating hg against "that other very popular DVCS", where interacting with SVN just works, this is a huge downside.
(*) It is mentioned on the first line of the release notes. While it is my fault to not read them before updating, I still think the software should clearly communicate the removal as well.
Suggestions for improvement
- Detect if the user had the hgsubversion extension enabled and react accordingly: As absolute minimum, tell about the removal. This should at least be done on installation, if possible also when hgsubversion commands are invoked.
- Either provide an easy "one-click solution" to install the bindings or just do so automatically if hgsubversion was enabled.
- Don't make it sound so grim: The libsvn page makes it seem like all hope is lost if you want to install the bindings yourself ("Windows builds ... are not easy to come by", "64-bit builds are much less common", "'frozen' Python environment", etc.), and that the bindings you offer for download are unsafe ("security problems in the subversion DLLs "). In essence, this tells me "don't bother", with a little bit of "maybe look somewhere else" (see "Why this is bad"). I believe this is a bad impression to make.
Kind regards