Re: Intermittent Problem with Diff Viewer

2010-10-28 Thread Rob
See also topic 
http://groups.google.com/group/reviewboard/browse_thread/thread/af0e34298072d5af#

I have seen this problem with every version of ReviewBoard prior to
1.5. I am stuck at 1.0.4 at the moment.

What I did to fix this was modify all the calls in the diffiviewer
code below to use os.system() instead of the Python subprocess module.
Something about the subprocess module does NOT play nicely under
mod_python/Apache.

Now for 1.5, I cannot upgrade because post-review is triggering a call
to the new Paramiko module, which calls into Python's 'platform'
module for the system() call.  It turns out platform.system() ALSO
uses subprocess.Popen instead of os.system().

I'm glad I'm not the only one seeing this. I bet it's a mod_python
bug, Incidentally, mod_python is now a dead project.



On Oct 27, 10:51 am, Dennis dennisfraz...@charter.net wrote:
 Using ReviewBoard 1.5 on Linux with Apache 2.2.15 and mod_python, we
 are getting intermittent but fairly frequent errors when attempting to
 view diffs with Perforce:

 (10, 'No child processes')

 Traceback (most recent call last):
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/views.py, line 153, in view_diff
     interdiffset, highlighting, True)
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 1063, in get_diff_files
     large_data=True)
   File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
 djblets/util/misc.py, line 166, in cache_memoize
     data = lookup_callable()
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 1062, in lambda
     enable_syntax_highlighting)),
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 548, in get_chunks
     old = get_original_file(filediff)
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 364, in get_original_file
     large_data=True)[0]
   File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
 djblets/util/misc.py, line 166, in cache_memoize
     data = lookup_callable()
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 363, in lambda
     data = cache_memoize(key, lambda: [fetch_file(file, revision)],
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/diffviewer/diffutils.py, line 342, in fetch_file
     data = tool.get_file(file, revision)
   File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
 reviewboard/scmtools/perforce.py, line 93, in get_file
     (res, errdata) = p.communicate()
   File /usr/lib/python2.6/subprocess.py, line 689, in communicate
     return self._communicate(input)
   File /usr/lib/python2.6/subprocess.py, line 1233, in _communicate
     self.wait()
   File /usr/lib/python2.6/subprocess.py, line 1157, in wait
     pid, sts = os.waitpid(self.pid, 0)
 OSError: [Errno 10] No child processes

 Often, repeating the attempt 2-3 times will eventually result in
 success.  Any ideas on root cause or a workaround?

 Thanks very much,
 Dennis

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en


Re: Intermittent Problem with Diff Viewer

2010-10-28 Thread Christian Hammond
I'm curious why people hit this problem. We use mod_python on
reviews.reviewboard.org and are aware of its use in lots of large
installations, and this problem hasn't come up more than a couple times.

What version of which distro are you using? By any chance is SELinux
enabled?

Maybe give mod_wsgi a shot?

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com


On Thu, Oct 28, 2010 at 11:39 AM, Rob rrom...@gmail.com wrote:

 See also topic
 http://groups.google.com/group/reviewboard/browse_thread/thread/af0e34298072d5af#

 I have seen this problem with every version of ReviewBoard prior to
 1.5. I am stuck at 1.0.4 at the moment.

 What I did to fix this was modify all the calls in the diffiviewer
 code below to use os.system() instead of the Python subprocess module.
 Something about the subprocess module does NOT play nicely under
 mod_python/Apache.

 Now for 1.5, I cannot upgrade because post-review is triggering a call
 to the new Paramiko module, which calls into Python's 'platform'
 module for the system() call.  It turns out platform.system() ALSO
 uses subprocess.Popen instead of os.system().

 I'm glad I'm not the only one seeing this. I bet it's a mod_python
 bug, Incidentally, mod_python is now a dead project.



 On Oct 27, 10:51 am, Dennis dennisfraz...@charter.net wrote:
  Using ReviewBoard 1.5 on Linux with Apache 2.2.15 and mod_python, we
  are getting intermittent but fairly frequent errors when attempting to
  view diffs with Perforce:
 
  (10, 'No child processes')
 
  Traceback (most recent call last):
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/views.py, line 153, in view_diff
  interdiffset, highlighting, True)
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 1063, in get_diff_files
  large_data=True)
File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
  djblets/util/misc.py, line 166, in cache_memoize
  data = lookup_callable()
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 1062, in lambda
  enable_syntax_highlighting)),
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 548, in get_chunks
  old = get_original_file(filediff)
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 364, in get_original_file
  large_data=True)[0]
File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
  djblets/util/misc.py, line 166, in cache_memoize
  data = lookup_callable()
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 363, in lambda
  data = cache_memoize(key, lambda: [fetch_file(file, revision)],
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/diffviewer/diffutils.py, line 342, in fetch_file
  data = tool.get_file(file, revision)
File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
  reviewboard/scmtools/perforce.py, line 93, in get_file
  (res, errdata) = p.communicate()
File /usr/lib/python2.6/subprocess.py, line 689, in communicate
  return self._communicate(input)
File /usr/lib/python2.6/subprocess.py, line 1233, in _communicate
  self.wait()
File /usr/lib/python2.6/subprocess.py, line 1157, in wait
  pid, sts = os.waitpid(self.pid, 0)
  OSError: [Errno 10] No child processes
 
  Often, repeating the attempt 2-3 times will eventually result in
  success.  Any ideas on root cause or a workaround?
 
  Thanks very much,
  Dennis

 --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en


-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Encoding Error for ReviewBoard 1.5 on Windows XP

2010-10-28 Thread travis
I've just installed the lastest Review Board on my computer today by
following the url ''http://www.reviewboard.org/docs/manual/1.5/admin/
installation/windows/'.

Everything is fine until I got a 500 error while adding a new
repository.

I chose the Custom+SVN, and input all the necessary fields. Here is
the message I got:

--
Something broke! (Error 500)

It appears something broke when you tried to go to here. This is
either a bug in Review Board or a server configuration error. Please
report this to your administrator.
--

And here is the traceback I got from log file:

--

'utf8' codec can't decode bytes in position 17-18: invalid data. You
passed in 'DLL load failed: \xd5\xd2\xb2\xbb\xb5\xbd
\xd6\xb8\xb6\xa8\xb5\xc4\xb3\xcc\xd0\xf2\xa1\xa3' (type 'str')
Traceback (most recent call last):
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\core\handlers\base.py, line 100, in get_response
response = callback(request, *callback_args, **callback_kwargs)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\contrib\admin\sites.py, line 512, in root
return self.model_page(request, *url.split('/', 2))
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\views\decorators\cache.py, line 69, in _wrapped_view_func
response = view_func(request, *args, **kwargs)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\contrib\admin\sites.py, line 531, in model_page
return admin_obj(request, rest_of_url)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\contrib\admin\options.py, line 1190, in __call__
return self.add_view(request)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\utils\decorators.py, line 21, in _wrapper
return decorator(bound_func)(*args, **kwargs)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\utils\decorators.py, line 76, in _wrapped_view
response = view_func(request, *args, **kwargs)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\utils\decorators.py, line 17, in bound_func
return func(self, *args2, **kwargs2)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django\db
\transaction.py, line 299, in _commit_on_success
res = func(*args, **kw)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\contrib\admin\options.py, line 777, in add_view
if form.is_valid():
  File D:\Python25\lib\site-packages\reviewboard-1.5-py2.5.egg
\reviewboard\scmtools\forms.py, line 578, in is_valid
return (super(RepositoryForm, self).is_valid() and
  File D:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\forms\forms.py, line 121, in is_valid
return self.is_bound and not bool(self.errors)
  File D:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\forms\forms.py, line 112, in _get_errors
self.full_clean()
  File D:\Python25\lib\site-packages\reviewboard-1.5-py2.5.egg
\reviewboard\scmtools\forms.py, line 500, in full_clean
return super(RepositoryForm, self).full_clean()
  File D:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\forms\forms.py, line 268, in full_clean
self._clean_form()
  File D:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\forms\forms.py, line 296, in _clean_form
self.cleaned_data = self.clean()
  File D:\Python25\lib\site-packages\reviewboard-1.5-py2.5.egg
\reviewboard\scmtools\forms.py, line 520, in clean
self._verify_repository_path()
  File D:\Python25\lib\site-packages\reviewboard-1.5-py2.5.egg
\reviewboard\scmtools\forms.py, line 684, in _verify_repository_path
raise forms.ValidationError(e)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\core\exceptions.py, line 55, in __init__
message = force_unicode(message)
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\utils\encoding.py, line 96, in force_unicode
errors) for arg in s])
  File d:\python25\lib\site-packages\django-1.2.3-py2.5.egg\django
\utils\encoding.py, line 88, in force_unicode
raise DjangoUnicodeDecodeError(s, *e.args)
DjangoUnicodeDecodeError: 'utf8' codec can't decode bytes in position
17-18: invalid data. You passed in 'DLL load failed: \xd5\xd2\xb2\xbb
\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xb3\xcc\xd0\xf2\xa1\xa3' (type
'str')

--

The hex string of '\xd5\xd2\xb2\xbb\xb5\xbd
\xd6\xb8\xb6\xa8\xb5\xc4\xb3\xcc\xd0\xf2\xa1\xa3' here is Chinese
words which means 'The specified program is not found', but its not
utf-8 encoded.

My environment is Windows XP in Chinese version + RB 1.5 + Python 2.5
+ Apache(Mod_Python) + SVN 1.6.13 + pySVN.

Anyone can help on this?

Thanks,

Travis

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 

Re: post-review

2010-10-28 Thread Chandra Moye
Hey Christian,

I was able to get past the issue.  Now I am running into a problem where
another user is trying to run post-review from his own machine.  I am
running reviewboard locally.   We are using git. He cloned a repository and
made a changed to a branch and pushed his changes to the repo.  When he runs
post-review it errors out on the repos not being set up. So I into the admin
and try to set up the repos, but its failing on the local path to the repos.
What do i use in order for reviewboard to see his local path to his
repository on his local virtual env.

Thanks,
Chandra

On Tue, Oct 26, 2010 at 4:13 PM, Christian Hammond chip...@chipx86.comwrote:

 Can you run with --debug and past the output?

 Christian

 --
 Christian Hammond - chip...@chipx86.com
 Review Board - http://www.reviewboard.org
 VMware, Inc. - http://www.vmware.com



 On Tue, Oct 26, 2010 at 7:40 AM, channiemo clmoy...@gmail.com wrote:

 Just installed review board. When I run post-review I get the
 following error:

 xception RuntimeError: 'maximum recursion depth exceeded in
 __subclasscheck__' in type 'exceptions.RuntimeError' ignored
 Traceback (most recent call last):
  File /usr/local/bin/post-review, line 9, in module
load_entry_point('RBTools==0.2.1alpha0.dev', 'console_scripts',
 'post-review')()
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 3043, in main
server.login()
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 349, in login
'password': password,
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 663, in api_post
return self.process_json(self.http_post(path, fields, files))
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 643, in http_post
data = urllib2.urlopen(r).read()
  File /usr/lib/python2.6/urllib2.py, line 126, in urlopen
return _opener.open(url, data, timeout)
  File /usr/lib/python2.6/urllib2.py, line 397, in open
response = meth(req, response)
  File /usr/lib/python2.6/urllib2.py, line 510, in http_response
'http', request, response, code, msg, hdrs)
  File /usr/lib/python2.6/urllib2.py, line 429, in error
result = self._call_chain(*args)
  File /usr/lib/python2.6/urllib2.py, line 369, in _call_chain
result = func(*args)
  File /usr/lib/python2.6/urllib2.py, line 855, in http_error_401
url, req, headers)
  File /usr/lib/python2.6/urllib2.py, line 833, in
 http_error_auth_reqed
return self.retry_http_basic_auth(host, req, realm)
  File /usr/lib/python2.6/urllib2.py, line 843, in
 retry_http_basic_auth
return self.parent.open(req, timeout=req.timeout)
  File /usr/lib/python2.6/urllib2.py, line 397, in open
response = meth(req, response)
  File /usr/lib/python2.6/urllib2.py, line 510, in http_response
'http', request, response, code, msg, hdrs)
  File /usr/lib/python2.6/urllib2.py, line 429, in error
result = self._call_chain(*args)
  File /usr/lib/python2.6/urllib2.py, line 369, in _call_chain
result = func(*args)
 
 at the very bottom
  File /usr/lib/python2.6/socket.py, line 504, in create_connection
sock = socket(af, socktype, proto)
 RuntimeError: maximum recursion depth exceeded


 I've researched but nothing seems to be jumping out at me. Any help
 would be greatly appreciated.

 --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en


  --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en


-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: post-review

2010-10-28 Thread Christian Hammond
Review Board requires a single server that is set up on all machines as
origin that it has access to. If using a local Git repository, then every
system needs to be able to access that git repository as origin with the
exact same path, and the repository must always be up-to-date.

The recommended way of using Git with Review Board is to have a central
install somewhere that all machines push to, and to use cgit/gitweb/etc on
that machine so that Review Board can access that in order to download the
files needed.

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com


On Thu, Oct 28, 2010 at 9:09 AM, Chandra Moye clmoy...@gmail.com wrote:

 Hey Christian,

 I was able to get past the issue.  Now I am running into a problem where
 another user is trying to run post-review from his own machine.  I am
 running reviewboard locally.   We are using git. He cloned a repository and
 made a changed to a branch and pushed his changes to the repo.  When he runs
 post-review it errors out on the repos not being set up. So I into the admin
 and try to set up the repos, but its failing on the local path to the repos.
 What do i use in order for reviewboard to see his local path to his
 repository on his local virtual env.

 Thanks,
 Chandra

 On Tue, Oct 26, 2010 at 4:13 PM, Christian Hammond chip...@chipx86.comwrote:

 Can you run with --debug and past the output?

 Christian

 --
 Christian Hammond - chip...@chipx86.com
 Review Board - http://www.reviewboard.org
 VMware, Inc. - http://www.vmware.com



 On Tue, Oct 26, 2010 at 7:40 AM, channiemo clmoy...@gmail.com wrote:

 Just installed review board. When I run post-review I get the
 following error:

 xception RuntimeError: 'maximum recursion depth exceeded in
 __subclasscheck__' in type 'exceptions.RuntimeError' ignored
 Traceback (most recent call last):
  File /usr/local/bin/post-review, line 9, in module
load_entry_point('RBTools==0.2.1alpha0.dev', 'console_scripts',
 'post-review')()
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 3043, in main
server.login()
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 349, in login
'password': password,
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 663, in api_post
return self.process_json(self.http_post(path, fields, files))
  File /usr/local/lib/python2.6/dist-packages/RBTools-0.2.1alpha0.dev-
 py2.6.egg/rbtools/postreview.py, line 643, in http_post
data = urllib2.urlopen(r).read()
  File /usr/lib/python2.6/urllib2.py, line 126, in urlopen
return _opener.open(url, data, timeout)
  File /usr/lib/python2.6/urllib2.py, line 397, in open
response = meth(req, response)
  File /usr/lib/python2.6/urllib2.py, line 510, in http_response
'http', request, response, code, msg, hdrs)
  File /usr/lib/python2.6/urllib2.py, line 429, in error
result = self._call_chain(*args)
  File /usr/lib/python2.6/urllib2.py, line 369, in _call_chain
result = func(*args)
  File /usr/lib/python2.6/urllib2.py, line 855, in http_error_401
url, req, headers)
  File /usr/lib/python2.6/urllib2.py, line 833, in
 http_error_auth_reqed
return self.retry_http_basic_auth(host, req, realm)
  File /usr/lib/python2.6/urllib2.py, line 843, in
 retry_http_basic_auth
return self.parent.open(req, timeout=req.timeout)
  File /usr/lib/python2.6/urllib2.py, line 397, in open
response = meth(req, response)
  File /usr/lib/python2.6/urllib2.py, line 510, in http_response
'http', request, response, code, msg, hdrs)
  File /usr/lib/python2.6/urllib2.py, line 429, in error
result = self._call_chain(*args)
  File /usr/lib/python2.6/urllib2.py, line 369, in _call_chain
result = func(*args)
 
 at the very bottom
  File /usr/lib/python2.6/socket.py, line 504, in create_connection
sock = socket(af, socktype, proto)
 RuntimeError: maximum recursion depth exceeded


 I've researched but nothing seems to be jumping out at me. Any help
 would be greatly appreciated.

 --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en


  --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more 

Re: Three questions for using Review Board 1.0.6

2010-10-28 Thread J Arrizza
Andrew,

I am still new to RB, and we are looking for something similar as well. We
have an SCR in our defect tracking system that aggregates all work for
change. Developers create a series of changesets and then tag each of those
with the SCR. When it's time to do a code review, we'd like to have one code
review for the entire SCR. So if I'm not mistaken, we are looking for the
same thing you are (review request being for a series of changesets).

Here are my thoughts (FWIW) on this:

There needs to be a way add multiple changeset ids or revision numbers or
whatever on the command line. Currently we handle it through a manual
process:

   use hg log to a list of changesets
   make a list of the changeset revision ids for the SCR, say (88, 89
and 93)
   starting with the oldest revision (88), create the review using hg
postreview 88 (the mercurial-postreview allows this, don't know if the
others do)
   say the new review is id 33
   add the remaining revisions one by one from oldest to newest:
 postreview -e 33  89
 postreview -e 33  93

   when you go into RB GUI, the three changesets show up as three
revisions 1, 2, and 3 where 1-revision88, 2-revision89 and 3-revision93.

Cons:
   - manual steps are error prone
   - if you screw up and add a revision you shouldn't have, not possible to
remove that from the review
   - if you screw up and forget to add a revision, not possible to insert
that into the existing review
   - the multiple revisions in the code review are confusing to the
reviewers.
   - During a review, it's not possible to tell if a problem in the code in
revision x is actually fixed later on in revision y.

So, in short, the extensions I'd like to see are:

  - the manual part of the review request automated. Perhaps it's as simple
as allowing multiple changesets to be put on the command line. Or it may
have to get more  complicated (e.g. list the revisions for the developer
through some gui and allow them to select the ones they want from that list)

  - have a rollup mechanism. As the additional revisions are added, the
changes are rolled up into one aggregate diff. (I assume this would be very
complicated code and so might not be doable without significant risk)

I'm not sure if there are other options available...

John




On Tue, Oct 26, 2010 at 7:25 PM, Andrew Schwartz aschwa...@gmail.comwrote:

 I think that what I'm talking about is the same thing that Eduardo called
 Remodelling diff versioning.  Does that seem right to you?




 On Tue, Oct 26, 2010 at 7:17 PM, Andrew Schwartz aschwa...@gmail.comwrote:

 Christian,

 Sorry for letting this thread slide for so long.

 I'm talking about a review request being for a series of changesets.  In
 our case, we often will split a single feature change into small, easily
 reviewed changesets.  It would be nice to be able to put all of these
 changesets into a single review request.

 Does that make sense?





-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: Three questions for using Review Board 1.0.6

2010-10-28 Thread Andrew Schwartz
On Thu, Oct 28, 2010 at 12:28 PM, J Arrizza cppge...@gmail.com wrote:

 Andrew,

 I am still new to RB, and we are looking for something similar as well. We
 have an SCR in our defect tracking system that aggregates all work for
 change. Developers create a series of changesets and then tag each of those
 with the SCR. When it's time to do a code review, we'd like to have one code
 review for the entire SCR. So if I'm not mistaken, we are looking for the
 same thing you are (review request being for a series of changesets).

 Here are my thoughts (FWIW) on this:

 There needs to be a way add multiple changeset ids or revision numbers or
 whatever on the command line. Currently we handle it through a manual
 process:

use hg log to a list of changesets
make a list of the changeset revision ids for the SCR, say (88, 89
 and 93)
starting with the oldest revision (88), create the review using hg
 postreview 88 (the mercurial-postreview allows this, don't know if the
 others do)
say the new review is id 33
add the remaining revisions one by one from oldest to newest:
  postreview -e 33  89
  postreview -e 33  93

when you go into RB GUI, the three changesets show up as three
 revisions 1, 2, and 3 where 1-revision88, 2-revision89 and 3-revision93.

 Cons:
- manual steps are error prone
- if you screw up and add a revision you shouldn't have, not possible to
 remove that from the review
- if you screw up and forget to add a revision, not possible to insert
 that into the existing review
- the multiple revisions in the code review are confusing to the
 reviewers.
- During a review, it's not possible to tell if a problem in the code in
 revision x is actually fixed later on in revision y.


Also, as far as I can tell, the spirit of multiple revisions in
ReviewBoard is that each changeset replaces the previous changeset and may
be a response to a previous changeset.  It would be nice to be able to post
5 changesets that are logically one review request, have them get reviewed,
then post 5 new changesets that replace the original 5 changesets and
address issues found in review.  The GUI would allow the user to diff
between the original changeset 2 and the new changeset 2, for instance.




 So, in short, the extensions I'd like to see are:

   - the manual part of the review request automated. Perhaps it's as simple
 as allowing multiple changesets to be put on the command line. Or it may
 have to get more  complicated (e.g. list the revisions for the developer
 through some gui and allow them to select the ones they want from that list)


We use hg postreview as well.  I'm fairly certain that the automation
you're mentioning would be straightforward to implement, as the codebase for
the postreview plugin to mercurial is relatively small and self-contained.
 You could suggest it to Gilles Moris at code.google.com/p/*mercurial*-*
reviewboard*/ or to mdelagra at
http://bitbucket.org/mdelagra/mercurial-reviewboard/ to see if either of
them would be interested in the feature.

We are currently only using reviewboard for single-changeset review
requests, so we don't have a high need for this feature.



   - have a rollup mechanism. As the additional revisions are added, the
 changes are rolled up into one aggregate diff. (I assume this would be very
 complicated code and so might not be doable without significant risk)


What do you mean?



 I'm not sure if there are other options available...

 John




 On Tue, Oct 26, 2010 at 7:25 PM, Andrew Schwartz aschwa...@gmail.comwrote:

 I think that what I'm talking about is the same thing that Eduardo called
 Remodelling diff versioning.  Does that seem right to you?




 On Tue, Oct 26, 2010 at 7:17 PM, Andrew Schwartz aschwa...@gmail.comwrote:

 Christian,

 Sorry for letting this thread slide for so long.

 I'm talking about a review request being for a series of changesets.  In
 our case, we often will split a single feature change into small, easily
 reviewed changesets.  It would be nice to be able to put all of these
 changesets into a single review request.

 Does that make sense?



  --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en


-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 

Re: Off-line Usage.

2010-10-28 Thread Andrew Schwartz
Just wanted to express some support for this feature.  Would be fairly nice.
 Perhaps some of the new HTML5 Offline features could be used.


On Dec 23 2008, 2:18 am, Christian Hammond chip...@chipx86.com wrote:
 Hi Blake.

 I'd like to someday add support for Google Gears for offline support, but
 this would be after we add Extensions support to Review Board. So,
certainly
 not right away. There's a lot that would have to be taken into
consideration
 and we just really have too much on our plates for this right now. If
you'd
 like to file a feature request, it'll help us to keep it in mind in the
 future, and if someone wants to take on this work, I'd be for that.

 Christian

 --
 Christian Hammond - chip...@chipx86.com
 VMware, Inc.



 On Fri, Dec 19, 2008 at 1:20 PM, Blake Winton bwin...@latte.ca wrote:

  Hi,

  I think I'm probably going to start using Review Board in the coming
  months, and I've got a question.

  One of my developers isn't able to connect to the Internet full time.
  (She's on the wrong side of a PPP link.)  Is there any sort of
  offline/batch tool she could use to interact with Review Board without
  having to be online all the time?

  Thanks,
  Blake.- Hide quoted text -

 - Show quoted text -

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: Off-line Usage.

2010-10-28 Thread Christian Hammond
I have a branch in my github dedicated to this, but it's been a while since
I changed it. Basically, some of the functionality we need for HTML5 Offline
isn't available in any browsers today, and last I checked is still just a
proposal.

To get technical, what we need is to be able to manually add files to an
offline cache. Today, browsers only support downloading a manifest file
that tells them what to get, but that's too static for our needs. The
expectation is that webapps are single-page apps, either very simple ones or
ones generating UI dynamically based on some backing store (which you *can*
cache, since there's essentially a database you can stuff data into for
offline use). Until we can say Grab this page, and this file, and this one
dynamically, we can't do HTML5 Offline.

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com


On Thu, Oct 28, 2010 at 12:53 PM, Andrew Schwartz aschwa...@gmail.comwrote:

 Just wanted to express some support for this feature.  Would be fairly
 nice.  Perhaps some of the new HTML5 Offline features could be used.


 On Dec 23 2008, 2:18 am, Christian Hammond chip...@chipx86.com wrote:
  Hi Blake.
 
  I'd like to someday add support for Google Gears for offline support, but
  this would be after we add Extensions support to Review Board. So,
 certainly
  not right away. There's a lot that would have to be taken into
 consideration
  and we just really have too much on our plates for this right now. If
 you'd
  like to file a feature request, it'll help us to keep it in mind in the
  future, and if someone wants to take on this work, I'd be for that.
 
  Christian
 
  --
  Christian Hammond - chip...@chipx86.com
  VMware, Inc.
 
 
 
  On Fri, Dec 19, 2008 at 1:20 PM, Blake Winton bwin...@latte.ca wrote:
 
   Hi,
 
   I think I'm probably going to start using Review Board in the coming
   months, and I've got a question.
 
   One of my developers isn't able to connect to the Internet full time.
   (She's on the wrong side of a PPP link.)  Is there any sort of
   offline/batch tool she could use to interact with Review Board without
   having to be online all the time?
 
   Thanks,
   Blake.- Hide quoted text -
 
  - Show quoted text -

 --
 Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
 Happy user? Let us know at http://www.reviewboard.org/users/
 -~--~~~~--~~--~--~---
 To unsubscribe from this group, send email to
 reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

ReviewBoard git support

2010-10-28 Thread Aleix Pol
Hi ReviewBoardians!
I'm a KDE developer and we're being moved from svn to git. In KDevelop we
where using gitorious, there's a feature called merge request where a branch
is given and it is compared to its parent which is pretty cool because
you're not forced to create a plain patch (without all the history).

I guess it should be quite easy to add that into ReviewBoard by processing
the output of a git call instead of a patch file, do you think it would be
feasable?

Thanks!
Aleix

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: Intermittent Problem with Diff Viewer

2010-10-28 Thread Dennis
Thanks to both for the replies.  We're using Slackware 13.1, 32-bit.

uname -a output:

Linux svrname 2.6.33.4-smp #2 SMP Wed May 12 22:47:36 CDT 2010 i686
AMD Phenom(tm) 9950 Quad-Core Processor AuthenticAMD GNU/Linux
r...@qeweb1:/usr/lib/python2.6#

How do we check for SELinux?

What is required to try mod_wsgi?

Thanks,
Dennis




On Oct 28, 3:01 pm, Christian Hammond chip...@chipx86.com wrote:
 I'm curious why people hit this problem. We use mod_python on
 reviews.reviewboard.org and are aware of its use in lots of large
 installations, and this problem hasn't come up more than a couple times.

 What version of which distro are you using? By any chance is SELinux
 enabled?

 Maybe give mod_wsgi a shot?

 Christian

 --
 Christian Hammond - chip...@chipx86.com
 Review Board -http://www.reviewboard.org
 VMware, Inc. -http://www.vmware.com



 On Thu, Oct 28, 2010 at 11:39 AM, Rob rrom...@gmail.com wrote:
  See also topic
 http://groups.google.com/group/reviewboard/browse_thread/thread/af0e3...

  I have seen this problem with every version of ReviewBoard prior to
  1.5. I am stuck at 1.0.4 at the moment.

  What I did to fix this was modify all the calls in the diffiviewer
  code below to use os.system() instead of the Python subprocess module.
  Something about the subprocess module does NOT play nicely under
  mod_python/Apache.

  Now for 1.5, I cannot upgrade because post-review is triggering a call
  to the new Paramiko module, which calls into Python's 'platform'
  module for the system() call.  It turns out platform.system() ALSO
  uses subprocess.Popen instead of os.system().

  I'm glad I'm not the only one seeing this. I bet it's a mod_python
  bug, Incidentally, mod_python is now a dead project.

  On Oct 27, 10:51 am, Dennis dennisfraz...@charter.net wrote:
   Using ReviewBoard 1.5 on Linux with Apache 2.2.15 and mod_python, we
   are getting intermittent but fairly frequent errors when attempting to
   view diffs with Perforce:

   (10, 'No child processes')

   Traceback (most recent call last):
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/views.py, line 153, in view_diff
       interdiffset, highlighting, True)
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 1063, in get_diff_files
       large_data=True)
     File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
   djblets/util/misc.py, line 166, in cache_memoize
       data = lookup_callable()
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 1062, in lambda
       enable_syntax_highlighting)),
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 548, in get_chunks
       old = get_original_file(filediff)
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 364, in get_original_file
       large_data=True)[0]
     File /usr/lib/python2.6/site-packages/Djblets-0.6.4-py2.6.egg/
   djblets/util/misc.py, line 166, in cache_memoize
       data = lookup_callable()
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 363, in lambda
       data = cache_memoize(key, lambda: [fetch_file(file, revision)],
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/diffviewer/diffutils.py, line 342, in fetch_file
       data = tool.get_file(file, revision)
     File /usr/lib/python2.6/site-packages/ReviewBoard-1.5-py2.6.egg/
   reviewboard/scmtools/perforce.py, line 93, in get_file
       (res, errdata) = p.communicate()
     File /usr/lib/python2.6/subprocess.py, line 689, in communicate
       return self._communicate(input)
     File /usr/lib/python2.6/subprocess.py, line 1233, in _communicate
       self.wait()
     File /usr/lib/python2.6/subprocess.py, line 1157, in wait
       pid, sts = os.waitpid(self.pid, 0)
   OSError: [Errno 10] No child processes

   Often, repeating the attempt 2-3 times will eventually result in
   success.  Any ideas on root cause or a workaround?

   Thanks very much,
   Dennis

  --
  Want to help the Review Board project? Donate today at
 http://www.reviewboard.org/donate/
  Happy user? Let us know athttp://www.reviewboard.org/users/
  -~--~~~~--~~--~--~---
  To unsubscribe from this group, send email to
  reviewboard+unsubscr...@googlegroups.comreviewboard%2bunsubscr...@googlegr­oups.com
  For more options, visit this group at
 http://groups.google.com/group/reviewboard?hl=en- Hide quoted text -

 - Show quoted text -

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 

Re: ReviewBoard git support

2010-10-28 Thread Stephen Gallagher


On Oct 28, 5:59 pm, Aleix Pol aleix...@kde.org wrote:
 Hi ReviewBoardians!
 I'm a KDE developer and we're being moved from svn to git. In KDevelop we
 where using gitorious, there's a feature called merge request where a branch
 is given and it is compared to its parent which is pretty cool because
 you're not forced to create a plain patch (without all the history).

 I guess it should be quite easy to add that into ReviewBoard by processing
 the output of a git call instead of a patch file, do you think it would be
 feasable?


Check out RBtools' post-review.

http://www.reviewboard.org/docs/releasenotes/dev/rbtools/0.2/

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en


Re: Three questions for using Review Board 1.0.6

2010-10-28 Thread J Arrizza
On Thu, Oct 28, 2010 at 12:46 PM, Andrew Schwartz aschwa...@gmail.comwrote:

   - have a rollup mechanism. As the additional revisions are added, the
 changes are rolled up into one aggregate diff. (I assume this would be very
 complicated code and so might not be doable without significant risk)

 What do you mean?




Say there are 2 diffs/revisions in the CR. The diff is then between v1 and
v2. Comments are applied to lines in v2. So far so good.

A new version v3 is added to the CR. The diff is then rolled forward so it
now shows the diffs between v1 and v3. The comments applied to lines in v2
are moved to the correct lines in the version 3 text. (And there is no more
v2 anymore, there's one and only one diff).

A new version v4 is added to the CR and the diff is rolled forward again to
show the difference between v1 and v4; comments in v2 and v3 rolled forward
too; v3 is removed.

And so on...

Another way to look at it is it's a left-anchored diff. The left-hand side
of the diff never changes, only the right hand side does.

Like I said, the algorithm likely has many edge conditions and exceptions
and so is likely to be very complicated code.


John

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: Issue 1870 in reviewboard: base path does not work with svn-hook-postcommit-review

2010-10-28 Thread reviewboard


Comment #2 on issue 1870 by Xomenn: base path does not work with  
svn-hook-postcommit-review

http://code.google.com/p/reviewboard/issues/detail?id=1870

Submitted http://reviews.reviewboard.org/r/1875

--
You received this message because you are subscribed to the Google Groups 
reviewboard-issues group.
To post to this group, send email to reviewboard-iss...@googlegroups.com.
To unsubscribe from this group, send email to 
reviewboard-issues+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/reviewboard-issues?hl=en.



Issue 1871 in reviewboard: No. of reviewers reviwed the code

2010-10-28 Thread reviewboard

Status: New
Owner: 
Labels: Type-Enhancement Priority-Medium

New issue 1871 by katakam.g: No. of reviewers reviwed the code
http://code.google.com/p/reviewboard/issues/detail?id=1871

*NOTE: If you have a patch, please submit it to
http://reviews.reviewboard.org/


What version are you running?
Beta

What's the URL of the page this enhancement relates to, if any?


Describe the enhancement and the motivation for it.


What operating system are you using? What browser?
WinXP


Please provide any additional information below.
As of now users are reviewing the code and if they don't have any comments  
to say them they have to do ship it. But It would be better how many people  
have reviewed the code.



--
You received this message because you are subscribed to the Google Groups 
reviewboard-issues group.
To post to this group, send email to reviewboard-iss...@googlegroups.com.
To unsubscribe from this group, send email to 
reviewboard-issues+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/reviewboard-issues?hl=en.