In a Mercurial repository, you cannot see if a file was renamed (
hg rename) or if the old name was deleted and the new added (
hg add; hg remove). It is as if Bitbucket runs Mercurial with
diff.git = true in the config file.
An example of a rename is 8fb8dce3f9b6 in Mercurial's repository. The
test-config-case.t file was renamed to
test-config.t, but this cannot be seen. This makes it practically impossible to review changesets involving renames.
hg serve --config diff.git=true shows how one can do it instead by adding "rename from tests/test-config-case.t" and "rename to tests/test-config.t" lines above the diff. I'm sure you can come up with something nice here :-)
For copies, it is only the new file that shows up in the diff on Bitbucket, as seen for 5c5152af0d15 where
map-cmdline.phases was copied from