Fixed #28178 -- Changed contrib.gis to raise ImproperlyConfigured if gdal isn't installed.

This commit is contained in:
Tim Graham 2017-05-08 09:42:06 -04:00
parent a404f75f92
commit c2975910a5
2 changed files with 9 additions and 4 deletions

View File

@ -26,7 +26,7 @@ elif os.name == 'posix':
# *NIX library names. # *NIX library names.
lib_names = ['gdal', 'GDAL', 'gdal2.1.0', 'gdal2.0.0', 'gdal1.11.0', 'gdal1.10.0', 'gdal1.9.0'] lib_names = ['gdal', 'GDAL', 'gdal2.1.0', 'gdal2.0.0', 'gdal1.11.0', 'gdal1.10.0', 'gdal1.9.0']
else: else:
raise GDALException('Unsupported OS "%s"' % os.name) raise ImproperlyConfigured('GDAL is unsupported on OS "%s".' % os.name)
# Using the ctypes `find_library` utility to find the # Using the ctypes `find_library` utility to find the
# path to the GDAL library from the list of library names. # path to the GDAL library from the list of library names.
@ -37,9 +37,10 @@ if lib_names:
break break
if lib_path is None: if lib_path is None:
raise GDALException( raise ImproperlyConfigured(
'Could not find the GDAL library (tried "%s"). Try setting ' 'Could not find the GDAL library (tried "%s"). Is GDAL installed? '
'GDAL_LIBRARY_PATH in your settings.' % '", "'.join(lib_names) 'If it is, try setting GDAL_LIBRARY_PATH in your settings.'
% '", "'.join(lib_names)
) )
# This loads the GDAL/OGR C library # This loads the GDAL/OGR C library

View File

@ -11,3 +11,7 @@ Bugfixes
* Added detection for GDAL 2.1 and 2.0, and removed detection for unsupported * Added detection for GDAL 2.1 and 2.0, and removed detection for unsupported
versions 1.7 and 1.8 (:ticket:`28181`). versions 1.7 and 1.8 (:ticket:`28181`).
* Changed ``contrib.gis`` to raise ``ImproperlyConfigured`` rather than
``GDALException`` if ``gdal`` isn't installed, to allow third-party apps to
catch that exception (:ticket:`28178`).