2387: Review Board upgrades break on Django 1.1.4
- WontFix
- Review Board
ste****@gallaghe********* (Google Code) (Is this you? Claim this profile.) | |
|
|
March 18, 2012 |
What version are you running? Review Board 1.5.7 What's the URL of the page containing the problem? /usr/lib/python2.4/site-packages/reviewboard/changedescs/evolutions/__init__.py What steps will reproduce the problem? 1. Attempt to upgrade from 1.5.6 to 1.5.7 on an installation using Django 1.1.4 (example: Red Hat Enterprise Linux 5.7) 2. Evolutions fail with an error: Settings has no member 'DATABASES' What is the expected output? What do you see instead? Evolutions fail with an error: Settings has no member 'DATABASES' reviewboard/changedescs/evolutions/__init__.py is not compatible with Django 1.1.x, only with 1.2.x and later. This should be easy to detect (check for the existence of Settings.DATABASE_ENGINE). What operating system are you using? What browser? Red Hat Enterprise Linux 5.7 Please provide any additional information below. I was able to get the upgrade to work on my deployment because we use Postgres (so I just commented out this mysql-specific code). Others will not be so lucky.
Nothing was introduced in 1.5.7 that would break this. This change was made in 1.5.6. Still, we could fix this. It's the first report I've had of it, though.
-
+ Confirmed -
+ Milestone-Release1.5.x -
+ chipx86
I wasn't the one who performed the 1.5.5->1.5.6 upgrade. My colleague did it (I think I remember him mentioning he hit a bug then but worked around it). So I'm guessing it was probably this same issue.
Given that we've only had one report, and that 1.5.x isn't the latest stable release, I'm going to say that this probably isn't worth it. If more people run into this, we might reconsider.
-
- Confirmed + WontFix
I know this is an issue in the packaged copies. Those are really the only things out there that are going to hit this (nobody manually installs 1.5.x with Python packages, and they'd get a newer Django anyway). I'd recommend patching that file manually if you plan to do any revisions on it. Given the hard-coded Django requirement, you can have the code access settings.DATABASE instead of settings.DATABASES['default'].
Since Django evolution isn't needed for fresh install, here's a workaround for use with "rb-site install". CentOS 5 i386, ReviewBoard-1.5.7-1.el5 (From EPEL repo). Edit: /usr/lib/python2.4/site-packages/reviewboard/changedescs/evolutions/__init__.py Comment out last two lines (add # to start of line). #if settings.DATABASES['default']['ENGINE'].endswith('mysql'): # SEQUENCE.append('fields_changed_longtext')