1673: post-review revision-range doesn't handle single revision as advertised

gordon.m********@gmai***** (Google Code) (Is this you? Claim this profile.)
Jan. 22, 2014
What version are you running?

RBTools 0.2


What steps will reproduce the problem?
1. Enter a command line with a single revision: 'post-review --revision-
range=20397'

What is the expected output? What do you see instead?

The docs at http://www.reviewboard.org/docs/manual/dev/users/tools/post-
review/#posting-committed-code state that this should work.  Instead, I 
get:

Traceback (most recent call last):
  File "/usr/local/bin/post-review", line 9, in <module>
    load_entry_point('RBTools==0.2', 'console_scripts', 'post-review')()
  File "/usr/local/lib/python2.6/dist-packages/rbtools/postreview.py", line 
2830, in main
    repository_info)
  File "/usr/local/lib/python2.6/dist-packages/rbtools/postreview.py", line 
2034, in diff_between_revisions
    r1, r2 = revision_range.split(':')
ValueError: need more than 1 value to unpack

What operating system are you using? What browser?

Ubuntu 10.04 LTS.
#1 l.h****@gmai***** (Google Code) (Is this you? Claim this profile.)
I can confirm this issue.

I’m using post-review on a Mercurial repository. I wonder if there’s a workaround.
david
#2 david
  • +Component-RBTools
#3 phill*****@gmai***** (Google Code) (Is this you? Claim this profile.)
I've noticed this as well. With SVN it looks like its running

svn diff --diff-cmd=diff -r 24

when it should run

svn diff --diff-cmd=diff -c 24
or
svn diff --diff-cmd=diff -r 23:24
#4 jo***@radiu***** (Google Code) (Is this you? Claim this profile.)
I have noticed the same thing with Git in v. 0.5. 

Reading the docs I would expect this flag to be useful for posting a commit of a specific commit, even if it has not yet been pushed to the remote repository.

The expectation for me is rbt post --revision-range=HEAD would post only the changes between HEAD^ and HEAD, e. g. create a parent diff between origin/HEAD and local HEAD^ and the a diff between HEAD^ and HEAD. 

Instead rbt post --revision-range=HEAD generates a parent diff between origin/HEAD local HEAD, and an empty diff for the review diff.
david
#5 david
This is fixed in rbtools master (which will ship as 0.6)
  • +Fixed