pkg_resources.ContextualVersionConflict: (Django 1.6.11 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('Django>=2.2'), set(['django-braces']))

52 views
Skip to first unread message

胡一辉

unread,
Aug 23, 2022, 1:45:01 AM8/23/22
to Review Board Community
HI:
  I have a upgrade issue in my reviewboard server.
it's a machine with os Ubuntu 20.04
python 2.7.18
reviewboard 3.0.11
from the reviewboard 3.0 release notes, Review Board 3.0 requires Python 2.7.
so I don't install python3.8.
but it seems that django 2.2 is required? 
how to resolve it ? 
Thanks a lot

$ sudo easy_install -U ReviewBoard==3.0.11
WARNING: The easy_install command is deprecated and will be removed in a future version.
Searching for ReviewBoard==3.0.11
Reading https://pypi.org/simple/ReviewBoard/
Downloading https://files.pythonhosted.org/packages/94/f6/2caa1ec95b1199eb6c46842d6f10168fdd220bab373ea7ce384d10245a99/ReviewBoard-3.0.11-py2-none-any.whl#sha256=df08e5d715c90fc3d7e35aa05f0c632c4b0554d3c2c54f91a2d496e066f08cdf
Best match: ReviewBoard 3.0.11
Processing ReviewBoard-3.0.11-py2-none-any.whl
Installing ReviewBoard-3.0.11-py2-none-any.whl to /usr/local/lib/python2.7/dist-packages
Adding ReviewBoard 3.0.11 to easy-install.pth file
Installing rbext script to /usr/local/bin
Installing rbssh script to /usr/local/bin
Installing rb-site script to /usr/local/bin

Installed /usr/local/lib/python2.7/dist-packages/ReviewBoard-3.0.11-py2.7.egg
Processing dependencies for ReviewBoard==3.0.11
error: Django 1.6.11 is installed but Django>=2.2 is required by set(['django-braces'])
rvadm@zeshreviewqa01:~$ sudo rb-site upgrade /var/www/reviewboard/
[sudo] password for yihui.hu:
Traceback (most recent call last):
  File "/usr/local/bin/rb-site", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3251, in <module>
    @_call_aside
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3235, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 3264, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (Django 1.6.11 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('Django>=2.2'), set(['django-braces']))

胡一辉

unread,
Aug 23, 2022, 1:55:19 AM8/23/22
to Review Board Community
log in apache2:

[Tue Aug 23 13:54:10.012721 2022] [wsgi:error] [pid 1069:tid 140068194866944] [client 10.29.69.72:60196]     from . import py31compat
[Tue Aug 23 13:54:10.012753 2022] [wsgi:error] [pid 1069:tid 140068194866944] [client 10.29.69.72:60196] ImportError: cannot import name py31compat
[Tue Aug 23 13:54:21.221260 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155] mod_wsgi (pid=1070): Failed to exec Python script file '/var/www/reviewboard/htdocs/reviewboard.wsgi'., referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221326 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155] mod_wsgi (pid=1070): Exception occurred processing WSGI script '/var/www/reviewboard/htdocs/reviewboard.wsgi'., referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221361 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155] Traceback (most recent call last):, referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221398 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155]   File "/var/www/reviewboard/htdocs/reviewboard.wsgi", line 3, in <module>, referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221455 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155]     import pkg_resources, referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221473 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155]   File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 79, in <module>, referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221502 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155]     from . import py31compat, referer: http://10.29.55.141/
[Tue Aug 23 13:54:21.221536 2022] [wsgi:error] [pid 1070:tid 140068721714944] [client 10.29.69.72:56155] ImportError: cannot import name py31compat, referer: http://10.29.55.141/

David Trowbridge

unread,
Aug 23, 2022, 4:02:34 PM8/23/22
to revie...@googlegroups.com
The issue is that a newer release of django-braces dropped support for Python 2, and 3.0.11 was not specific about pinning the version needed. You can manually install django-braces==1.13.0, but I wouldn't be surprised if that just moves the error down to another package. 3.0.11 is quite old and will be very susceptible to these kinds of breakages, because we weren't prescient about when dependencies might change.

I highly recommend installing at least the latest 3.0 version (3.0.24), and if possible, upgrade to the latest 4.0.x release.

David

--
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 "Review Board Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to reviewboard...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/reviewboard/392342b2-9e16-45cb-b631-edb90f8941ffn%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages