diff --git a/RELEASE.md b/RELEASE.md index 186231b4f..1a7762a75 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,5 +1,9 @@ # Release Notes +## Version 3.4.2, February 9, 2026 + +* Unpinned `fastkml` version to remove package dependency issues + ## Version 3.4.1, January 28, 2026 * Pin Jupyter Book to 1.x until v2 migration. diff --git a/hopp/__init__.py b/hopp/__init__.py index f0bb7a76e..c7bc8258c 100644 --- a/hopp/__init__.py +++ b/hopp/__init__.py @@ -1,7 +1,7 @@ from pathlib import Path -__version__ = "3.4.1" +__version__ = "3.4.2" ROOT_DIR = Path(__file__).resolve().parent diff --git a/hopp/simulation/technologies/sites/site_info.py b/hopp/simulation/technologies/sites/site_info.py index e008decf4..9edb9c686 100644 --- a/hopp/simulation/technologies/sites/site_info.py +++ b/hopp/simulation/technologies/sites/site_info.py @@ -500,11 +500,9 @@ def kml_write(self, filepath, turb_coords=None, solar_region=None, wind_radius=2 @staticmethod def kml_read(filepath): - k = kml.KML() - with open(filepath) as kml_file: - k.from_string(kml_file.read().encode("utf-8")) - features = list(k.features())[0] - placemarks = list(list(features.features())[0].features()) + k = kml.KML.parse(filepath) + features = k.features[0] + placemarks = features.features[0].features gmaps_epsg = pyproj.CRS("EPSG:4326") project = None @@ -533,7 +531,6 @@ def kml_read(filepath): @staticmethod def append_kml_data(kml_data, polygon, name): - folder = kml_data._features[0]._features[0] - new_pm = kml.Placemark(name=name) - new_pm.geometry = polygon + folder = kml_data.features[0].features[0] + new_pm = kml.Placemark(name=name, geometry=polygon) folder.append(new_pm) diff --git a/pyproject.toml b/pyproject.toml index cef772a71..87e7922ea 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ dependencies = [ "NREL-PySAM>=7.0.0", "Pillow", "Pyomo>=6.1.2", - "fastkml<1", + "fastkml", "floris==4.3", "future", "global_land_mask",