diff --git a/HISTORY.rst b/HISTORY.rst index 930daa436a..417fad9af6 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -45,6 +45,9 @@ Unreleased Changes * SDR * RKLS, USLE, avoided erosion, and avoided export rasters will now have nodata in streams (`#1415 `_) +* Wind Energy + * Fixed a bug where model would error when the grid points path was empty + (`#1417 `_) 3.14.0 (2023-09-08) ------------------- diff --git a/src/natcap/invest/wind_energy.py b/src/natcap/invest/wind_energy.py index f203475e63..cc5b7d5c22 100644 --- a/src/natcap/invest/wind_energy.py +++ b/src/natcap/invest/wind_energy.py @@ -1127,7 +1127,7 @@ def execute(args): LOGGER.info('Valuation Not Selected. Model completed') return - if 'grid_points_path' in args: + if 'grid_points_path' in args and args['grid_points_path']: # Handle Grid Points LOGGER.info('Grid Points Provided. Reading in the grid points') diff --git a/workbench/src/renderer/components/SetupTab/ArgInput/index.jsx b/workbench/src/renderer/components/SetupTab/ArgInput/index.jsx index e190419096..feb505848d 100644 --- a/workbench/src/renderer/components/SetupTab/ArgInput/index.jsx +++ b/workbench/src/renderer/components/SetupTab/ArgInput/index.jsx @@ -319,7 +319,8 @@ ArgInput.propTypes = { units: PropTypes.string, // for numbers only }).isRequired, userguide: PropTypes.string.isRequired, - value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]), + value: PropTypes.oneOfType( + [PropTypes.string, PropTypes.bool, PropTypes.number]), touched: PropTypes.bool, isValid: PropTypes.bool, validationMessage: PropTypes.string, diff --git a/workbench/src/renderer/components/SetupTab/ArgsForm/index.jsx b/workbench/src/renderer/components/SetupTab/ArgsForm/index.jsx index 03508c8e12..6ec24e3294 100644 --- a/workbench/src/renderer/components/SetupTab/ArgsForm/index.jsx +++ b/workbench/src/renderer/components/SetupTab/ArgsForm/index.jsx @@ -179,7 +179,8 @@ class ArgsForm extends React.Component { ArgsForm.propTypes = { argsValues: PropTypes.objectOf( PropTypes.shape({ - value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]), + value: PropTypes.oneOfType( + [PropTypes.string, PropTypes.bool, PropTypes.number]), touched: PropTypes.bool, }) ).isRequired, diff --git a/workbench/src/renderer/components/SetupTab/index.jsx b/workbench/src/renderer/components/SetupTab/index.jsx index c96dc6dd0b..0485d0ed71 100644 --- a/workbench/src/renderer/components/SetupTab/index.jsx +++ b/workbench/src/renderer/components/SetupTab/index.jsx @@ -591,7 +591,8 @@ SetupTab.propTypes = { enabledFunctions: PropTypes.objectOf(PropTypes.func), dropdownFunctions: PropTypes.objectOf(PropTypes.func), }).isRequired, - argsInitValues: PropTypes.objectOf(PropTypes.oneOfType([PropTypes.string, PropTypes.bool])), + argsInitValues: PropTypes.objectOf(PropTypes.oneOfType( + [PropTypes.string, PropTypes.bool, PropTypes.number])), investExecute: PropTypes.func.isRequired, sidebarSetupElementId: PropTypes.string.isRequired, sidebarFooterElementId: PropTypes.string.isRequired,