I am evaluating ReviewBoard and considering it for purchase. To do so, I
ran a brand-new instance of the Demo Virtual Machine (running ReviewBoard
2.5.10) posted
at https://bitnami.com/stack/reviewboard-plus-powerpack/virtual-machine.
The only thing I did after starting up this VM is to install Mercurial
(apt-get install mercurial) and add a locally-stored clone of the
repository there and add the repository via the Admin page.
When I attempt to create a Review Request, and specify one of the
changesets that appears on the web page (under "Create from an existing
commit on: default"), the resulting Review Request does not have anything
auto-filled into the description from the changeset.
I found the following in the reviewboard.log file:
2017-07-13 12:29:32,300 - ERROR - - Unable to update new review request
from commit ID 7e3d96823f78e36f65d49ff9243d91cedc4ec8f8: The file '/foo.py'
(r7b4e8afe08b4) could not be found in the repository:
7b4e8afe08b4886a21cb637ff2be6629bc82a4c7
Traceback (most recent call last):
File
"/opt/bitnami/apps/reviewboardpowerpack/htdocs/reviewboard/reviews/managers.py",
line 157, in create
draft.update_from_commit_id(commit_id)
File
"/opt/bitnami/apps/reviewboardpowerpack/htdocs/reviewboard/reviews/models/review_request_draft.py",
line 278, in update_from_commit_id
self.update_from_committed_change(commit_id)
File
"/opt/bitnami/apps/reviewboardpowerpack/htdocs/reviewboard/reviews/models/review_request_draft.py",
line 352, in update_from_committed_change
base_commit_id=commit.parent)
File
"/opt/bitnami/apps/reviewboardpowerpack/htdocs/reviewboard/diffviewer/managers.py",
line 457, in create_from_data
check_existence=(not parent_diff_file_contents)))
File
"/opt/bitnami/apps/reviewboardpowerpack/htdocs/reviewboard/diffviewer/managers.py",
line 604, in _process_files
base_commit_id)
FileNotFoundError: The file '/foo.py' (r7b4e8afe08b4) could not be found in
the repository: 7b4e8afe08b4886a21cb637ff2be6629bc82a4c7
I debugged it, and found that repository.get_file_exists returns False, due
to a failure in the construction of the mercurial command line.
Specifically, diffviewer/managers.py at line 630 takes the file name
listed in the changeset (e.g. 'foo.py'), and calls self._normalize_filename
with a 'basedir' value of '/' (a hard-coded value set by an earlier routine
on the call stack), resulting in the filename '/foo.py'.
This results in the command being invoked as: hg cat --rev <number> /foo.py
If you type this command manually at a prompt, Mercurial (correctly)
returns the message "abort: /foo.py not under root <repo>".
This error message is correct because there should NOT be a leading slash
at the front of a file name (at least not when using Mercurial).
This ReviewBoard bug renders support in a local Mercurial repository to be
non-functional.
Has this problem been fixed in a later version? If so, can the
demonstration Virtual Machine be updated to the later version that contains
this fix?
If not yet fixed, can this problem be fixed, so that I might consider
buying this product?
--
Supercharge your Review Board with Power Pack:
https://www.reviewboard.org/powerpack/
Want us to host Review Board for you? Check out RBCommons:
https://rbcommons.com/
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 [email protected].
For more options, visit https://groups.google.com/d/optout.