Note, there's the "new head" vs "new head" problem.
You want to check if there's stuff you don't know about on the remote,
i.e., run
hg inc
before you push.
If that empty, check
hg heads default
That's gonna tell you how many heads you have, ignoring the release
branches.
If that's just one, you should totally
hg push -f
Note, `hg push -f` never overwrites our "there's only one head per
branch" server-side hook. So you can, mostly, use that one liberally.
Also, you should update your local hg client. New clients might not be
picky in the same way old clients are.
Also, security update recently, you know.
Axel