I have a private reviewboard installation and added a remote mercurial 
repository with a url like this: 


I then created a new branch in my local clone of the repository and 
commited a change in a single (already existing) file.
This new changeset is not yet pushed to the server.

Now I do rbt post and get:

  ERROR: Error validating diff

  todo.txt: The file was not found in the repository. (HTTP 400, API Error 

Any idea what is going wrong?

Here the full output of rbt post -d

$ rbt post -d
>>> RBTools 0.7.5
>>> Python 2.7.9 (default, Apr  2 2015, 15:33:21) 
[GCC 4.9.2]
>>> Running on Linux-3.19.0-31-generic-x86_64-with-Ubuntu-15.04-vivid
>>> Home = /home/sturm
>>> Current directory = /home/sturm/hg/myrepo
>>> Checking for a Subversion repository...
>>> Unable to execute "svn help": skipping SVN
>>> Checking for a Git repository...
>>> Running: git rev-parse --git-dir
>>> Command exited with rc 128: ['git', 'rev-parse', '--git-dir']
fatal: Not a git repository (or any of the parent directories): .git
>>> Checking for a Mercurial repository...
>>> Running: hg root
>>> Running: hg showconfig
>>> Running: hg svn info
>>> Command exited with rc 255: [u'hg', u'svn', u'info']
hg: unknown command 'svn'
Mercurial Distributed SCM

basic commands:

 add           add the specified files on the next commit
 annotate      show changeset information by line for each file
 clone         make a copy of an existing repository
 commit        commit the specified files or all outstanding changes
 diff          diff repository (or selected files)
 export        dump the header and diffs for one or more changesets
 forget        forget the specified files on the next commit
 init          create a new repository in the given directory
 log           show revision history of entire repository or files
 merge         merge working directory with another revision
 pull          pull changes from the specified source
 push          push changes to the specified destination
 remove        remove the specified files on the next commit
 serve         start stand-alone webserver
 status        show changed files in the working directory
 summary       summarize working directory state
 update        update working directory (or switch revisions)

use "hg help" for the full list of commands or "hg -v" for details
>>> Using candidate path u'default': u'ssh://user@servername/repositoryname'
>>> repository info: Path: ssh://user@servername/repositoryname, Base path: 
, Supports changesets: False
>>> Making HTTP GET request to http://myserver/reviewboard/api/
>>> Running: hg branch
>>> Running: hg -q outgoing --template {rev}\t{node|short}\t{branch}\n 
default -r .
>>> Found outgoing changeset 2747:6164fc0ce839
>>> Running: hg log -r 2747 --template {parents}
>>> Running: hg parents --hidden -r 0
>>> Running: hg identify -i --hidden -r 2730 --config 
>>> Running: hg identify -i --hidden -r 2747 --config 
>>> Running: hg status --modified --added --removed --deleted
>>> Running: hg -q outgoing --template {rev}\t{node|short}\t{branch}\n 
default -r 2feedb453eac
>>> Command exited with rc 1: [u'hg', u'-q', u'outgoing', u'--template', 
u'{rev}\\t{node|short}\\t{branch}\\n', u'default', u'-r', u'2feedb453eac']
>>> 0 outgoing changesets between remote and base.
>>> Running: hg diff --hidden -r 2feedb453eac -r 6164fc0ce839 --config 
>>> Running: hg locate -r 2feedb453eac
>>> Running: hg locate -r 6164fc0ce839
>>> Making HTTP GET request to 
>>> Cached response for HTTP GET 
http://myserver/reviewboard/api/validation/diffs/ expired and was modified
>>> Making HTTP POST request to 
>>> Got API Error 207 (HTTP code 400): The file was not found in the 
>>> Error data: {u'stat': u'fail', u'file': u'todo.txt', u'err': {u'msg': 
u'The file was not found in the repository.', u'code': 207}, u'revision': 
Traceback (most recent call last):
  File "/home/sturm/.local/bin/rbt", line 11, in <module>
line 133, in main
    command.run_from_argv([RB_MAIN, command_name] + args)
line 622, in run_from_argv
    exit_code = self.main(*args) or 0
line 754, in main
    (msg_prefix, e))
rbtools.commands.CommandError: Error validating diff

todo.txt: The file was not found in the repository. (HTTP 400, API Error 

And here the output in the reviewboard log:

2015-11-09 14:05:29,711 - DEBUG -  - DiffParser.parse: Beginning parse of 
diff, size = 318
2015-11-09 14:05:29,712 - DEBUG -  - DiffParser.parse: Finished parsing 
2015-11-09 14:05:29,788 - DEBUG -  - Using rbssh for mercurial

Supercharge your Review Board with Power Pack: 
Want us to host Review Board for you? Check out RBCommons: 
Happy user? Let us know! https://www.reviewboard.org/users/
You received this message because you are subscribed to the Google Groups 
"reviewboard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to