Ticket #103 (closed defect: fixed)
hg doesn't honor requested version
|Reported by:||warner||Owned by:||warner|
The Mercurial step is not yet capable of building anything other than HEAD (aka 'tip' in hg parlance).
To fix this, we need to pieces of code:
- the back-end hg step needs to accept a revision argument, and use it during 'clone' and 'pull'.
- the front-end buildbot.steps.source.Mercurial step needs to take the list of changes it's been given and decide upon a revision to grab. When there's only one change, it's easy. When there are more than one, we have a problem, because the hex revision identifiers that hg uses aren't strictly sortable (at least not without known their ancestry, and that would involve the buildbot knowing a lot more about the hg tree than it currently does).
I'm looking for a quick partial fix and a better longer-term fix. The quick partial one will be to implement the backend change (so 'force build' will work correctly), and implement a computeSourceRevision() that only pays attention to the last change it sees. In most cases this should work correctly.