diff --git a/platformio/package/manifest/parser.py b/platformio/package/manifest/parser.py index 9ea5f4f3..2433e9cb 100644 --- a/platformio/package/manifest/parser.py +++ b/platformio/package/manifest/parser.py @@ -652,9 +652,13 @@ class PlatformJsonManifestParser(BaseManifestParser): data["keywords"] = self.str_to_list( data["keywords"], sep=",", lowercase=True, unique=True ) - if "frameworks" in data and not isinstance(data["frameworks"], dict): - data["frameworks"] = self.str_to_list( - data["frameworks"].keys(), lowercase=True, unique=True + if "frameworks" in data: + data["frameworks"] = ( + self.str_to_list( + list(data["frameworks"].keys()), lowercase=True, unique=True + ) + if isinstance(data["frameworks"], dict) + else None ) if "packages" in data: data["dependencies"] = self._parse_dependencies(data["packages"])