diff --git a/src/cpl_cli/configuration/build_settings.py b/src/cpl_cli/configuration/build_settings.py index 167db345..37e3662a 100644 --- a/src/cpl_cli/configuration/build_settings.py +++ b/src/cpl_cli/configuration/build_settings.py @@ -76,7 +76,11 @@ class BuildSettings(ConfigurationModelABC): self._included = settings[BuildSettingsNameEnum.included.value] self._excluded = settings[BuildSettingsNameEnum.excluded.value] self._package_data = settings[BuildSettingsNameEnum.package_data.value] - self._project_references = settings[BuildSettingsNameEnum.project_references.value] + + if BuildSettingsNameEnum.project_references.value in settings: + self._project_references = settings[BuildSettingsNameEnum.project_references.value] + else: + self._project_references = [] if sys.platform == 'win32': self._source_path = str(self._source_path).replace('/', '\\') diff --git a/src/cpl_cli/configuration/project_settings.py b/src/cpl_cli/configuration/project_settings.py index d9e8413b..3f8f0fcc 100644 --- a/src/cpl_cli/configuration/project_settings.py +++ b/src/cpl_cli/configuration/project_settings.py @@ -127,7 +127,11 @@ class ProjectSettings(ConfigurationModelABC): self._python_executable = path - self._classifiers = settings[ProjectSettingsNameEnum.classifiers.value] + if ProjectSettingsNameEnum.classifiers.value: + self._classifiers = settings[ProjectSettingsNameEnum.classifiers.value] + else: + self._classifiers = [] + except Exception as e: Console.set_foreground_color(ForegroundColorEnum.red) Console.write_line( diff --git a/src/cpl_cli/configuration/workspace_settings.py b/src/cpl_cli/configuration/workspace_settings.py index 2b358218..4d51736a 100644 --- a/src/cpl_cli/configuration/workspace_settings.py +++ b/src/cpl_cli/configuration/workspace_settings.py @@ -31,7 +31,11 @@ class WorkspaceSettings(ConfigurationModelABC): try: self._default_project = settings[WorkspaceSettingsNameEnum.default_project.value] self._projects = settings[WorkspaceSettingsNameEnum.projects.value] - self._scripts = settings[WorkspaceSettingsNameEnum.scripts.value] + + if WorkspaceSettingsNameEnum.scripts.value in settings: + self._scripts = settings[WorkspaceSettingsNameEnum.scripts.value] + else: + self._scripts = {} except Exception as e: Console.error(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings') Console.error(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}') diff --git a/src/tests/custom/general/src/general/general.json b/src/tests/custom/general/src/general/general.json index 8c2aee2a..6bed03dd 100644 --- a/src/tests/custom/general/src/general/general.json +++ b/src/tests/custom/general/src/general/general.json @@ -16,7 +16,7 @@ "LicenseName": "MIT", "LicenseDescription": "MIT, see LICENSE for more details.", "Dependencies": [ - "sh_cpl==2021.4.dev1" + "sh_cpl==2021.4.0.post2" ], "PythonVersion": ">=3.8", "PythonPath": { @@ -40,6 +40,7 @@ "*/logs", "*/tests" ], - "PackageData": {} + "PackageData": {}, + "ProjectReferences": [] } } \ No newline at end of file