Add exceptions.DatabaseOutOfDate instead of just using an error string.
And don't raise SystemExit. Not sure what I was thinking.
This commit is contained in:
		
							parent
							
								
									009c0dc678
								
							
						
					
					
						commit
						8f000543ea
					
				
					 3 changed files with 11 additions and 8 deletions
				
			
		|  | @ -110,11 +110,6 @@ SQL_USER = _sql_dictify(SQL_USER_COLUMNS) | |||
| 
 | ||||
| 
 | ||||
| # Errors and warnings | ||||
| ERROR_DATABASE_OUTOFDATE = ''' | ||||
| Database is out-of-date. {current} should be {new}. | ||||
| Please use utilities\\etiquette_upgrader.py | ||||
| '''.strip() | ||||
| 
 | ||||
| WARNING_MINMAX_INVALID = 'Field "{field}": "{value}" is not a valid request. Ignored.' | ||||
| WARNING_ORDERBY_INVALID = 'Invalid orderby request "{request}". Ignored.' | ||||
| WARNING_ORDERBY_BADCOL = '"{column}" is not a sorting option. Ignored.' | ||||
|  |  | |||
|  | @ -124,6 +124,16 @@ class WrongLogin(EtiquetteException): | |||
| 
 | ||||
| 
 | ||||
| # GENERAL ERRORS | ||||
| OUTOFDATE = ''' | ||||
| Database is out of date. {current} should be {new}. | ||||
| Please use utilities\\etiquette_upgrader.py | ||||
| '''.strip() | ||||
| class DatabaseOutOfDate(EtiquetteException): | ||||
|     ''' | ||||
|     Raised by PhotoDB __init__ if the user's database is behind. | ||||
|     ''' | ||||
|     error_message = OUTOFDATE | ||||
| 
 | ||||
| class FeatureDisabled(EtiquetteException): | ||||
|     ''' | ||||
|     For when features of the system have been disabled by the configuration. | ||||
|  |  | |||
|  | @ -1113,9 +1113,7 @@ class PhotoDB(PDBAlbumMixin, PDBBookmarkMixin, PDBPhotoMixin, PDBTagMixin, PDBUs | |||
|             self.cur.execute('PRAGMA user_version') | ||||
|             existing_version = self.cur.fetchone()[0] | ||||
|             if existing_version != DATABASE_VERSION: | ||||
|                 message = constants.ERROR_DATABASE_OUTOFDATE | ||||
|                 message = message.format(current=existing_version, new=DATABASE_VERSION) | ||||
|                 raise SystemExit(message) | ||||
|                 raise exceptions.DatabaseOutOfDate(current=existing_version, new=DATABASE_VERSION) | ||||
| 
 | ||||
|         statements = DB_INIT.split(';') | ||||
|         for statement in statements: | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue