# HG changeset patch # User Matt Mackall # Date 1415752999 21600 # Node ID 3480c07fc934a9c90c8dda1ed2bc98fd9c96c44a # Parent dd51abf0aa175ffd792d835f783ad3e74ac3fcc3# Parent 643c58303fb0ec020907af28b9e486be299ba043 merge with stable diff -r dd51abf0aa17 -r 3480c07fc934 hgext/rebase.py --- a/hgext/rebase.py Mon Nov 10 13:20:56 2014 -0500 +++ b/hgext/rebase.py Tue Nov 11 18:43:19 2014 -0600 @@ -274,8 +274,12 @@ "can't compute rebase set\n")) return 1 commonanc = repo.revs('ancestor(%ld, %d)', base, dest).first() - rebaseset = repo.revs('(%d::(%ld) - %d)::', - commonanc, base, commonanc) + if commonanc is not None: + rebaseset = repo.revs('(%d::(%ld) - %d)::', + commonanc, base, commonanc) + else: + rebaseset = [] + if not rebaseset: # transform to list because smartsets are not comparable to # lists. This should be improved to honor laziness of diff -r dd51abf0aa17 -r 3480c07fc934 tests/test-rebase-parameters.t --- a/tests/test-rebase-parameters.t Mon Nov 10 13:20:56 2014 -0500 +++ b/tests/test-rebase-parameters.t Tue Nov 11 18:43:19 2014 -0600 @@ -468,3 +468,17 @@ [255] $ cd .. + +No common ancestor + + $ hg init separaterepo + $ cd separaterepo + $ touch a + $ hg commit -Aqm a + $ hg up -q null + $ touch b + $ hg commit -Aqm b + $ hg rebase -d 0 + nothing to rebase from d7486e00c6f1 to 3903775176ed + [1] + $ cd .. diff -r dd51abf0aa17 -r 3480c07fc934 tests/test-run-tests.t --- a/tests/test-run-tests.t Mon Nov 10 13:20:56 2014 -0500 +++ b/tests/test-run-tests.t Tue Nov 11 18:43:19 2014 -0600 @@ -416,22 +416,22 @@ $ cat report.json testreport ={ "test-failure.t": [\{] (re) - "csys": "\s*[\d\.]{5}", (re) - "cuser": "\s*[\d\.]{5}", (re) - "result": "failure", - "time": "\s*[\d\.]{5}" (re) - }, + "csys": "\s*[\d\.]{4,5}", ? (re) + "cuser": "\s*[\d\.]{4,5}", ? (re) + "result": "failure", ? (re) + "time": "\s*[\d\.]{4,5}" (re) + }, ? (re) "test-skip.t": { - "csys": "\s*[\d\.]{5}", (re) - "cuser": "\s*[\d\.]{5}", (re) - "result": "skip", - "time": "\s*[\d\.]{5}" (re) - }, + "csys": "\s*[\d\.]{4,5}", ? (re) + "cuser": "\s*[\d\.]{4,5}", ? (re) + "result": "skip", ? (re) + "time": "\s*[\d\.]{4,5}" (re) + }, ? (re) "test-success.t": [\{] (re) - "csys": "\s*[\d\.]{5}", (re) - "cuser": "\s*[\d\.]{5}", (re) - "result": "success", - "time": "\s*[\d\.]{5}" (re) + "csys": "\s*[\d\.]{4,5}", ? (re) + "cuser": "\s*[\d\.]{4,5}", ? (re) + "result": "success", ? (re) + "time": "\s*[\d\.]{4,5}" (re) } } (no-eol)