From 5a2ff9aabf61b1e429cdcff3a298a5468173730e Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sun, 12 Oct 2025 21:51:33 +0200 Subject: [PATCH 01/23] Update years for at_crop be_vlg es_an es_cl es_pv --- fiboa_cli/datasets/at_crop.py | 3 ++- fiboa_cli/datasets/be_vlg.py | 6 +++--- fiboa_cli/datasets/es_an.py | 1 + fiboa_cli/datasets/es_cl.py | 6 ++---- fiboa_cli/datasets/es_pv.py | 2 +- .../inspire_schlaege_2024-2_polygon.gpkg.zip | Bin 20138 -> 0 bytes .../inspire_schlaege_2025-1_polygon.gpkg.zip | Bin 0 -> 29327 bytes 7 files changed, 9 insertions(+), 9 deletions(-) delete mode 100644 tests/data-files/convert/at_crop/inspire_schlaege_2024-2_polygon.gpkg.zip create mode 100644 tests/data-files/convert/at_crop/inspire_schlaege_2025-1_polygon.gpkg.zip diff --git a/fiboa_cli/datasets/at_crop.py b/fiboa_cli/datasets/at_crop.py index c97ba513..fb4a5bcf 100644 --- a/fiboa_cli/datasets/at_crop.py +++ b/fiboa_cli/datasets/at_crop.py @@ -6,6 +6,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): variants = { + "2025": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2025-1_polygon.gpkg.zip", "2024": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2024-2_polygon.gpkg.zip", "2023": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2023-2_polygon.gpkg.zip", "2022": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2022_polygon.gpkg.zip", @@ -20,7 +21,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): short_name = "Austria" title = "Field boundaries for Austria" description = """ - **Crop Field boundaries for Austria - INVEKOS Schläge Österreich 2021.** + **Crop Field boundaries for Austria - INVEKOS Schläge Österreich 2025.** This layer includes all field uses recorded by the applicants, which serve as the basis for the funding process. A field is a contiguous area of a piece of land that is cultivated for a growing season with only one crop (field use type) and diff --git a/fiboa_cli/datasets/be_vlg.py b/fiboa_cli/datasets/be_vlg.py index 7572b926..21087cd1 100644 --- a/fiboa_cli/datasets/be_vlg.py +++ b/fiboa_cli/datasets/be_vlg.py @@ -10,7 +10,8 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): variants = { str(k): {PREFIX + v: [v.replace("_GPKG.zip", ".gpkg")]} for k, v in ( - (2024, "Landbouwgebruikspercelen_2024_-_Voorlopig_(extractie_15-10-2024)_GPKG.zip"), + (2025, "Landbouwgebruikspercelen_2025_-_Voorlopig_(extractie_02-06-2025)_GPKG.zip"), + (2024, "Landbouwgebruikspercelen_2024_-_Definitief_(extractie_27-03-2025)_GPKG.zip"), (2023, "Landbouwgebruikspercelen_2023_-_Definitief_(extractie_28-03-2024)_GPKG.zip"), (2022, "Landbouwgebruikspercelen_2022_-_Definitief_(extractie_26-06-2023)_GPKG.zip"), (2021, "Landbouwgebruikspercelen_2021_-_Definitief_(extractie_15-03-2022)_GPKG.zip"), @@ -35,7 +36,6 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): columns = { "geometry": "geometry", - "BT_BRON": "source", "BT_OMSCH": "typology", "GRAF_OPP": "metrics:area", "REF_ID": "id", @@ -47,4 +47,4 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): } ec_mapping_csv = "be_vlg_2021.csv" - missing_schemas = {"properties": {"source": {"type": "string"}, "typology": {"type": "string"}}} + missing_schemas = {"properties": {"typology": {"type": "string"}}} diff --git a/fiboa_cli/datasets/es_an.py b/fiboa_cli/datasets/es_an.py index dcc52cee..3c56ef59 100644 --- a/fiboa_cli/datasets/es_an.py +++ b/fiboa_cli/datasets/es_an.py @@ -6,6 +6,7 @@ class ANConverter(ESBaseConverter): variants = { + "2025": "https://www.juntadeandalucia.es/ssdigitales/festa/agriculturapescaaguaydesarrollorural/2025/SP25_REC_PROV_{code}.zip", "2024": "https://www.juntadeandalucia.es/ssdigitales/festa/agriculturapescaaguaydesarrollorural/2024/SP24_REC_{code}.zip", "2023": "https://www.juntadeandalucia.es/ssdigitales/festa/agriculturapescaaguaydesarrollorural/2023/SP23_REC_{code}.zip", "2022": "https://www.juntadeandalucia.es/export/drupaljda/01_SP22_REC_PROV_{code}.zip", diff --git a/fiboa_cli/datasets/es_cl.py b/fiboa_cli/datasets/es_cl.py index 4bc1ba48..3eac8b88 100644 --- a/fiboa_cli/datasets/es_cl.py +++ b/fiboa_cli/datasets/es_cl.py @@ -51,12 +51,10 @@ def download_files(self, uris, cache_folder=None): def get_urls(self): if not self.variant: - self.variant = "2024" + self.variant = "2025" logger.warning(f"Choosing first year {self.variant}") else: - assert self.variant in "2024 2023 2022 2021 2020 2019".split(), ( - f"Wrong year {self.variant}" - ) + assert 2019 <= int(self.variant) <= 2025, f"Wrong year {self.variant}" base = f"http://ftp.itacyl.es/cartografia/05_SIGPAC/{self.variant}_ETRS89/Parcelario_SIGPAC_CyL_Provincias/" response = requests.get(base) assert response.status_code == 200, f"Error getting urls {response}\n{response.content}" diff --git a/fiboa_cli/datasets/es_pv.py b/fiboa_cli/datasets/es_pv.py index aabc29c6..ff45efbb 100644 --- a/fiboa_cli/datasets/es_pv.py +++ b/fiboa_cli/datasets/es_pv.py @@ -10,7 +10,7 @@ class ESPVConverter(ESBaseConverter): str( year ): f"https://www.geo.euskadi.eus/cartografia/DatosDescarga/Agricultura/SIGPAC/SIGPAC_CAMPA%C3%91A_{year}_V1/" - for year in range(2024, 2015, -1) + for year in range(2025, 2015, -1) } id = "es_pv" short_name = "Spain Basque Country" diff --git a/tests/data-files/convert/at_crop/inspire_schlaege_2024-2_polygon.gpkg.zip b/tests/data-files/convert/at_crop/inspire_schlaege_2024-2_polygon.gpkg.zip deleted file mode 100644 index e5a2035707a64fc73c6cfcc437fc5cf0a3918d16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20138 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 FzX9xqqHh2I literal 0 HcmV?d00001 From a62353b050e7972d71aa31c8b89e266b9676e7c4 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:44:03 +0200 Subject: [PATCH 02/23] Always call super().migrate --- fiboa_cli/datasets/ai4sf.py | 2 +- fiboa_cli/datasets/br_conab.py | 2 +- fiboa_cli/datasets/de_sl.py | 2 +- fiboa_cli/datasets/de_th.py | 2 +- fiboa_cli/datasets/dk.py | 2 +- fiboa_cli/datasets/es.py | 2 +- fiboa_cli/datasets/es_cat.py | 2 +- fiboa_cli/datasets/ie.py | 2 +- fiboa_cli/datasets/nz.py | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/fiboa_cli/datasets/ai4sf.py b/fiboa_cli/datasets/ai4sf.py index c52bfe97..a315b86b 100644 --- a/fiboa_cli/datasets/ai4sf.py +++ b/fiboa_cli/datasets/ai4sf.py @@ -111,7 +111,7 @@ def migrate(self, gdf): gdf["fiboa_id"] = ( gdf["id"].astype(str).str.zfill(2) + "_" + gdf.index.astype(str).str.zfill(5) ) - return gdf + return super().migrate(gdf) missing_schemas = { "properties": { diff --git a/fiboa_cli/datasets/br_conab.py b/fiboa_cli/datasets/br_conab.py index a2efe84e..48e29cca 100644 --- a/fiboa_cli/datasets/br_conab.py +++ b/fiboa_cli/datasets/br_conab.py @@ -93,7 +93,7 @@ def migrate(self, gdf): gdf.loc[gdf["area_ha"] == 0, "area_ha"] = None gdf["cd_mun"] = gdf["cd_mun"].combine_first(gdf["CD_MUN"]).apply(fformat) gdf["nm_mun"] = gdf["nm_mun"].combine_first(gdf["NM_MUN"]).combine_first(gdf["NM_MUNIC"]) - return gdf + return super().migrate(gdf) def get_data(self, paths, **kwargs): # Set invalid geometries to None in Cafe/MG/CAFE-MG_Safra_2017.zip diff --git a/fiboa_cli/datasets/de_sl.py b/fiboa_cli/datasets/de_sl.py index 0eb3b489..5ab3185e 100644 --- a/fiboa_cli/datasets/de_sl.py +++ b/fiboa_cli/datasets/de_sl.py @@ -54,4 +54,4 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): def migrate(self, gdf): gdf["flik"] = gdf["description"].apply(parse_flik) gdf["area"] = gdf["description"].apply(parse_size) - return gdf + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/de_th.py b/fiboa_cli/datasets/de_th.py index f7dd4482..4ac14ae6 100644 --- a/fiboa_cli/datasets/de_th.py +++ b/fiboa_cli/datasets/de_th.py @@ -67,7 +67,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): def migrate(self, gdf): col = "GEO_UPDAT" gdf[col] = pd.to_datetime(gdf[col], format="%d.%m.%Y", utc=True) - return gdf + return super().migrate(gdf) column_filters = {"LF": lambda col: col == "LF"} diff --git a/fiboa_cli/datasets/dk.py b/fiboa_cli/datasets/dk.py index 66434298..c4935445 100644 --- a/fiboa_cli/datasets/dk.py +++ b/fiboa_cli/datasets/dk.py @@ -31,4 +31,4 @@ class DKConverter(AdminConverterMixin, FiboaBaseConverter): def migrate(self, gdf) -> gpd.GeoDataFrame: gdf["determination:datetime"] = f"{self.variant}-01-01T00:00:00Z" - return gdf + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/es.py b/fiboa_cli/datasets/es.py index 46a97a35..4d2fd9d4 100644 --- a/fiboa_cli/datasets/es.py +++ b/fiboa_cli/datasets/es.py @@ -47,4 +47,4 @@ def migrate(self, gdf): mapping_en = {row["original_code"]: row["name_en"] for row in rows} gdf["crop:name"] = gdf[self.use_code_attribute].map(mapping) gdf["crop:name_en"] = gdf[self.use_code_attribute].map(mapping_en) - return gdf + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/es_cat.py b/fiboa_cli/datasets/es_cat.py index 02e7e71d..11747dbe 100644 --- a/fiboa_cli/datasets/es_cat.py +++ b/fiboa_cli/datasets/es_cat.py @@ -77,4 +77,4 @@ def migrate(self, gdf): assert len(missing) == 0, f"Can not map crops {missing}" gdf["crop:code"] = gdf["cultiu"].map(mapping) gdf["crop:name_en"] = gdf["cultiu"].map(mapping_en) - return gdf + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/ie.py b/fiboa_cli/datasets/ie.py index 836c3e4c..b12fa970 100644 --- a/fiboa_cli/datasets/ie.py +++ b/fiboa_cli/datasets/ie.py @@ -42,7 +42,7 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: gdf["crop_name"] = gdf["crop_name"].str.split(", ").str.get(0) gdf = gdf[gdf["crop_name"] != "Void"] # Exclude non-agriculture fields gdf["determination:datetime"] = gdf["observationDate"].str.replace("+01:00", "T00:00:00Z") - return gdf + return super().migrate(gdf) def file_migration( self, gdf: gpd.GeoDataFrame, path: str, uri: str, layer: str = None diff --git a/fiboa_cli/datasets/nz.py b/fiboa_cli/datasets/nz.py index 7ce88339..83c904b7 100644 --- a/fiboa_cli/datasets/nz.py +++ b/fiboa_cli/datasets/nz.py @@ -49,4 +49,4 @@ def migrate(self, gdf): rows = read_data_csv("nz_region_codes.csv") mapping = {row["Subdivision name"]: row["3166-2 code"][len("NZ-") :] for row in rows} gdf["Region"] = gdf["Region"].map(mapping) - return gdf + return super().migrate(gdf) From 141cc58b83872b33dc9d83e098098baf936083ea Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:49:23 +0200 Subject: [PATCH 03/23] Add HCAT to datasets where possible, simplify with AddHCATMixin --- fiboa_cli/datasets/cz.py | 7 +++---- fiboa_cli/datasets/de_mv.py | 7 ++++--- fiboa_cli/datasets/dk.py | 10 ++++------ fiboa_cli/datasets/fi.py | 7 +++---- fiboa_cli/datasets/hr.py | 19 +++---------------- fiboa_cli/datasets/ie.py | 31 ++++++++++++++++++------------- fiboa_cli/datasets/jecam.py | 12 ++++++++++-- fiboa_cli/datasets/lv.py | 17 +---------------- fiboa_cli/datasets/pt.py | 23 +++++++++++++++++++---- fiboa_cli/datasets/se.py | 25 +++++++++++-------------- fiboa_cli/datasets/si.py | 7 +++---- fiboa_cli/datasets/sk.py | 15 +++++++++++---- 12 files changed, 90 insertions(+), 90 deletions(-) diff --git a/fiboa_cli/datasets/cz.py b/fiboa_cli/datasets/cz.py index d728ff8d..ae54ac8d 100644 --- a/fiboa_cli/datasets/cz.py +++ b/fiboa_cli/datasets/cz.py @@ -2,10 +2,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = "https://mze.gov.cz/public/app/eagriapp/Files/geoprostor_zadosti23_2024-08-01_202409261243_epsg4258.zip" id = "cz" short_name = "Czech" @@ -24,8 +24,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): # 'OKRES_NAZE': 'admin:subdivision_code', } column_migrations = {"DATUM_REP": lambda col: pd.to_datetime(col, format="%d.%m.%Y")} - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("cz_2023.csv")} + ec_mapping_csv = "cz_2023.csv" missing_schemas = { "properties": { "block_id": {"type": "string"}, diff --git a/fiboa_cli/datasets/de_mv.py b/fiboa_cli/datasets/de_mv.py index aef59828..765abc37 100644 --- a/fiboa_cli/datasets/de_mv.py +++ b/fiboa_cli/datasets/de_mv.py @@ -1,9 +1,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = { "https://www.geodaten-mv.de/dienste/gdimv_feldblock_wfs?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetFeature&TYPENAME=mv:feldbloecke&OUTPUTFORMAT=shape-zip": "gdimv_feldblock_wfs.zip" } @@ -16,13 +17,13 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): provider = "Ministerium für Landwirtschaft und Umwelt M-V " license = "No restrictions apply " extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} + ec_mapping_csv = "de.csv" columns = { "geometry": "geometry", "fbid": ("id", "flik"), # make flik id a dedicated column to align with NRW etc. "dgl_jahr": "dgl_jahr", - # TODO implement crop:code extension - "bodennutzu": "bodennutzu", # Bodennutzungsart + "bodennutzu": "crop:code", # Bodennutzungsart "bez_kreis": "bez_kreis", # Kreisbezeichnung "groesse_p": "metrics:area", # Produktive Fläche des FB in Hektar (Nettofläche) "perimeter": "metrics:perimeter", # Polygonumfang diff --git a/fiboa_cli/datasets/dk.py b/fiboa_cli/datasets/dk.py index c4935445..7dab9ec4 100644 --- a/fiboa_cli/datasets/dk.py +++ b/fiboa_cli/datasets/dk.py @@ -2,10 +2,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class DKConverter(AdminConverterMixin, FiboaBaseConverter): +class DKConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): variants = { str(variant): f"https://landbrugsgeodata.fvm.dk/Download/Marker/Marker_{variant}.zip" for variant in range(2024, 2008 - 1, -1) @@ -15,11 +15,8 @@ class DKConverter(AdminConverterMixin, FiboaBaseConverter): title = "Denmark Crop Fields (Marker)" description = "The Danish Ministry of Food, Agriculture and Fisheries publishes Crop Fields (Marker) for each year." - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("nl_2020.csv")} - provider = "Danish Agricultural Agency " - + ec_mapping_csv = "dk_2019.csv" license = "CC0-1.0" columns = { "geometry": "geometry", @@ -30,5 +27,6 @@ class DKConverter(AdminConverterMixin, FiboaBaseConverter): } def migrate(self, gdf) -> gpd.GeoDataFrame: + gdf["Afgkode"] = gdf["Afgkode"].astype(float).fillna(value=0).astype(int).astype(str) gdf["determination:datetime"] = f"{self.variant}-01-01T00:00:00Z" return super().migrate(gdf) diff --git a/fiboa_cli/datasets/fi.py b/fiboa_cli/datasets/fi.py index 71d309f1..253ec93c 100644 --- a/fiboa_cli/datasets/fi.py +++ b/fiboa_cli/datasets/fi.py @@ -2,10 +2,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = "https://download.inspire.ruokavirasto-awsa.com/data/2023/LandUse.ExistingLandUse.GSAAAgriculturalParcel.gpkg" id = "fi" short_name = "Finland" @@ -31,8 +31,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): # Make year (1st January) from column "VUOSI" "VUOSI": lambda col: pd.to_datetime(col, format="%Y"), } - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("fi_2020.csv")} + ec_mapping_csv = "fi_2020.csv" area_is_in_ha = False area_calculate_missing = True diff --git a/fiboa_cli/datasets/hr.py b/fiboa_cli/datasets/hr.py index 5c682e9b..42c74ad4 100644 --- a/fiboa_cli/datasets/hr.py +++ b/fiboa_cli/datasets/hr.py @@ -1,11 +1,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.data import read_data_csv -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = "https://www.apprrr.hr/wp-content/uploads/nipp/land_parcels.gpkg" id = "hr" short_name = "Croatia" @@ -31,8 +30,6 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): columns = { "id": "id", "land_use_id": "crop:code", - "crop:name": "crop:name", - "crop:name_en": "crop:name_en", "area": "metrics:area", "geometry": "geometry", "home_name": "home_name", @@ -60,8 +57,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): "jpaid": "jpaid", } - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("hr_2020.csv")} + ec_mapping_csv = "hr_2020.csv" missing_schemas = { "required": [ @@ -99,14 +95,5 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): }, } - def migrate(self, gdf): - gdf = super().migrate(gdf) - rows = read_data_csv("hr_categories.csv", delimiter=";") - mapping = {int(row["code"]): row["name"] for row in rows} - mapping_en = {int(row["code"]): row["name_en"] for row in rows} - gdf["crop:name"] = gdf["land_use_id"].map(mapping) - gdf["crop:name_en"] = gdf["land_use_id"].map(mapping_en) - return gdf - area_is_in_ha = False area_calculate_missing = True diff --git a/fiboa_cli/datasets/ie.py b/fiboa_cli/datasets/ie.py index b12fa970..db0da6b6 100644 --- a/fiboa_cli/datasets/ie.py +++ b/fiboa_cli/datasets/ie.py @@ -3,13 +3,18 @@ from ..conversion.convert_gml import gml_assure_columns from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.data import read_data_csv +from .commons.hcat import AddHCATMixin -class IEConverter(AdminConverterMixin, FiboaBaseConverter): - sources = { - "https://osi-inspire-atom.s3-eu-west-1.amazonaws.com/IACSdata/IACS_GSAA_2022.zip": [ - "IACS_GSAA_2022.gml" - ] +class IEConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + variants = { + str(year): { + f"https://dafm-inspire-atom.s3.eu-west-1.amazonaws.com/files/LU/GSAA_{year}.zip": [ + f"GSAA_{year}.gml" + ] + } + for year in range(2024, 2021, -1) } id = "ie" @@ -25,22 +30,22 @@ class IEConverter(AdminConverterMixin, FiboaBaseConverter): license = "CC-BY-4.0" columns = { "geometry": "geometry", - "crop_name": "crop_name", + "crop_name": "crop:name", + "crop_code": "crop:code", "localId": "id", "determination:datetime": "determination:datetime", } - # TODO use crop-extension, maybe with reverse mapping - - missing_schemas = { - "properties": { - "crop_name": {"type": "string"}, - } - } + ec_mapping_csv = "ie_2023.csv" def migrate(self, gdf) -> gpd.GeoDataFrame: # crop_name can be multiple: "crop1, crop2, crop3". We only read the main crop (first). gdf["crop_name"] = gdf["crop_name"].str.split(", ").str.get(0) gdf = gdf[gdf["crop_name"] != "Void"] # Exclude non-agriculture fields + + rows = read_data_csv("ie_2023.csv") + mapping = {row["original_name"]: index + 1 for index, row in enumerate(rows)} + gdf["crop_code"] = gdf["crop_name"].map(mapping) + gdf["determination:datetime"] = gdf["observationDate"].str.replace("+01:00", "T00:00:00Z") return super().migrate(gdf) diff --git a/fiboa_cli/datasets/jecam.py b/fiboa_cli/datasets/jecam.py index 9e079dcb..89d57168 100644 --- a/fiboa_cli/datasets/jecam.py +++ b/fiboa_cli/datasets/jecam.py @@ -3,6 +3,9 @@ from fiboa_cli.conversion.fiboa_converter import FiboaBaseConverter from fiboa_cli.datasets.commons.data import read_data_csv +from fiboa_cli.datasets.commons.hcat import CROP_EXTENSION + +CODE_LIST = "https://fiboa.org/code/jecam/crop.csv" class JecamConvert(FiboaBaseConverter): @@ -38,13 +41,14 @@ class JecamConvert(FiboaBaseConverter): "AcquiDate": "determination:datetime", "admin:country_code": "admin:country_code", "SiteName": "site_name", + "crop:code": "crop:code", "CropType1": "crop:name", "Irrigated": "irrigated", } column_additions = { - "crop:code_list": "https://fiboa.org/code/jecam/crop.csv", + "crop:code_list": CODE_LIST, } - extensions = {ADMIN_DIVISION} + extensions = {ADMIN_DIVISION, CROP_EXTENSION} missing_schemas = { "properties": { "site_name": {"type": "string"}, @@ -60,6 +64,10 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: mapping = {row["name"]: row["alpha-2"] for row in rows} gdf["admin:country_code"] = gdf["Country"].map(mapping) + rows = read_data_csv("jecam_crop.csv") + mapping = {row["crop_name"]: index + 1 for index, row in enumerate(rows)} + gdf["crop:code"] = gdf["CropType1"].map(mapping) + gdf.loc[gdf["Area_ha"] == 0, "Area_ha"] = None gdf["Irrigated"] = gdf["Irrigated"].astype(bool) return gdf diff --git a/fiboa_cli/datasets/lv.py b/fiboa_cli/datasets/lv.py index b3143406..2a6abf9a 100644 --- a/fiboa_cli/datasets/lv.py +++ b/fiboa_cli/datasets/lv.py @@ -1,7 +1,7 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import AddHCATMixin, ec_url +from .commons.ec import AddHCATMixin count = 3000 @@ -37,10 +37,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "geometry": "geometry", "DATA_CHANGED_DATE": "determination:datetime", "area": "metrics:area", - "crop:code_list": "crop:code_list", "PRODUCT_CODE": "crop:code", - "crop:name": "crop:name", - "crop:name_en": "crop:name_en", } missing_schemas = { "properties": { @@ -52,15 +49,3 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): ec_mapping_csv = "lv_2021.csv" area_calculate_missing = True - - def migrate(self, gdf): - gdf = super().migrate(gdf) - - original_name_mapping = { - int(e["original_code"]): e["original_name"] for e in self.ec_mapping - } - name_mapping = {int(e["original_code"]): e["translated_name"] for e in self.ec_mapping} - gdf["crop:code_list"] = ec_url("lv_2021.csv") - gdf["crop:name"] = gdf["PRODUCT_CODE"].map(original_name_mapping) - gdf["crop:name_en"] = gdf["PRODUCT_CODE"].map(name_mapping) - return gdf diff --git a/fiboa_cli/datasets/pt.py b/fiboa_cli/datasets/pt.py index fdceebb5..b2d4ff0f 100644 --- a/fiboa_cli/datasets/pt.py +++ b/fiboa_cli/datasets/pt.py @@ -1,13 +1,28 @@ +from vecorel_cli.conversion.admin import AdminConverterMixin + from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class PTConverter(FiboaBaseConverter): +class PTConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): id = "pt" title = "Field boundaries for Portugal" short_name = "Portugal" description = "Open field boundaries (identificação de parcelas) from Portugal" - sources = "https://www.ifap.pt/isip/ows/resources/2023/Continente.gpkg" + # see https://www.ifap.pt/isip/ows/ + BASE = "https://www.ifap.pt/isip/ows/resources/" + variants = { + "2023": BASE + "2023/Continente.gpkg", + "2022": BASE + "2022/2022.zip", + "2021": BASE + "2021/2021.zip", + "2020": BASE + "2017-2020/2020.zip", + "2019": BASE + "2017-2020/2019.zip", + "2018": BASE + "2017-2020/2018.zip", + "2017": BASE + "2017-2020/2017.zip", + "2016": BASE + "2011_2016/2016.zip", + "2015": BASE + "2011_2016/2015.zip", + # ... + } def layer_filter(self, layer, uri): return layer.startswith("Culturas_") @@ -26,8 +41,8 @@ def layer_filter(self, layer, uri): "Shape_Length": "metrics:perimeter", } extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} + ec_mapping_csv = "pt_2021.csv" column_additions = { - "crop:code_list": ec_url("pt_2021.csv"), "determination:datetime": "2023-01-01T00:00:00Z", } area_is_in_ha = False diff --git a/fiboa_cli/datasets/se.py b/fiboa_cli/datasets/se.py index d8fb462c..6647e5ba 100644 --- a/fiboa_cli/datasets/se.py +++ b/fiboa_cli/datasets/se.py @@ -2,12 +2,17 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url, load_ec_mapping +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = { - "http://epub.sjv.se/inspire/inspire/wfs?SERVICE=WFS%20&REQUEST=GetFeature%20&VERSION=1.0.0%20&TYPENAMES=inspire:arslager_skifte%20&outputFormat=shape-zip%20&CQL_FILTER=arslager=%272023%27%20%20and%20geom%20is%20not%20null%20&format_options=CHARSET:UTF-8": "se2023.zip" +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + variants = { + "2024": { + "http://epub.sjv.se/inspire/inspire/wfs?SERVICE=WFS%20&REQUEST=GetFeature%20&VERSION=1.0.0%20&TYPENAMES=inspire:arslager_skifte%20&outputFormat=shape-zip%20&CQL_FILTER=arslager=%272024%27%20%20and%20geom%20is%20not%20null%20&format_options=CHARSET:UTF-8": "se2024.zip" + }, + "2023": { + "http://epub.sjv.se/inspire/inspire/wfs?SERVICE=WFS%20&REQUEST=GetFeature%20&VERSION=1.0.0%20&TYPENAMES=inspire:arslager_skifte%20&outputFormat=shape-zip%20&CQL_FILTER=arslager=%272023%27%20%20and%20geom%20is%20not%20null%20&format_options=CHARSET:UTF-8": "se2023.zip" + }, } id = "se" short_name = "Sweden" @@ -26,23 +31,15 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): "id": "id", "faststalld": "metrics:area", "grdkod_mar": "crop:code", - "crop:name": "crop:name", "arslager": "determination:datetime", } extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("se_2021.csv")} + ec_mapping_csv = "se_2021.csv" column_migrations = { # Make year (1st January) from column "arslager" "arslager": lambda col: pd.to_datetime(col, format="%Y") } def migrate(self, gdf): - """ - Perform migration of the GeoDataFrame (migrate step). - """ - ec_mapping = load_ec_mapping("se_2021.csv") - original_name_mapping = {int(e["original_code"]): e["original_name"] for e in ec_mapping} - gdf["id"] = gdf["blockid"] + "_" + gdf["skiftesbet"] - gdf["crop:name"] = gdf["grdkod_mar"].map(original_name_mapping) - return gdf + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/si.py b/fiboa_cli/datasets/si.py index 7bdff1cf..9a93800c 100644 --- a/fiboa_cli/datasets/si.py +++ b/fiboa_cli/datasets/si.py @@ -1,10 +1,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = {"https://rkg.gov.si/razno/portal_analysis/KMRS_2023.rar": ["KMRS_2023.shp"]} id = "si" short_name = "Slovenia" @@ -27,8 +27,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): "RASTLINA": "crop:name", "CROP_LAT_E": "crop:name_en", } - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("si_2021.csv")} + ec_mapping_csv = "si_2021.csv" column_migrations = {"geometry": lambda col: col.make_valid()} area_is_in_ha = False missing_schemas = { diff --git a/fiboa_cli/datasets/sk.py b/fiboa_cli/datasets/sk.py index 2126f81c..138b64a7 100644 --- a/fiboa_cli/datasets/sk.py +++ b/fiboa_cli/datasets/sk.py @@ -1,9 +1,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin, load_ec_mapping -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = { "https://data.slovensko.sk/download?id=e39ad227-1899-4cff-b7c8-734f90aa0b59&blocksize=0": [ "HU2024_20240917shp/HU2024_20240917.shp" @@ -24,19 +25,25 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): """ provider = "Pôdohospodárska platobná agentúra " license = "CC0-1.0" # "Open Data" - # TODO look for a way to find codes for crop_name and implement crop-extension + ec_mapping_csv = "sk_2021.csv" columns = { "geometry": "geometry", "KODKD": "id", - "PLODINA": "crop_name", + "PLODINA": "crop:name", "KULTURA_NA": "crop_group", "LOKALITA_N": "municipality", "VYMERA": "metrics:area", } missing_schemas = { "properties": { - "crop_name": {"type": "string"}, "crop_group": {"type": "string"}, "municipality": {"type": "string"}, } } + + def migrate(self, gdf): + if self.ec_mapping is None: + self.ec_mapping = load_ec_mapping(self.ec_mapping_csv, url=self.mapping_file) + mapping = {row["original_name"]: index + 1 for index, row in enumerate(self.ec_mapping)} + gdf["crop:code"] = gdf["PLODINA"].map(mapping) + return super().migrate(gdf) From 0236b5a782673814d41de97f4b01913da20bf61d Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:51:12 +0200 Subject: [PATCH 04/23] Split Germany BB and NDS in block dataset and crop fields --- fiboa_cli/datasets/de_bb.py | 34 +++++-------- fiboa_cli/datasets/de_bb_block.py | 42 ++++++++++++++++ fiboa_cli/datasets/de_nds.py | 57 ++++++++++++++++------ fiboa_cli/datasets/de_nds_block.py | 33 +++++++++++++ tests/data-files/convert/de_bb/antrag.zip | Bin 0 -> 25674 bytes 5 files changed, 129 insertions(+), 37 deletions(-) create mode 100644 fiboa_cli/datasets/de_bb_block.py create mode 100644 fiboa_cli/datasets/de_nds_block.py create mode 100644 tests/data-files/convert/de_bb/antrag.zip diff --git a/fiboa_cli/datasets/de_bb.py b/fiboa_cli/datasets/de_bb.py index 0ae8cc37..8b2eff82 100644 --- a/fiboa_cli/datasets/de_bb.py +++ b/fiboa_cli/datasets/de_bb.py @@ -1,42 +1,30 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = {"https://data.geobasis-bb.de/geofachdaten/Landwirtschaft/dfbk.zip": ["DFBK_FB.shp"]} +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + sources = "https://data.geobasis-bb.de/geofachdaten/Landwirtschaft/antrag.zip" id = "de_bb" admin_subdivision_code = "BB" # TODO Berlin is also in here, check each row short_name = "Germany, Berlin/Brandenburg" title = "Field boundaries for Berlin / Brandenburg, Germany" - description = """A field block (German: "Feldblock") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or more farmers with one or more crops, is fully or partially set aside or is fully or partially taken out of production.""" + description = """A Crop Field (German: "Schlaege") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated with a single crop.""" license = "DL-DE-BY-2.0" provider = "Land Brandenburg " - extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} + ec_mapping_csv = "de.csv" columns = { "geometry": "geometry", - "FB_ID": ["flik", "id"], - "FGUE_JAHR": "fgue_jahr", - "FL_BRUTTO_": "metrics:area", - "FL_NETTO_H": "net_area", - "GUELTVON_F": "determination:datetime", - "GUELTBIS_F": "expiry_datetime", - "KREIS_NR": "kreis_nr", - "TK10_BLATT": "tk10", - "HBN_KAT": "hbn", - "SHAPE_LEN": "metrics:perimeter", + "ref_ident": "farmer_id", + "groesse": "metrics:area", + "guelt_von": "determination:datetime", + "code_bez": "crop:name", + "code": "crop:code", } missing_schemas = { "properties": { - "hbn": {"type": "string"}, - "fgue_jahr": {"type": "string"}, - "net_area": {"type": "float", "exclusiveMinimum": 0}, - "expiry_datetime": {"type": "date-time"}, - "kreis_nr": {"type": "uint16"}, - "tk10": {"type": "string"}, + "farmer_id": {"type": "string"}, } } - - def layer_filter(self, layer: str, uri: str) -> bool: - return layer == "DFBK_FB" diff --git a/fiboa_cli/datasets/de_bb_block.py b/fiboa_cli/datasets/de_bb_block.py new file mode 100644 index 00000000..6000dbba --- /dev/null +++ b/fiboa_cli/datasets/de_bb_block.py @@ -0,0 +1,42 @@ +from vecorel_cli.conversion.admin import AdminConverterMixin + +from ..conversion.fiboa_converter import FiboaBaseConverter + + +class Converter(AdminConverterMixin, FiboaBaseConverter): + sources = {"https://data.geobasis-bb.de/geofachdaten/Landwirtschaft/dfbk.zip": ["DFBK_FB.shp"]} + id = "de_bb_block" + admin_subdivision_code = "BB" + short_name = "Germany, Berlin/Brandenburg" + title = "Field boundaries for Berlin / Brandenburg, Germany" + description = """A field block (German: "Feldblock") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or more farmers with one or more crops, is fully or partially set aside or is fully or partially taken out of production.""" + license = "DL-DE-BY-2.0" + provider = "Land Brandenburg " + extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} + + columns = { + "geometry": "geometry", + "FB_ID": ("flik", "id"), + "FGUE_JAHR": "fgue_jahr", + "FL_BRUTTO": "metrics:area", + "FL_NETTO": "net_area", + "GUELTVON_F": "determination:datetime", + "GUELTBIS_F": "expiry_datetime", + "KREIS_NR": "kreis_nr", + "TK10_BLATT": "tk10", + "HBN_KAT": "hbn", + "SHAPE_LEN": "metrics:perimeter", + } + missing_schemas = { + "properties": { + "hbn": {"type": "string"}, + "fgue_jahr": {"type": "string"}, + "net_area": {"type": "float", "exclusiveMinimum": 0}, + "expiry_datetime": {"type": "date-time"}, + "kreis_nr": {"type": "uint16"}, + "tk10": {"type": "string"}, + } + } + + def layer_filter(self, layer: str, uri: str) -> bool: + return layer == "DFBK_FB" diff --git a/fiboa_cli/datasets/de_nds.py b/fiboa_cli/datasets/de_nds.py index 23b3eedd..732a6d60 100644 --- a/fiboa_cli/datasets/de_nds.py +++ b/fiboa_cli/datasets/de_nds.py @@ -1,33 +1,62 @@ +import pandas as pd from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = "https://sla.niedersachsen.de/mapbender_sla/download/FB_NDS.zip" +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + """ + https://sla.niedersachsen.de/agrarfoerderung/schlaginfo/ (see download) + The zip contains: + - Schlaege = UD_25_S.shp + - TeilLandschaftElemente = UD_25_TLE.shp + - TeilSchlaege = UD_25_TS.shp + """ + + variants = { + f"{year}": { + f"https://sla.niedersachsen.de/mapbender_sla/download/schlaege_aktuell_{year}.zip": [ + f"UD_{year % 100}_S.shp" + ] + } + for year in range(2025, 2020, -1) + } id = "de_nds" admin_subdivision_code = "NI" short_name = "Germany, Lower Saxony/Bremen/Hamburg" - title = "Field boundaries for Lower Saxony / Bremen / Hamburg, Germany" - description = """A field block (German: "Feldblock") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or more farmers with one or more crops, is fully or partially set aside or is fully or partially taken out of production.""" + title = "Crop Fields for Lower Saxony / Bremen / Hamburg, Germany" + description = """A Crop Field (German: "Schlaege") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated with a single crop.""" provider = "ML/SLA Niedersachsen " attribution = "© ML/SLA Niedersachsen (2024), DL-DE-BY-2.0 (www.govdata.de/DL-DE-BY-2.0), Daten bearbeitet" license = "DL-DE-BY-2.0" extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} + + # https://www.sla.niedersachsen.de/download/141235/Verzeichnis_Nutzungscodes.xlsx + ec_mapping_csv = "de.csv" columns = { "geometry": "geometry", - "FLIK": ["id", "flik"], - "STAND": "determination:datetime", - "ANT_JAHR": "ant_jahr", - "BNK": "bnk", - "BNK_TXT": "bnk_txt", - "FLAECHE": "metrics:area", - "SHAPE_Leng": "metrics:perimeter", + "FLIK": "flik", + "SCHLAGNR": "subfield_id", + "NC_FESTG": "crop:code", + "ANTRAGSJAH": "determination:datetime", + "AKTUELLEFL": "metrics:area", } missing_schemas = { "properties": { - "ant_jahr": {"type": "int16"}, - "bnk": {"type": "string"}, - "bnk_txt": {"type": "string"}, + "subfield_id": {"type": "int64"}, } } + column_migrations = {"ANTRAGSJAH": lambda col: pd.to_datetime(col, format="%Y")} + + def migrate(self, gdf): + if "NC_FESTG" not in gdf.columns: + code = {"KULTURARTF", "KULTURCODE", "KC_FESTG"} & set(gdf.columns) + del self.columns["NC_FESTG"] + self.columns[code.pop()] = "crop:code" + + if "AKTUELLEFL" not in gdf.columns: + del self.columns["AKTUELLEFL"] + self.columns["AKT_FL"] = "metrics:area" + + return super().migrate(gdf) diff --git a/fiboa_cli/datasets/de_nds_block.py b/fiboa_cli/datasets/de_nds_block.py new file mode 100644 index 00000000..7621434a --- /dev/null +++ b/fiboa_cli/datasets/de_nds_block.py @@ -0,0 +1,33 @@ +from vecorel_cli.conversion.admin import AdminConverterMixin + +from ..conversion.fiboa_converter import FiboaBaseConverter + + +class Converter(AdminConverterMixin, FiboaBaseConverter): + sources = "https://sla.niedersachsen.de/mapbender_sla/download/FB_NDS.zip" + id = "de_nds_block" + admin_subdivision_code = "NI" + short_name = "Germany, Lower Saxony/Bremen/Hamburg" + title = "Field boundaries for Lower Saxony / Bremen / Hamburg, Germany" + description = """A field block (German: "Feldblock") is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or more farmers with one or more crops, is fully or partially set aside or is fully or partially taken out of production.""" + provider = "ML/SLA Niedersachsen " + attribution = "© ML/SLA Niedersachsen (2024), DL-DE-BY-2.0 (www.govdata.de/DL-DE-BY-2.0), Daten bearbeitet" + license = "DL-DE-BY-2.0" + extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} + columns = { + "geometry": "geometry", + "FLIK": ("id", "flik"), + "STAND": "determination:datetime", + "ANT_JAHR": "ant_jahr", + "BNK": "bnk", + "BNK_TXT": "bnk_txt", + "FLAECHE": "metrics:area", + "SHAPE_Leng": "metrics:perimeter", + } + missing_schemas = { + "properties": { + "ant_jahr": {"type": "int16"}, + "bnk": {"type": "string"}, + "bnk_txt": {"type": "string"}, + } + } diff --git a/tests/data-files/convert/de_bb/antrag.zip b/tests/data-files/convert/de_bb/antrag.zip new file mode 100644 index 0000000000000000000000000000000000000000..0ddd1f975437425e93666d66770e0d31fb4f91d1 GIT binary patch literal 25674 zcma&NXH*l+);3HLkd6X^AOu8Iq=ce^Q~?obf*?&gh)9#(2>}sN>0JaumtF&e-kY=_ zy$1-rgG*V+b3jEEMbG!@!S8$1Of*^IlLOJB$UtHJ`D5^sBAS_5|nDo}P|g zTA7zqzG!P>89!UP^KKSMj#REO!z{o1VV2+|=SN5`-+p1qB2Efm@POd%Gt?ULgV&)q4oL2U zns>M!A!p_UZ-7NPqF(kO(3YZu80ap6vW76qf-p`v+NRfQB+R?dr9E^y!yWkh4jz@& zz<-KkF61a?mGSRhpEmrMN z3XXSI{Q(?$`Emgp(m&?X6)`^k{KKc%k8a!v-X5p=r|3p8j0z+^7<<&uZbsAK6O}+_ zBV$$$T^`cJSkD_G*0X1g(xFY(qSwOr_13Oj);y`Dy|MVNg?dRhIl?nBHckU6aE`d=+9hS%-jh!+l3newoKZJ759c zB9L1x(g(QZo<;$9m}4FX@1C*5NS}08uqY9cywSaoLx1!ghzQ@*YEE>$hYVR8nJ-np z^S9zm8ltBRA&~ZaydhCCWC>GaKR5WU@RSVjNZuzUVtAIB7wzbu_VLjMpFjs+<>x=P zn0%?ydSqj6Cya(M$s~kdJ-CItHJ0-qKnV5q-RR%p@zwCw;y{DsG&W z#}Hm68nuz}$7>Kop-_B}?`kNdT{QK!{a^kv^7d_2mX>f#IgkHox@uj9EL&`8PmVV^ zVftyG1Ae5cBF~&LcVuVqc!;G=&azAyVSIsow}I=|w^q+@max1xe~@Ez{29v95&Dz4Z)?M6(kk+Xxu1TN$>xtaca2N)y`T10 z%C7o4Bx+>#dkR>Obj&*etMr!_T>tl?87M!SM;g7sr60z6b*lDn>JNEC#BIX9-kG~P zdeC8tFaxtL_;?yLhjZuy(pRvj7?z!5_u0Dcy*v%(e@E#)-+q-k)!YmI$vb2*)-R}* zUhp4%q3gS(gjcFmKUJxuJ*Mk(%ySgAuRed1tnB{h3}3Xh4UU

vOnhVio=ajQH60 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 literal 0 HcmV?d00001 From 34b21761fc37143bd1bd625756dea7c1d7b11b57 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:51:32 +0200 Subject: [PATCH 05/23] Make tests work --- fiboa_cli/datasets/data-files/ie_2023.csv | 178 +++++++++++++++++++ fiboa_cli/datasets/data-files/jecam_crop.csv | 106 +++++++++++ fiboa_cli/datasets/de_sax.py | 2 +- fiboa_cli/datasets/de_sh.py | 2 +- tests/test_convert.py | 3 +- 5 files changed, 288 insertions(+), 3 deletions(-) create mode 100644 fiboa_cli/datasets/data-files/ie_2023.csv create mode 100644 fiboa_cli/datasets/data-files/jecam_crop.csv diff --git a/fiboa_cli/datasets/data-files/ie_2023.csv b/fiboa_cli/datasets/data-files/ie_2023.csv new file mode 100644 index 00000000..ebffeffe --- /dev/null +++ b/fiboa_cli/datasets/data-files/ie_2023.csv @@ -0,0 +1,178 @@ +original_name,HCAT3_name,HCAT3_code +Access Road / Roadways,not_known_and_other,3399000000 +Agroforestry (<400 trees per hectare),tree_wood_forest,3306000000 +Alfalfa,alfalfa_lucerne,3301090301 +Apples,apples,3303010200 +Arable Habitat,arable_crops,3301000000 +Arable Silage (Grass),pasture_meadow_grassland_grass,3302000000 +Arable Silage (No Grass),other_arable_land_crops,3301990000 +Artichoke,artichoke,3301270000 +Asparagus,asparagus,3301200000 +Baby Leaf Spinach,spinach,3301310800 +Barley - Spring,spring_barley,3301010402 +Barley - Winter,winter_barley,3301010401 +Basil,basil,3301061207 +Beans - Spring,beans,3301020100 +Beans - Winter,beans,3301020100 +Beetroot,beetroot_beets,3301290200 +Blackberries,blackberry,3303020200 +Blackcurrants,blackcurrant_cassis,3303020300 +Blueberries,blueberry,3303020400 +Bog,not_known_and_other,3399000000 +Borage,borage,3301061209 +Broccoli - Spring,broccoli,3301210202 +Broccoli - Winter,broccoli,3301210202 +Brussel sprouts,brussels_sprouts,3301210203 +Building,not_known_and_other,3399000000 +Cabbage - Spring,brassica_oleracea_cabbage,3301210200 +Cabbage - Winter,brassica_oleracea_cabbage,3301210200 +Calabrese,broccoli,3301210202 +Camelina,camelina,3301061500 +Carrots,carrots_daucus,3301290300 +Cauliflowers - Spring,cauliflower,3301210204 +Cauliflowers - Winter,cauliflower,3301210204 +Celeriac,celeriac,3301250100 +Celery - Spring,celery,3301250000 +Celery - Winter,celery,3301250000 +Cherries,cherry_cherries,3303010400 +Christmas Trees,other_tree_wood_forest,3306990000 +Clover,clover,3301090303 +Copse,tree_wood_forest,3306000000 +Coriander,coriander,3301061215 +Courgettes,zucchini_courgette,3301140600 +Cucumbers,cucumber_pickle,3301140100 +Daffodils,narcissus_daffodil,3301083300 +Designated Habitat,not_known_and_other,3399000000 +Environmental Management Of Arable Fallow,fallow_land_not_crop,3301110000 +Extensively Grazed Pasture,pasture_meadow_grassland_grass,3302000000 +Fallow,fallow_land_not_crop,3301110000 +Farm Road,not_known_and_other,3399000000 +Farmyard,not_known_and_other,3399000000 +Fennel,fennel,3301170000 +Flax,flax_linseed,3301060700 +Fodder Beet,mangelwurzel_fodder_beet,3301290400 +Foliage,tree_wood_forest,3306000000 +Forage Rape,rapeseed_rape,3301060400 +Forestry,tree_wood_forest,3306000000 +Forestry 2022,tree_wood_forest,3306000000 +Forestry 2023,tree_wood_forest,3306000000 +Forestry Eligible,tree_wood_forest,3306000000 +Forestry ESB Corridor,tree_wood_forest,3306000000 +Forestry ESB Corridor Eligible,tree_wood_forest,3306000000 +Forestry ESB Corridor Ineligible,tree_wood_forest,3306000000 +Forestry Ineligible,tree_wood_forest,3306000000 +Forestry Pre-2009,tree_wood_forest,3306000000 +Forestry Setaside,tree_wood_forest,3306000000 +Gardens,kitchen_gardens,3301120000 +Garlic,garlic,3301220200 +Glasshouse,greenhouse_foil_film,3305000000 +Gooseberries,gooseberry_gooseberries_cranberries,3303020700 +Grapes,vineyards_wine_vine_rebland_grapes,3303060000 +Grass Seed,temporary_grass,3301090100 +Grass Year 1,temporary_grass,3301090100 +Grass Year 1 (MSS Eco-Scheme),temporary_grass,3301090100 +Grass Year 1 (MSS Measure),temporary_grass,3301090100 +Grass Year 1 (MSS),temporary_grass,3301090100 +Grass Year 2,temporary_grass,3301090100 +Grass Year 2 (MSS),temporary_grass,3301090100 +Grass Year 3,temporary_grass,3301090100 +Grass Year 3 (MSS),temporary_grass,3301090100 +Grass Year 4,temporary_grass,3301090100 +Grass Year 4 (MSS),temporary_grass,3301090100 +Grass Year 5,temporary_grass,3301090100 +Grass Year 5 (MSS),temporary_grass,3301090100 +Grassmeal,temporary_grass,3301090100 +Habitat,not_known_and_other,3399000000 +Hemp for Food Use,hemp_cannabis,3301061000 +Hemp for Industrial Use,hemp_cannabis,3301061000 +Inactive,not_known_and_other,3399000000 +Invalid Crop,not_known_and_other,3399000000 +Kale,kale,3301210208 +Lake / Waterway / Pond,not_known_and_other,3399000000 +Leeks - Spring,leek,3301220300 +Leeks - Winter,leek,3301220300 +Lettuce,salads_lettuce_leaf_vegetables,3301310000 +Linnet Habitat,not_known_and_other,3399000000 +Linseed,flax_linseed,3301060700 +Loganberries,berries_berry_species,3303020000 +Low Input Grassland,pasture_meadow_grassland_grass,3302000000 +Low Input Peat Grassland,pasture_meadow_grassland_grass,3302000000 +Low Input Permanent Pasture,pasture_meadow_grassland_grass,3302000000 +Lucerne,alfalfa_lucerne,3301090301 +Lupins,sweet_lupins,3301020700 +Maize,grain_maize_corn_popcorn,3301010600 +Management of Environmental Fallow (horticulture),fallow_land_not_crop,3301110000 +Management of intensive grassland next to a watercourse,pasture_meadow_grassland_grass,3302000000 +Millet,millet_sorghum,3301010900 +Mint,mints_peppermint,3301061222 +Miscanthus Sinensis,miscanthus_silvergrass,3301083000 +Mixed Cropping,arable_crops,3301000000 +Mustard,mustard,3301210100 +Nursery,nurseries_nursery,3303070000 +Oats - Spring,spring_oats,3301010502 +Oats - Winter,winter_oats,3301010501 +Oilseed Rape - Spring,spring_rapeseed_rape,3301060402 +Oilseed Rape - Winter,winter_rapeseed_rape,3301060401 +Onions,onions,3301220400 +Orchard,orchards_fruits,3303010000 +Other cut flower / bulb crops,unspecified_flowers_ornamental_plants,3301089800 +Pak Choi,bok_choy_pak_choi,3301210201 +Parsley,parsly,3301061227 +Parsnips,parsnips,3301290500 +Pears,pears,3303011200 +Peas,peas,3301020600 +Peppers,capsicum,3301300000 +Permanent Pasture,pasture_meadow_grassland_grass,3302000000 +Permanent Pasture (MSS Eco-Scheme 2023),pasture_meadow_grassland_grass,3302000000 +Permanent Pasture (MSS Measure),pasture_meadow_grassland_grass,3302000000 +Permanent Pasture (MSS),pasture_meadow_grassland_grass,3302000000 +Perpetual Spinach,spinach,3301310800 +Planted Buffer Zone,not_known_and_other,3399000000 +Plums,plums,3303011300 +Potatoes - Early,potatoes,3301030000 +Potatoes - Maincrop,potatoes,3301030000 +Potatoes - Seed,potatoes,3301030000 +Protein/Cereal Mix 50/50,legumes_dried_pulses_protein_crops,3301020000 +Pumpkins,pumpkin_squash_gourd,3301140400 +Quarry,not_known_and_other,3399000000 +Quinoa,quinoa,3301150300 +Raspberries,raspberry_raspberries,3303021000 +Recreational Area,not_known_and_other,3399000000 +Red Clover,clover,3301090303 +Redcurrants,redcurrant,3303021100 +Reed Canary Grass,poaceae_grasses,3301090200 +Rhubarb,rhubarb,3301230000 +Riparian Buffer Zone - Arable,not_known_and_other,3399000000 +Riparian Buffer Zone - Grassland,pasture_meadow_grassland_grass,3302000000 +Riparian Zone,not_known_and_other,3399000000 +Rocket,rocket_arugula,3301310600 +Rocky Outcrop,not_known_and_other,3399000000 +Rosemary,rosemary,3301061230 +Rye,rye,3301010300 +Scallions,scallion,3301220500 +Scrub,shrubberries_shrubs,3303080000 +Shallot,shallot,3301220600 +Short Rotation Coppice,tree_wood_forest,3306000000 +Soya Bean,soy_soybeans,3301160000 +Squash,pumpkin_squash_gourd,3301140400 +Strawberries,strawberries,3301130000 +Sugar Beet,sugar_beet,3301290700 +Sunflower,sunflower,3301060500 +Swede,swede_rutabaga,3301210500 +Sweetcorn,grain_maize_corn_popcorn,3301010600 +Thyme,thyme,3301061237 +Tomatoes,tomato,3301280000 +Traditional Hay Meadow,pasture_meadow_grassland_grass,3302000000 +Tree belts for ammonia capture from farmyards,tree_wood_forest,3306000000 +Triticale - Spring,spring_triticale,3301010802 +Triticale - Winter,winter_triticale,3301010801 +Tulips,tulips,3301084900 +Turnips,turnips,3301290800 +Unknown,not_known_and_other,3399000000 +Vetch,vetches,3301090305 +Wheat - Spring,spring_common_soft_wheat,3301010102 +Wheat - Winter,winter_common_soft_wheat,3301010101 +Wild Bird Cover,not_known_and_other,3399000000 +Willow,willows_osiers,3306080000 +Winter Bird Food Plot,not_known_and_other,3399000000 +Woodland,tree_wood_forest,3306000000 diff --git a/fiboa_cli/datasets/data-files/jecam_crop.csv b/fiboa_cli/datasets/data-files/jecam_crop.csv new file mode 100644 index 00000000..f2080a2a --- /dev/null +++ b/fiboa_cli/datasets/data-files/jecam_crop.csv @@ -0,0 +1,106 @@ +crop_name +Agricultural bare soil +Albizia gummifera +Annual crop +Apple tree +Asparagus +Avocado tree +Banana +Barley +Bean +Beet +Bissap +Brede +Cabbage +Cape mahogany +Carrot +Cash woody crop +Cashew tree +Cashew +Cassava +Casava +Cauliflower and brocoli +Cereals +Citrus tree +Citrus +Coffee +Cordia Africana +Cotton +Coton +Cowpea +Croton +Cucumber +Cucurbit +Cyprus +Eggplant +Eucalyptus +Fallow +Fibre crop +Ficus lutea +Fodder +Forest plantation +Fruit crop +Fruit-bearing vegetable +Gabon tulip tree +Goat tree +Gombo +Goyava +Grasses and other fodder crop +Grevillea +Groundnut +Hibiscus +Jatropha +Leafy or stem vegetable +Macadamia tree +Maize +Mango tree +Mango +Market gardening +Mid fallow +Millet +Mixed annual crops +Mixed Cereals +Napier grass +NULL +Oat +Oilseed crop +Old fallow +Onion +Orange tree +Other crop +Papaya tree +Palm +Pea +Peach tree +Pear tree +Pine +Pineapple +Potato +Ravintsara +Rice +Root +Root, bulb or tuberous vegetable +Root/tuber crop with high starch or inulin content +Rubber +Sanio +Sapodilla tree +Sesame +Sorghum +Soybean +Sugarcane +Sunflower +Sweet potato +Taro +Tea +Tomato +Vegetable and root +Vegetables +Vineyard +Watermelon +Wattle tree +Weakly vegetated agricultural +Wheat +Wild radish +Woodlot +Young fallow +Zucchini diff --git a/fiboa_cli/datasets/de_sax.py b/fiboa_cli/datasets/de_sax.py index 055f47a9..5412f708 100644 --- a/fiboa_cli/datasets/de_sax.py +++ b/fiboa_cli/datasets/de_sax.py @@ -21,7 +21,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} columns = { "geometry": "geometry", - "FB_FLIK": ["id", "flik"], + "FB_FLIK": ("id", "flik"), "JAHR": "determination:datetime", "FB_A_FLAE": "metrics:area", "FB_BN_KAT": "FB_BN_KAT", diff --git a/fiboa_cli/datasets/de_sh.py b/fiboa_cli/datasets/de_sh.py index a3fc84b8..dcc2818c 100644 --- a/fiboa_cli/datasets/de_sh.py +++ b/fiboa_cli/datasets/de_sh.py @@ -16,7 +16,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): columns = { "geometry": "geometry", "fachguelti": "determination:datetime", - "FLIK": ["flik", "id"], + "FLIK": ("flik", "id"), "Flaeche": "metrics:area", "HBN": "hbn", } diff --git a/tests/test_convert.py b/tests/test_convert.py index b88898f0..c634e849 100644 --- a/tests/test_convert.py +++ b/tests/test_convert.py @@ -20,6 +20,7 @@ "be_vlg", "br_ba_lem", "de_sh", + "de_bb", "ec_lv", "ec_si", "fi", @@ -94,6 +95,6 @@ def load_ec(csv_file=None, url=None): ValidateData().validate(tmp_parquet_file) df = pq.read_table(tmp_parquet_file).to_pandas() - if "metrics:area" in df.columns: + if "metrics:area" in df.columns and converter not in ("de_bb",): # Check for accidental hectare conversion; fields should be more than 10 square meters assert (df["metrics:area"] > 10).all() From ad45f2d56f1d3a147538343b572ca30fa94048f7 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:52:30 +0200 Subject: [PATCH 06/23] Support HCAT mapping CSV files without crop_code --- fiboa_cli/datasets/commons/hcat.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index 0df5e929..a04728ed 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -17,7 +17,7 @@ class AddHCATMixin: ec_mapping_csv: Optional[str] = None # TODO rename to hcat_mapping_csv mapping_file = None - ec_mapping: Optional[dict] = None # TODO rename to hcat_mapping + ec_mapping: Optional[list[dict]] = None # TODO rename to hcat_mapping hcat_columns = { "hcat:name_en": "hcat:name_en", @@ -38,11 +38,11 @@ def convert(self, *args, **kwargs): ) return super().convert(*args, **kwargs) - def get_code_column(self, gdf): + def get_code_column(self, gdf, code="crop:code"): try: - attribute = next(k for k, v in self.columns.items() if v == "crop:code") + attribute = next(k for k, v in self.columns.items() if v == code) except StopIteration: - raise Exception(f"Misssing crop:code column in converter {self.__class__.__name__}") + raise Exception(f"Misssing {code} column in converter {self.__class__.__name__}") col = gdf[attribute] # Should be corrected in original parser return col if col.dtype == "object" else col.astype(str) @@ -56,15 +56,23 @@ def add_hcat(self, gdf): if self.ec_mapping is None: self.ec_mapping = load_ec_mapping(self.ec_mapping_csv, url=self.mapping_file) - crop_code_col = self.get_code_column(gdf) + + from_code = "orginal_code" + if from_code not in self.ec_mapping[0]: + # Some code lists have no code, only a crop_name + from_code = "original_name" + crop_code_col = self.get_code_column(gdf, "crop:name") + else: + crop_code_col = self.get_code_column(gdf) def map_to(attribute): - return {e["original_code"]: e[attribute] for e in self.ec_mapping} + return {e[from_code]: e[attribute] for e in self.ec_mapping} for k, v in zip( self.hcat_columns.keys(), ("translated_name", "HCAT3_name", "HCAT3_code") ): - gdf[k] = crop_code_col.map(map_to(v)) + if v in self.ec_mapping[0]: + gdf[k] = crop_code_col.map(map_to(v)) if "crop:code_list" not in gdf.columns: gdf["crop:code_list"] = ( From b8befd711664396c61abafeecaf275490580b59e Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 10:57:38 +0200 Subject: [PATCH 07/23] Update Changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 06504361..71f489cf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +- Support HCAT mapping CSV files without crop_code +- Split Germany BB and NDS in block dataset and crop fields +- Add HCAT to datasets where possible +- Updated years & variants for at_crop, be_vlg, es_an, es_cl, es_pv, ie, pt, se - Fix to vecorel: converter.license and provider should be string - Added a Dockerfile to simplify working with fiboa - Command `fiboa publish` to automate source coop publication process From f99b41bc1c13c04f1329f1c824734a85e0ed2585 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 13:13:45 +0200 Subject: [PATCH 08/23] Rename at_crop and nl_crop to default at/nl, and blocks to at_block/nl_block --- fiboa_cli/datasets/at.py | 55 ++++++------- fiboa_cli/datasets/at_block.py | 44 +++++++++++ fiboa_cli/datasets/at_crop.py | 47 ----------- fiboa_cli/datasets/nl.py | 73 ++++++++++++------ fiboa_cli/datasets/nl_block.py | 46 +++++++++++ fiboa_cli/datasets/nl_crop.py | 69 ----------------- .../convert/{at_crop => at}/at_2021.csv | 0 .../inspire_schlaege_2025-1_polygon.gpkg.zip | Bin .../inspire_referenzen_2021_polygon.gpkg.zip | Bin .../brpgewaspercelen_definitief_2023.gpkg | Bin .../{nl => nl_block}/referentiepercelen.gpkg | Bin tests/test_convert.py | 7 +- 12 files changed, 171 insertions(+), 170 deletions(-) create mode 100644 fiboa_cli/datasets/at_block.py delete mode 100644 fiboa_cli/datasets/at_crop.py create mode 100644 fiboa_cli/datasets/nl_block.py delete mode 100644 fiboa_cli/datasets/nl_crop.py rename tests/data-files/convert/{at_crop => at}/at_2021.csv (100%) rename tests/data-files/convert/{at_crop => at}/inspire_schlaege_2025-1_polygon.gpkg.zip (100%) rename tests/data-files/convert/{at => at_block}/inspire_referenzen_2021_polygon.gpkg.zip (100%) rename tests/data-files/convert/{nl_crop => nl}/brpgewaspercelen_definitief_2023.gpkg (100%) rename tests/data-files/convert/{nl => nl_block}/referentiepercelen.gpkg (100%) diff --git a/fiboa_cli/datasets/at.py b/fiboa_cli/datasets/at.py index ec2baee1..777f1d76 100644 --- a/fiboa_cli/datasets/at.py +++ b/fiboa_cli/datasets/at.py @@ -1,44 +1,47 @@ from vecorel_cli.conversion.admin import AdminConverterMixin -from fiboa_cli.conversion.fiboa_converter import FiboaBaseConverter +from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.ec import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = { - "https://inspire.lfrz.gv.at/009501/ds/inspire_referenzen_2021_polygon.gpkg.zip": [ - "INSPIRE_REFERENZEN_2021_POLYGON.gpkg" - ] +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + variants = { + "2025": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2025-1_polygon.gpkg.zip", + "2024": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2024-2_polygon.gpkg.zip", + "2023": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2023-2_polygon.gpkg.zip", + "2022": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2022_polygon.gpkg.zip", + "2021": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2021_polygon.gpkg.zip", + "2020": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2020_polygon.gpkg.zip", + "2019": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2019_polygon.gpkg.zip", + "2018": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2018_polygon.gpkg.zip", } + id = "at" country = "AT" short_name = "Austria" title = "Field boundaries for Austria" description = """ - **Field boundaries for Austria - INVEKOS Referenzen Österreich 2021.** - - The layer includes all reference parcels ("Referenzparzellen") defined by the paying agency Agrarmarkt Austria and recorded landscape elements (landscape element layers) within the meaning of Art. 5 of Regulation (EU) No. 640/2014 and Regulation of the competent federal ministry with horizontal rules for the area of the Common Agricultural Policy (Horizontal CAP Regulation) StF: Federal Law Gazette II No. 100/2015. + **Crop Field boundaries for Austria - INVEKOS Schläge Österreich 2025.** - Reference parcel: is the physical block that can be clearly delimited from the outside (e.g. forest, roads, water bodies) and is formed by contiguous agricultural areas that are recognizable in nature. + This layer includes all field uses recorded by the applicants, which serve as the basis for the funding process. A field + is a contiguous area of a piece of land that is cultivated for a growing season with only one crop (field use type) and + uniform management requirements or as a landscape element type in accordance with Annex 1 of the regulation of the responsible + Federal Ministry with horizontal rules for the area of the Common Agricultural Policy (Horizontal CAP Regulation) + StF: BGBl. II No. 100/2015 or is simply maintained in good agricultural and ecological condition in accordance with + Art. 94 of Regulation (EU) No. 1306/2013 and is digitized in the GIS as a polygon or as a point. """ provider = "Agrarmarkt Austria " license = "CC-BY-4.0" columns = { - "geometry": "geometry", - "RFL_ID": "id", - "REF_ART": "ref_art", - "BRUTTOFLAECHE_HA": "metrics:area", + "GEO_ID": "id", "INSPIRE_ID": "inspire:id", - "REF_ART_BEZEICHNUNG": "ref_art_bezeichnung", - "REFERENZ_KENNUNG": "referenz_kennung", - "FART_ID": "fart_id", - "GEO_DATERF": "determination:datetime", + "geometry": "geometry", + "SNAR_CODE": "crop:code", + "SNAR_BEZEICHNUNG": "crop:name", + "SL_FLAECHE_BRUTTO_HA": "metrics:area", + "GEOM_DATE_CREATED": "determination:datetime", } - extensions = {"https://fiboa.org/inspire-extension/v0.3.0/schema.yaml"} - missing_schemas = { - "properties": { - "ref_art": {"type": "string"}, - "ref_art_bezeichnung": {"type": "string"}, - "referenz_kennung": {"type": "uint64"}, - "fart_id": {"type": "uint32"}, - } + ec_mapping_csv = "at_2021.csv" + extensions = { + "https://fiboa.org/inspire-extension/v0.3.0/schema.yaml", } diff --git a/fiboa_cli/datasets/at_block.py b/fiboa_cli/datasets/at_block.py new file mode 100644 index 00000000..9a89c6dc --- /dev/null +++ b/fiboa_cli/datasets/at_block.py @@ -0,0 +1,44 @@ +from vecorel_cli.conversion.admin import AdminConverterMixin + +from fiboa_cli.conversion.fiboa_converter import FiboaBaseConverter + + +class Converter(AdminConverterMixin, FiboaBaseConverter): + sources = { + "https://inspire.lfrz.gv.at/009501/ds/inspire_referenzen_2021_polygon.gpkg.zip": [ + "INSPIRE_REFERENZEN_2021_POLYGON.gpkg" + ] + } + id = "at_block" + country = "AT" + short_name = "Austria" + title = "Field boundaries for Austria" + description = """ + **Field boundaries for Austria - INVEKOS Referenzen Österreich 2021.** + + The layer includes all reference parcels ("Referenzparzellen") defined by the paying agency Agrarmarkt Austria and recorded landscape elements (landscape element layers) within the meaning of Art. 5 of Regulation (EU) No. 640/2014 and Regulation of the competent federal ministry with horizontal rules for the area of the Common Agricultural Policy (Horizontal CAP Regulation) StF: Federal Law Gazette II No. 100/2015. + + Reference parcel: is the physical block that can be clearly delimited from the outside (e.g. forest, roads, water bodies) and is formed by contiguous agricultural areas that are recognizable in nature. + """ + provider = "Agrarmarkt Austria " + license = "CC-BY-4.0" + columns = { + "geometry": "geometry", + "RFL_ID": "id", + "REF_ART": "ref_art", + "BRUTTOFLAECHE_HA": "metrics:area", + "INSPIRE_ID": "inspire:id", + "REF_ART_BEZEICHNUNG": "ref_art_bezeichnung", + "REFERENZ_KENNUNG": "referenz_kennung", + "FART_ID": "fart_id", + "GEO_DATERF": "determination:datetime", + } + extensions = {"https://fiboa.org/inspire-extension/v0.3.0/schema.yaml"} + missing_schemas = { + "properties": { + "ref_art": {"type": "string"}, + "ref_art_bezeichnung": {"type": "string"}, + "referenz_kennung": {"type": "uint64"}, + "fart_id": {"type": "uint32"}, + } + } diff --git a/fiboa_cli/datasets/at_crop.py b/fiboa_cli/datasets/at_crop.py deleted file mode 100644 index fb4a5bcf..00000000 --- a/fiboa_cli/datasets/at_crop.py +++ /dev/null @@ -1,47 +0,0 @@ -from vecorel_cli.conversion.admin import AdminConverterMixin - -from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import AddHCATMixin - - -class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): - variants = { - "2025": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2025-1_polygon.gpkg.zip", - "2024": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2024-2_polygon.gpkg.zip", - "2023": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2023-2_polygon.gpkg.zip", - "2022": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2022_polygon.gpkg.zip", - "2021": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2021_polygon.gpkg.zip", - "2020": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2020_polygon.gpkg.zip", - "2019": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2019_polygon.gpkg.zip", - "2018": "https://inspire.lfrz.gv.at/009501/ds/inspire_schlaege_2018_polygon.gpkg.zip", - } - - id = "at_crop" - country = "AT" - short_name = "Austria" - title = "Field boundaries for Austria" - description = """ - **Crop Field boundaries for Austria - INVEKOS Schläge Österreich 2025.** - - This layer includes all field uses recorded by the applicants, which serve as the basis for the funding process. A field - is a contiguous area of a piece of land that is cultivated for a growing season with only one crop (field use type) and - uniform management requirements or as a landscape element type in accordance with Annex 1 of the regulation of the responsible - Federal Ministry with horizontal rules for the area of the Common Agricultural Policy (Horizontal CAP Regulation) - StF: BGBl. II No. 100/2015 or is simply maintained in good agricultural and ecological condition in accordance with - Art. 94 of Regulation (EU) No. 1306/2013 and is digitized in the GIS as a polygon or as a point. - """ - provider = "Agrarmarkt Austria " - license = "CC-BY-4.0" - columns = { - "GEO_ID": "id", - "INSPIRE_ID": "inspire:id", - "geometry": "geometry", - "SNAR_CODE": "crop:code", - "SNAR_BEZEICHNUNG": "crop:name", - "SL_FLAECHE_BRUTTO_HA": "metrics:area", - "GEOM_DATE_CREATED": "determination:datetime", - } - ec_mapping_csv = "at_2021.csv" - extensions = { - "https://fiboa.org/inspire-extension/v0.3.0/schema.yaml", - } diff --git a/fiboa_cli/datasets/nl.py b/fiboa_cli/datasets/nl.py index e4c65162..a9e49177 100644 --- a/fiboa_cli/datasets/nl.py +++ b/fiboa_cli/datasets/nl.py @@ -1,46 +1,69 @@ +import pandas as pd from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.ec import ec_url +# see https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/basisregistratie_gewaspercelen_brp.xml +base = "https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/downloads" -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = ( - "https://service.pdok.nl/rvo/referentiepercelen/atom/downloads/referentiepercelen.gpkg" - ) + +class NLCropConverter(AdminConverterMixin, FiboaBaseConverter): + area_calculate_missing = True + variants = { + "2025": f"{base}/brpgewaspercelen_concept_2025.gpkg", + **{str(y): f"{base}/brpgewaspercelen_definitief_{y}.gpkg" for y in range(2024, 2020, -1)}, + **{str(y): f"{base}/brpgewaspercelen_definitief_{y}.zip" for y in range(2020, 2009, -1)}, + } id = "nl" - short_name = "Netherlands" - title = "Field boundaries for The Netherlands" + short_name = "Netherlands (Crops)" + title = "BRP Crop Field Boundaries for The Netherlands (CAP-based)" description = """ - A field block (Dutch: "Referentieperceel"), formerly known as "AAN" (Agrarisch Areaal Nederland), - is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or - more farmers with one or more crops, is fully or partially set aside or is fully or partially - taken out of production. + BasisRegistratie Percelen (BRP) combines the location of + agricultural plots with the crop grown. The data set + is published by RVO (Netherlands Enterprise Agency). The boundaries of the agricultural plots + are based within the reference parcels (formerly known as AAN). A user an agricultural plot + annually has to register his crop fields with crops (for the Common Agricultural Policy scheme). + A dataset is generated for each year with reference date May 15. + A view service and a download service are available for the most recent BRP crop plots. - The following field block types exist: + - - Woods (Hout) - - Agricultural area (Landbouwgrond) - - Other (Overig) - - Water (Water) - - We filter on "Agricultural area" in this converter. - For crop data, look at BasisRegistratie gewasPercelen (BRP) + Data is currently available for the years 2009 to 2024. """ - provider = "RVO / PDOK " + provider = ( + "RVO / PDOK " + ) # Both http://creativecommons.org/publicdomain/zero/1.0/deed.nl and http://creativecommons.org/publicdomain/mark/1.0/ license = "CC0-1.0" - column_additions = {"determination:datetime": "2023-06-15T00:00:00Z"} - columns = {"geometry": "geometry", "id": "id", "area": "metrics:area", "versiebron": "source"} + + columns = { + "geometry": "geometry", + "id": "id", + "area": "metrics:area", + "category": "coverage", + "gewascode": "crop:code", + "gewas": "crop:name", + "jaar": "determination:datetime", + } + column_filters = { - # type = "Hout" | "Landbouwgrond" | "Overig" | "Water" - "type": lambda col: col == "Landbouwgrond" + # category = "Grasland" | "Bouwland" | "Sloot" | "Landschapselement" + "category": lambda col: col.isin(["Grasland", "Bouwland"]) + } + + column_migrations = { + # Add 15th of may to original "year" (jaar) column + "jaar": lambda col: pd.to_datetime(col, format="%Y") + pd.DateOffset(months=4, days=14) } + extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} + column_additions = {"crop:code_list": ec_url("nl_2020.csv")} index_as_id = True - area_calculate_missing = True + missing_schemas = { "properties": { - "source": {"type": "string"}, + "coverage": {"type": "string", "enum": ["Grasland", "Bouwland"]}, } } diff --git a/fiboa_cli/datasets/nl_block.py b/fiboa_cli/datasets/nl_block.py new file mode 100644 index 00000000..fbf30369 --- /dev/null +++ b/fiboa_cli/datasets/nl_block.py @@ -0,0 +1,46 @@ +from vecorel_cli.conversion.admin import AdminConverterMixin + +from ..conversion.fiboa_converter import FiboaBaseConverter + + +class Converter(AdminConverterMixin, FiboaBaseConverter): + sources = ( + "https://service.pdok.nl/rvo/referentiepercelen/atom/downloads/referentiepercelen.gpkg" + ) + + id = "nl_block" + short_name = "Netherlands" + title = "Field blocks for The Netherlands" + description = """ + A field block (Dutch: "Referentieperceel"), formerly known as "AAN" (Agrarisch Areaal Nederland), + is a contiguous agricultural area surrounded by permanent boundaries, which is cultivated by one or + more farmers with one or more crops, is fully or partially set aside or is fully or partially + taken out of production. + + The following field block types exist: + + - Woods (Hout) + - Agricultural area (Landbouwgrond) + - Other (Overig) + - Water (Water) + + We filter on "Agricultural area" in this converter. + For crop data, look at BasisRegistratie gewasPercelen (BRP) + """ + + provider = "RVO / PDOK " + # Both http://creativecommons.org/publicdomain/zero/1.0/deed.nl and http://creativecommons.org/publicdomain/mark/1.0/ + license = "CC0-1.0" + column_additions = {"determination:datetime": "2023-06-15T00:00:00Z"} + columns = {"geometry": "geometry", "id": "id", "area": "metrics:area", "versiebron": "source"} + column_filters = { + # type = "Hout" | "Landbouwgrond" | "Overig" | "Water" + "type": lambda col: col == "Landbouwgrond" + } + index_as_id = True + area_calculate_missing = True + missing_schemas = { + "properties": { + "source": {"type": "string"}, + } + } diff --git a/fiboa_cli/datasets/nl_crop.py b/fiboa_cli/datasets/nl_crop.py deleted file mode 100644 index 2136722f..00000000 --- a/fiboa_cli/datasets/nl_crop.py +++ /dev/null @@ -1,69 +0,0 @@ -import pandas as pd -from vecorel_cli.conversion.admin import AdminConverterMixin - -from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url - -# see https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/basisregistratie_gewaspercelen_brp.xml -base = "https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/downloads" - - -class NLCropConverter(AdminConverterMixin, FiboaBaseConverter): - area_calculate_missing = True - variants = { - "2025": f"{base}/brpgewaspercelen_concept_2025.gpkg", - **{str(y): f"{base}/brpgewaspercelen_definitief_{y}.gpkg" for y in range(2024, 2020, -1)}, - **{str(y): f"{base}/brpgewaspercelen_definitief_{y}.zip" for y in range(2020, 2009, -1)}, - } - - id = "nl_crop" - short_name = "Netherlands (Crops)" - title = "BRP Crop Field Boundaries for The Netherlands (CAP-based)" - description = """ - BasisRegistratie Percelen (BRP) combines the location of - agricultural plots with the crop grown. The data set - is published by RVO (Netherlands Enterprise Agency). The boundaries of the agricultural plots - are based within the reference parcels (formerly known as AAN). A user an agricultural plot - annually has to register his crop fields with crops (for the Common Agricultural Policy scheme). - A dataset is generated for each year with reference date May 15. - A view service and a download service are available for the most recent BRP crop plots. - - - - Data is currently available for the years 2009 to 2024. - """ - - provider = ( - "RVO / PDOK " - ) - # Both http://creativecommons.org/publicdomain/zero/1.0/deed.nl and http://creativecommons.org/publicdomain/mark/1.0/ - license = "CC0-1.0" - - columns = { - "geometry": "geometry", - "id": "id", - "area": "metrics:area", - "category": "coverage", - "gewascode": "crop:code", - "gewas": "crop:name", - "jaar": "determination:datetime", - } - - column_filters = { - # category = "Grasland" | "Bouwland" | "Sloot" | "Landschapselement" - "category": lambda col: col.isin(["Grasland", "Bouwland"]) - } - - column_migrations = { - # Add 15th of may to original "year" (jaar) column - "jaar": lambda col: pd.to_datetime(col, format="%Y") + pd.DateOffset(months=4, days=14) - } - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("nl_2020.csv")} - index_as_id = True - - missing_schemas = { - "properties": { - "coverage": {"type": "string", "enum": ["Grasland", "Bouwland"]}, - } - } diff --git a/tests/data-files/convert/at_crop/at_2021.csv b/tests/data-files/convert/at/at_2021.csv similarity index 100% rename from tests/data-files/convert/at_crop/at_2021.csv rename to tests/data-files/convert/at/at_2021.csv diff --git a/tests/data-files/convert/at_crop/inspire_schlaege_2025-1_polygon.gpkg.zip b/tests/data-files/convert/at/inspire_schlaege_2025-1_polygon.gpkg.zip similarity index 100% rename from tests/data-files/convert/at_crop/inspire_schlaege_2025-1_polygon.gpkg.zip rename to tests/data-files/convert/at/inspire_schlaege_2025-1_polygon.gpkg.zip diff --git a/tests/data-files/convert/at/inspire_referenzen_2021_polygon.gpkg.zip b/tests/data-files/convert/at_block/inspire_referenzen_2021_polygon.gpkg.zip similarity index 100% rename from tests/data-files/convert/at/inspire_referenzen_2021_polygon.gpkg.zip rename to tests/data-files/convert/at_block/inspire_referenzen_2021_polygon.gpkg.zip diff --git a/tests/data-files/convert/nl_crop/brpgewaspercelen_definitief_2023.gpkg b/tests/data-files/convert/nl/brpgewaspercelen_definitief_2023.gpkg similarity index 100% rename from tests/data-files/convert/nl_crop/brpgewaspercelen_definitief_2023.gpkg rename to tests/data-files/convert/nl/brpgewaspercelen_definitief_2023.gpkg diff --git a/tests/data-files/convert/nl/referentiepercelen.gpkg b/tests/data-files/convert/nl_block/referentiepercelen.gpkg similarity index 100% rename from tests/data-files/convert/nl/referentiepercelen.gpkg rename to tests/data-files/convert/nl_block/referentiepercelen.gpkg diff --git a/tests/test_convert.py b/tests/test_convert.py index c634e849..3f94c0de 100644 --- a/tests/test_convert.py +++ b/tests/test_convert.py @@ -16,7 +16,7 @@ tests = [ "at", - "at_crop", + "at_block", "be_vlg", "br_ba_lem", "de_sh", @@ -27,7 +27,7 @@ "fr", "hr", "nl", - "nl_crop", + "nl_block", "pt", "dk", "be_wal", @@ -57,7 +57,8 @@ def _input_files(converter, *names): extra_convert_parameters = { "ai4sf": _input_files("ai4sf", "1_vietnam_areas.gpkg", "4_cambodia_areas.gpkg"), - "nl_crop": {"variant": "2023"}, + "nl": {"variant": "2023"}, + "se": {"variant": "2023"}, "be_vlg": {"variant": "2023"}, "br_ba_lem": _input_files("br_ba_lem", "LEM_dataset.zip"), "ch": _input_files("ch", "lwb_nutzungsflaechen_v2_0_lv95.gpkg"), From 949f753d4e37ae74026c8adc8ef0a04d57ba3cb0 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sat, 25 Oct 2025 13:13:53 +0200 Subject: [PATCH 09/23] Typo --- fiboa_cli/datasets/commons/hcat.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index a04728ed..21c14297 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -57,7 +57,7 @@ def add_hcat(self, gdf): if self.ec_mapping is None: self.ec_mapping = load_ec_mapping(self.ec_mapping_csv, url=self.mapping_file) - from_code = "orginal_code" + from_code = "original_code" if from_code not in self.ec_mapping[0]: # Some code lists have no code, only a crop_name from_code = "original_name" From d6b194681860ab56d5fc142cde20bb7972672f33 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Wed, 29 Oct 2025 22:06:37 +0100 Subject: [PATCH 10/23] Fix tests --- fiboa_cli/datasets/ec_nl_crop.py | 2 +- tests/data-files/convert/ie/GSAA_2024.zip | Bin 0 -> 79818 bytes tests/data-files/convert/ie/IACS_GSAA_2022.zip | Bin 52768 -> 0 bytes tests/test_publish.py | 4 ++-- 4 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 tests/data-files/convert/ie/GSAA_2024.zip delete mode 100644 tests/data-files/convert/ie/IACS_GSAA_2022.zip diff --git a/fiboa_cli/datasets/ec_nl_crop.py b/fiboa_cli/datasets/ec_nl_crop.py index 3fb0a82c..c81c57d1 100644 --- a/fiboa_cli/datasets/ec_nl_crop.py +++ b/fiboa_cli/datasets/ec_nl_crop.py @@ -1,5 +1,5 @@ from .commons.ec import EuroCropsConverterMixin -from .nl_crop import NLCropConverter +from .nl import NLCropConverter class NLEuroCropConverter(EuroCropsConverterMixin, NLCropConverter): diff --git a/tests/data-files/convert/ie/GSAA_2024.zip b/tests/data-files/convert/ie/GSAA_2024.zip new file mode 100644 index 0000000000000000000000000000000000000000..2141fdbad42acc51ab7e454eacb81916b4bc2e11 GIT binary patch literal 79818 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 a~OTqo*K9dmL% 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 NSO5S3vdsVh008&Xsnq}g diff --git a/tests/test_publish.py b/tests/test_publish.py index 663b2c4b..cf960760 100644 --- a/tests/test_publish.py +++ b/tests/test_publish.py @@ -3,7 +3,7 @@ from fiboa_cli.publish import Publish -class TestPublish(Publish): +class PublishTest(Publish): def generate_pmtiles(self, target, file_name, parquet_file): pass @@ -22,7 +22,7 @@ def test_publish(tmp_folder): body=open(f"tests/data-files/publish/{base}-survey.md").read(), ) responses.add(rsp1) - TestPublish(converter).run( + PublishTest(converter).run( variant="2023", target=tmp_folder, cache=path, generate_meta=True, yes=True ) files = [f.name for f in tmp_folder.iterdir() if f.is_file()] From 8ef867f605edc52d568aa430ec3dfdefd5a62bf4 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Fri, 28 Nov 2025 14:18:17 +0100 Subject: [PATCH 11/23] Update datasets to proper hcat-codes --- fiboa_cli/datasets/be_wal.py | 9 ++++---- fiboa_cli/datasets/commons/hcat.py | 15 ++++++++++++- fiboa_cli/datasets/de_mv.py | 32 +++++++++------------------ fiboa_cli/datasets/de_nrw.py | 9 ++++---- fiboa_cli/datasets/fi.py | 2 +- fiboa_cli/datasets/hr.py | 7 +++++- tests/data-files/stac-collection.json | 2 +- 7 files changed, 41 insertions(+), 35 deletions(-) diff --git a/fiboa_cli/datasets/be_wal.py b/fiboa_cli/datasets/be_wal.py index 3ce07c39..94ad8452 100644 --- a/fiboa_cli/datasets/be_wal.py +++ b/fiboa_cli/datasets/be_wal.py @@ -41,10 +41,6 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): column_additions = { "determination:datetime": "2022-01-01T00:00:00Z", } - column_migrations = { - "crop_code": lambda col: col.str.extract(r"\.(\d+)$", expand=False), - "crop_name": lambda col: col.str.strip(), - } index_as_id = True def layer_filter(self, layer: str, uri: str) -> bool: @@ -53,7 +49,7 @@ def layer_filter(self, layer: str, uri: str) -> bool: def file_migration( self, gdf: gpd.GeoDataFrame, path: str, uri: str, layer: str = None ) -> gpd.GeoDataFrame: - return gml_assure_columns( + gdf = gml_assure_columns( gdf, path, uri, @@ -61,3 +57,6 @@ def file_migration( crop_name={"ElementPath": "specificLandUse@title", "Type": "String", "Width": 255}, crop_code={"ElementPath": "specificLandUse@href", "Type": "String", "Width": 255}, ) + gdf["crop_code"] = gdf["crop_code"].str.extract(r"\.(\d+)$", expand=False) + gdf["crop_name"] = gdf["crop_name"].str.strip() + return gdf diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index 21c14297..06570a3a 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -3,6 +3,7 @@ from typing import Optional import geopandas as gpd +import numpy as np from vecorel_cli.vecorel.util import load_file HCAT_EXTENSION = "https://fiboa.org/hcat-extension/v0.3.0/schema.yaml" @@ -68,11 +69,21 @@ def add_hcat(self, gdf): def map_to(attribute): return {e[from_code]: e[attribute] for e in self.ec_mapping} + col = None for k, v in zip( self.hcat_columns.keys(), ("translated_name", "HCAT3_name", "HCAT3_code") ): if v in self.ec_mapping[0]: - gdf[k] = crop_code_col.map(map_to(v)) + col = crop_code_col.map(map_to(v)) + gdf[k] = col + assert np.unique(col[~col.isna()]).size > 1, "No HCAT crops mapped" + + if col is not None and col.isna().any(): + index = [ + k for k, v in self.columns.items() if v.startswith("crop:") and k in gdf.columns + ] + missing = gdf[col.isna()][index].drop_duplicates() + self.info(f"Missing codes in HCAT mapping:\n{missing}") if "crop:code_list" not in gdf.columns: gdf["crop:code_list"] = ( @@ -86,6 +97,8 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: def ec_url(csv_file): + if csv_file.startswith("https://"): + return csv_file return f"https://raw.githubusercontent.com/maja601/EuroCrops/refs/heads/main/csvs/country_mappings/{csv_file}" diff --git a/fiboa_cli/datasets/de_mv.py b/fiboa_cli/datasets/de_mv.py index 765abc37..ce62ff95 100644 --- a/fiboa_cli/datasets/de_mv.py +++ b/fiboa_cli/datasets/de_mv.py @@ -1,10 +1,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.hcat import AddHCATMixin +from .commons.hcat import CROP_EXTENSION -class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, FiboaBaseConverter): sources = { "https://www.geodaten-mv.de/dienste/gdimv_feldblock_wfs?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetFeature&TYPENAME=mv:feldbloecke&OUTPUTFORMAT=shape-zip": "gdimv_feldblock_wfs.zip" } @@ -16,8 +16,10 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): provider = "Ministerium für Landwirtschaft und Umwelt M-V " license = "No restrictions apply " - extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml"} - ec_mapping_csv = "de.csv" + extensions = {"https://fiboa.org/flik-extension/v0.2.0/schema.yaml", CROP_EXTENSION} + column_additions = {"crop:code_list": "https://fiboa.org/code/de/de_mv.csv"} + + # ec_mapping_csv = "de.csv" columns = { "geometry": "geometry", @@ -53,33 +55,21 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): missing_schemas = { "properties": { "dgl_jahr": {"type": "int16"}, - "bodennutzu": { - "type": "string", - "enum": [ - "AAF", # Aufforstung auf Ackerfläche - "AF", # Ackerfläche - "AGL", # Aufforstung auf Grünland - "AÖD", # Aufforstung auf Ödland - "DK", # Dauerkultur - "FO", # Forst - "GL", # Grünland - ], - }, "bez_kreis": {"type": "string"}, "erwind": { "type": "string", "enum": [ - "CC0", # nicht relevant für Cross Compliance - "CC1", # Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung + "0", # nicht relevant für Cross Compliance + "1", # Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung "-", # keine Angabe ], }, "erwater": { "type": "string", "enum": [ - "CC0", # nicht relevant für Cross Compliance - "CC1", # Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung (15-27,5 t/ha/a Bodenabtrag durch Wasser) - "CC2", # hohe Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung (>27,5 t/ha/a Bodenabtrag durch Wasser) + "0", # nicht relevant für Cross Compliance + "1", # Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung (15-27,5 t/ha/a Bodenabtrag durch Wasser) + "2", # hohe Erosionsgefährdung nach Direktzahlungen-Verpflichtungenverordnung (>27,5 t/ha/a Bodenabtrag durch Wasser) "-", # keine Angabe ], }, diff --git a/fiboa_cli/datasets/de_nrw.py b/fiboa_cli/datasets/de_nrw.py index e4913685..58f95c86 100644 --- a/fiboa_cli/datasets/de_nrw.py +++ b/fiboa_cli/datasets/de_nrw.py @@ -5,7 +5,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): - sources = "https://www.opengeodata.nrw.de/produkte/umwelt_klima/bodennutzung/landwirtschaft/LFK-AKTI_EPSG25832_Shape.zip" + sources = "https://www.opengeodata.nrw.de/produkte/umwelt_klima/bodennutzung/landwirtschaft/LWK-TSCHLAG_EPSG25832_Shape.zip" id = "de_nrw" admin_subdivision_code = "NW" short_name = "Germany, North Rhine-Westphalia" @@ -21,10 +21,9 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): columns = { "geometry": "geometry", "ID": "id", - "INSPIRE_ID": "inspire:id", "FLIK": "flik", - "GUELT_VON": "determination:datetime", - "NUTZ_CODE": "crop:code", - "NUTZ_TXT": "crop:name", + "BEGINLIFES": "determination:datetime", + "CODE": "crop:code", + "CODE_TXT": "crop:name", "AREA_HA": "metrics:area", } diff --git a/fiboa_cli/datasets/fi.py b/fiboa_cli/datasets/fi.py index b6d1222e..ed79c059 100644 --- a/fiboa_cli/datasets/fi.py +++ b/fiboa_cli/datasets/fi.py @@ -31,7 +31,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): # Make year (1st January) from column "VUOSI" "VUOSI": lambda col: pd.to_datetime(col, format="%Y"), } - ec_mapping_csv = "fi_2020.csv" + ec_mapping_csv = "https://fiboa.org/code/fi/fi_2023.csv" area_is_in_ha = False area_calculate_missing = True diff --git a/fiboa_cli/datasets/hr.py b/fiboa_cli/datasets/hr.py index 9f6d9d56..0ff50a75 100644 --- a/fiboa_cli/datasets/hr.py +++ b/fiboa_cli/datasets/hr.py @@ -1,3 +1,4 @@ +import geopandas as gpd from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter @@ -59,6 +60,10 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): ec_mapping_csv = "hr_2020.csv" + def migrate(self, gdf) -> gpd.GeoDataFrame: + gdf["land_use_id"] = gdf["land_use_id"].astype(int) + return super().migrate(gdf) + missing_schemas = { "required": [ "mines_status", @@ -69,7 +74,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "jpaid", ], "properties": { - "land_use_id": {"type": "double"}, + "land_use_id": {"type": "integer"}, "home_name": {"type": "string"}, "slope": {"type": "double"}, "z_avg": {"type": "double"}, diff --git a/tests/data-files/stac-collection.json b/tests/data-files/stac-collection.json index 6fc921da..fef2cb62 100644 --- a/tests/data-files/stac-collection.json +++ b/tests/data-files/stac-collection.json @@ -1,7 +1,7 @@ { "stac_version": "1.1.0", "stac_extensions": [ - "https://stac-extensions.github.io/processing/v1.1.0/schema.json" + "https://stac-extensions.github.io/processing/v1.2.0/schema.json" ], "type": "Collection", "id": "de_nrw", From 19114a330d308b12bc8e586892a8396ffae7efb5 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sun, 30 Nov 2025 15:20:15 +0100 Subject: [PATCH 12/23] Complete HCAT mappings with custom lists --- fiboa_cli/datasets/at.py | 6 +----- fiboa_cli/datasets/ie.py | 2 +- fiboa_cli/datasets/nl.py | 6 +++--- fiboa_cli/datasets/pt.py | 2 +- fiboa_cli/datasets/se.py | 4 +++- 5 files changed, 9 insertions(+), 11 deletions(-) diff --git a/fiboa_cli/datasets/at.py b/fiboa_cli/datasets/at.py index 00ff1320..4ebbc3e2 100644 --- a/fiboa_cli/datasets/at.py +++ b/fiboa_cli/datasets/at.py @@ -34,14 +34,10 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): license = "CC-BY-4.0" columns = { "GEO_ID": "id", - "INSPIRE_ID": "inspire:id", "geometry": "geometry", "SNAR_CODE": "crop:code", "SNAR_BEZEICHNUNG": "crop:name", "SL_FLAECHE_BRUTTO_HA": "metrics:area", "GEOM_DATE_CREATED": "determination:datetime", } - ec_mapping_csv = "at_2021.csv" - extensions = { - "https://fiboa.org/inspire-extension/v0.3.0/schema.yaml", - } + ec_mapping_csv = "https://fiboa.org/code/at/at.csv" diff --git a/fiboa_cli/datasets/ie.py b/fiboa_cli/datasets/ie.py index 517333c6..611b47a9 100644 --- a/fiboa_cli/datasets/ie.py +++ b/fiboa_cli/datasets/ie.py @@ -32,7 +32,7 @@ class IEConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "localId": "id", "determination:datetime": "determination:datetime", } - ec_mapping_csv = "ie_2023.csv" + ec_mapping_csv = "https://fiboa.org/code/ie/ie.csv" def migrate(self, gdf) -> gpd.GeoDataFrame: # crop_name can be multiple: "crop1, crop2, crop3". We only read the main crop (first). diff --git a/fiboa_cli/datasets/nl.py b/fiboa_cli/datasets/nl.py index d6eade46..3bdc9213 100644 --- a/fiboa_cli/datasets/nl.py +++ b/fiboa_cli/datasets/nl.py @@ -2,13 +2,13 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter -from .commons.ec import ec_url +from .commons.hcat import AddHCATMixin # see https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/basisregistratie_gewaspercelen_brp.xml base = "https://service.pdok.nl/rvo/brpgewaspercelen/atom/v1_0/downloads" -class NLCropConverter(AdminConverterMixin, FiboaBaseConverter): +class NLCropConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): area_calculate_missing = True variants = { "2025": f"{base}/brpgewaspercelen_concept_2025.gpkg", @@ -59,7 +59,7 @@ class NLCropConverter(AdminConverterMixin, FiboaBaseConverter): "jaar": lambda col: pd.to_datetime(col, format="%Y") + pd.DateOffset(months=4, days=14) } extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - column_additions = {"crop:code_list": ec_url("nl_2020.csv")} + ec_mapping_csv = "https://fiboa.org/code/nl/nl.csv" index_as_id = True missing_schemas = { diff --git a/fiboa_cli/datasets/pt.py b/fiboa_cli/datasets/pt.py index b2d4ff0f..25b0769e 100644 --- a/fiboa_cli/datasets/pt.py +++ b/fiboa_cli/datasets/pt.py @@ -41,7 +41,7 @@ def layer_filter(self, layer, uri): "Shape_Length": "metrics:perimeter", } extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - ec_mapping_csv = "pt_2021.csv" + ec_mapping_csv = "https://fiboa.org/code/pt/pt.csv" column_additions = { "determination:datetime": "2023-01-01T00:00:00Z", } diff --git a/fiboa_cli/datasets/se.py b/fiboa_cli/datasets/se.py index 042d1af3..2853b11b 100644 --- a/fiboa_cli/datasets/se.py +++ b/fiboa_cli/datasets/se.py @@ -22,6 +22,8 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): To receive compensation for agricultural support (EU support), farmers apply for support from the Swedish Agency for Agriculture via a SAM application. The data set contains parcels where the area applied for and the area decided on are the same. The data is published at the end of a year. + + Codes found at https://jordbruksverket.se/stod/jordbruk-tradgard-och-rennaring/sam-ansokan-och-allmant-om-jordbrukarstoden/grodkoder """ provider = "Jordbruksverket (The Swedish Board of Agriculture) " attribution = "Jordbruksverket" @@ -34,7 +36,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "arslager": "determination:datetime", } extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} - ec_mapping_csv = "se_2021.csv" + ec_mapping_csv = "https://fiboa.org/code/se/se.csv" column_migrations = { # Make year (1st January) from column "arslager" "arslager": lambda col: pd.to_datetime(col, format="%Y") From eb548e53a4215b04dcd1f7f19b7edca7c3aaa9a0 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Sun, 30 Nov 2025 20:04:47 +0100 Subject: [PATCH 13/23] Improve hcat mappings --- fiboa_cli/datasets/commons/hcat.py | 12 +++++++++++- fiboa_cli/datasets/si.py | 9 +++++++-- fiboa_cli/datasets/sk.py | 3 ++- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index 06570a3a..d4a3626b 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -4,6 +4,7 @@ import geopandas as gpd import numpy as np +import pandas as pd from vecorel_cli.vecorel.util import load_file HCAT_EXTENSION = "https://fiboa.org/hcat-extension/v0.3.0/schema.yaml" @@ -83,7 +84,16 @@ def map_to(attribute): k for k, v in self.columns.items() if v.startswith("crop:") and k in gdf.columns ] missing = gdf[col.isna()][index].drop_duplicates() - self.info(f"Missing codes in HCAT mapping:\n{missing}") + missing.reset_index(drop=True, inplace=True) + with pd.option_context( + "display.max_colwidth", + None, + "display.max_columns", + None, + "display.max_rows", + None, + ): + self.info(f"Missing codes in HCAT mapping:\n{missing}") if "crop:code_list" not in gdf.columns: gdf["crop:code_list"] = ( diff --git a/fiboa_cli/datasets/si.py b/fiboa_cli/datasets/si.py index 50c114fd..ea1784c1 100644 --- a/fiboa_cli/datasets/si.py +++ b/fiboa_cli/datasets/si.py @@ -5,7 +5,12 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): - sources = {"https://rkg.gov.si/razno/portal_analysis/KMRS_2023.rar": ["KMRS_2023.shp"]} + variants = { + str(year): { + f"https://rkg.gov.si/razno/portal_analysis/KMRS_{year}.rar": [f"KMRS_{year}.shp"] + } + for year in range(2024, 2020, -1) + } id = "si" short_name = "Slovenia" title = "Slovenia Crop Fields" @@ -27,7 +32,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "RASTLINA": "crop:name", "CROP_LAT_E": "crop:name_en", } - ec_mapping_csv = "si_2021.csv" + ec_mapping_csv = "https://fiboa.org/code/si/si.csv" column_migrations = {"geometry": lambda col: col.make_valid()} area_is_in_ha = False missing_schemas = { diff --git a/fiboa_cli/datasets/sk.py b/fiboa_cli/datasets/sk.py index 833ef394..71b78891 100644 --- a/fiboa_cli/datasets/sk.py +++ b/fiboa_cli/datasets/sk.py @@ -10,6 +10,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "HU2024_20240917shp/HU2024_20240917.shp" ] } + # https://data.slovensko.sk/download?id=626c1181-bc53-40b6-9715-3c10164760ec id = "sk" short_name = "Slovakia" title = "Slovakia Agricultural Land Identification System" @@ -25,7 +26,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): """ provider = "Pôdohospodárska platobná agentúra " license = "CC0-1.0" # "Open Data" - ec_mapping_csv = "sk_2021.csv" + ec_mapping_csv = "https://fiboa.org/code/sk/sk.csv" columns = { "geometry": "geometry", "KODKD": "id", From 2e7fc32ce5eba4ce1d665822abb17263f7a70076 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Mon, 1 Dec 2025 16:00:10 +0100 Subject: [PATCH 14/23] Update Converters for HCAT compatibility --- fiboa_cli/datasets/be_wal.py | 7 ++++-- fiboa_cli/datasets/ch.py | 11 +++------ fiboa_cli/datasets/commons/hcat.py | 4 +-- fiboa_cli/datasets/ee.py | 39 ++++++++++++++++++++++++++++++ fiboa_cli/datasets/hr.py | 14 +++++------ fiboa_cli/datasets/lt.py | 6 +---- fiboa_cli/datasets/lv.py | 6 +++-- tests/test_convert.py | 1 + 8 files changed, 63 insertions(+), 25 deletions(-) create mode 100644 fiboa_cli/datasets/ee.py diff --git a/fiboa_cli/datasets/be_wal.py b/fiboa_cli/datasets/be_wal.py index 94ad8452..99eb957e 100644 --- a/fiboa_cli/datasets/be_wal.py +++ b/fiboa_cli/datasets/be_wal.py @@ -46,6 +46,11 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): def layer_filter(self, layer: str, uri: str) -> bool: return layer == "ExistingLandUseObject" + column_migrations = { + "crop_code": lambda col: col.str.extract(r"\.(\d+)$", expand=False), + "crop_name": lambda col: col.str.strip(), + } + def file_migration( self, gdf: gpd.GeoDataFrame, path: str, uri: str, layer: str = None ) -> gpd.GeoDataFrame: @@ -57,6 +62,4 @@ def file_migration( crop_name={"ElementPath": "specificLandUse@title", "Type": "String", "Width": 255}, crop_code={"ElementPath": "specificLandUse@href", "Type": "String", "Width": 255}, ) - gdf["crop_code"] = gdf["crop_code"].str.extract(r"\.(\d+)$", expand=False) - gdf["crop_name"] = gdf["crop_name"].str.strip() return gdf diff --git a/fiboa_cli/datasets/ch.py b/fiboa_cli/datasets/ch.py index 34eea68e..65c0156b 100644 --- a/fiboa_cli/datasets/ch.py +++ b/fiboa_cli/datasets/ch.py @@ -2,9 +2,10 @@ from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): sources = None data_access = """ Data must be obtained from the Swiss open data portal at https://www.geodienste.ch/services/lwb_nutzungsflaechen . @@ -32,7 +33,7 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): "id": "id", "flaeche_m2": "metrics:area", "kanton": "admin:subdivision_code", - "nutzung": "crop_name", + "nutzung": "crop:name", "bezugsjahr": "determination:datetime", } column_filters = { @@ -43,8 +44,4 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): column_migrations = { "bezugsjahr": lambda col: pd.to_datetime(col, format="%Y"), } - missing_schemas = { - "properties": { - "crop_name": {"type": "string"}, - } - } + ec_mapping_csv = "https://fiboa.org/code/ch/ch.csv" diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index d4a3626b..90915b87 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -101,8 +101,8 @@ def map_to(attribute): ) return gdf - def migrate(self, gdf) -> gpd.GeoDataFrame: - gdf = super().migrate(gdf) + def post_migrate(self, gdf) -> gpd.GeoDataFrame: + gdf = super().post_migrate(gdf) return self.add_hcat(gdf) diff --git a/fiboa_cli/datasets/ee.py b/fiboa_cli/datasets/ee.py new file mode 100644 index 00000000..777e827b --- /dev/null +++ b/fiboa_cli/datasets/ee.py @@ -0,0 +1,39 @@ +import pandas as pd + +from ..conversion.fiboa_converter import FiboaBaseConverter +from .commons.hcat import AddHCATMixin + +COLUMNS = { + "geometry": "geometry", + "pollu_id": "id", + "taotlusaasta": "determination:datetime", # year + "pindala_ha": "metrics:area", # area (in ha) + "taotletud_kultuur": "crop:name", # requested crop culture +} +ATTRIBUTES = ",".join(["geom" if k == "geometry" else k for k in COLUMNS.keys()]) + + +class Convert(AddHCATMixin, FiboaBaseConverter): + variants = { + str( + year + ): f"https://kls.pria.ee/geoserver/inspire_gsaa/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=inspire_gsaa:LU.GSAA.AGRICULTURAL_PARCELS_{year}&propertyName={ATTRIBUTES}" + for year in range(2024, 2009, -1) + } + ec_mapping_csv = "https://fiboa.org/code/ee/ee.csv" + id = "ee" + short_name = "Estonia" + title = "Field boundaries for Estonia" + description = """ +Geospatial Aid Application Estonia Agricultural parcels. +The original dataset is provided by ARIB and obtained from the INSPIRE theme GSAA (specifically Geospaial Aid Application Estonia Agricultural parcels) through which the data layer Fields and Eco Areas (GSAA) is made available. +The data comes from ARIB's database of agricultural parcels. + """ + provider = "Põllumajanduse Registrite ja Informatsiooni Amet " + attribution = "© Põllumajanduse Registrite ja Informatsiooni Amet" + license = "CC-BY-SA-3.0" + columns = COLUMNS + column_migrations = {"taotlusaasta": lambda col: pd.to_datetime(col, format="%Y")} + + def file_migration(self, gdf, path: str, uri: str, layer=None): + return gdf.set_crs(3301) diff --git a/fiboa_cli/datasets/hr.py b/fiboa_cli/datasets/hr.py index 0ff50a75..08ea26e0 100644 --- a/fiboa_cli/datasets/hr.py +++ b/fiboa_cli/datasets/hr.py @@ -36,15 +36,15 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "home_name": "home_name", "perim": "metrics:perimeter", "slope": "slope", - "z_avg": "z_avg", + "z_avg": "height", "eligibility_coef": "eligibility_coef", - "mines_status": "mines_status", - "mines_year_removed": "mines_year_removed", + # "mines_status": "mines_status", + # "mines_year_removed": "mines_year_removed", "water_protect_zone": "water_protect_zone", "natura2000": "natura2000", - "natura2000_ok": "natura2000_ok", - "natura2000_pop": "natura2000_pop", - "natura2000_povs": "natura2000_povs", + # "natura2000_ok": "natura2000_ok", + # "natura2000_pop": "natura2000_pop", + # "natura2000_povs": "natura2000_povs", "anc": "anc", "anc_area": "anc_area", "rp": "rp", @@ -77,7 +77,7 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: "land_use_id": {"type": "integer"}, "home_name": {"type": "string"}, "slope": {"type": "double"}, - "z_avg": {"type": "double"}, + "height": {"type": "double"}, "eligibility_coef": {"type": "double"}, "mines_status": {"type": "string", "enum": ["N", "M", "R"]}, "mines_year_removed": {"type": "int32"}, diff --git a/fiboa_cli/datasets/lt.py b/fiboa_cli/datasets/lt.py index b88a1346..42a00b3a 100644 --- a/fiboa_cli/datasets/lt.py +++ b/fiboa_cli/datasets/lt.py @@ -10,8 +10,4 @@ class LTConverter(EuroLandBaseConverter): provider = "Nacionalinė mokėjimo agentūra prie Žemės ūkio ministerijos " attribution = "Nacionalinė mokėjimo agentūra prie Žemės ūkio ministerijos" ec_mapping_csv = "lt_2021.csv" - sources = { - "https://zenodo.org/records/14384070/files/LT_2024.zip?download=1": [ - "GSA-LT-2024.geoparquet" - ] - } + sources = {"https://zenodo.org/records/14384070/files/LT_2024.zip": ["GSA-LT-2024.geoparquet"]} diff --git a/fiboa_cli/datasets/lv.py b/fiboa_cli/datasets/lv.py index c0faded3..aa62293f 100644 --- a/fiboa_cli/datasets/lv.py +++ b/fiboa_cli/datasets/lv.py @@ -27,7 +27,6 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): Relevant datasets are: Country blocks (Lauku Bloki), Fields (Lauki), and Landscape elements. """ - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} provider = "Rural Support Service Republic of Latvia (Lauku atbalsta dienests) " attribution = "Lauku atbalsta dienests" license = "CC-BY-SA-4.0" # Not sure, taken from Eurocrops. It is "public" and free and "available to any user" @@ -38,6 +37,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "DATA_CHANGED_DATE": "determination:datetime", "area": "metrics:area", "PRODUCT_CODE": "crop:code", + "PRODUCT_DESCRIPTION": "crop:name", } missing_schemas = { "properties": { @@ -47,5 +47,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): } } ec_mapping_csv = "lv_2021.csv" - + column_migrations = { + "PRODUCT_CODE": lambda col: col.fillna(0).astype(int).astype(str), + } area_calculate_missing = True diff --git a/tests/test_convert.py b/tests/test_convert.py index 9c6c2c17..73edd375 100644 --- a/tests/test_convert.py +++ b/tests/test_convert.py @@ -60,6 +60,7 @@ def _input_files(converter, *names): "ai4sf": _input_files("ai4sf", "1_vietnam_areas.gpkg", "4_cambodia_areas.gpkg"), "nl": {"variant": "2023"}, "se": {"variant": "2023"}, + "si": {"variant": "2023"}, "be_vlg": {"variant": "2023"}, "br_ba_lem": _input_files("br_ba_lem", "LEM_dataset.zip"), "ch": _input_files("ch", "lwb_nutzungsflaechen_v2_0_lv95.gpkg"), From 171a04cbccdb36f893cfecbc834928c501f1622b Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Thu, 4 Dec 2025 21:48:55 +0100 Subject: [PATCH 15/23] Allow empty mapping table --- fiboa_cli/datasets/commons/hcat.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fiboa_cli/datasets/commons/hcat.py b/fiboa_cli/datasets/commons/hcat.py index 90915b87..5a94d219 100644 --- a/fiboa_cli/datasets/commons/hcat.py +++ b/fiboa_cli/datasets/commons/hcat.py @@ -68,7 +68,7 @@ def add_hcat(self, gdf): crop_code_col = self.get_code_column(gdf) def map_to(attribute): - return {e[from_code]: e[attribute] for e in self.ec_mapping} + return {e[from_code]: e[attribute] or None for e in self.ec_mapping} col = None for k, v in zip( From 88841f34fba14152eb7dae1d6c9170f7c46066fd Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Mon, 8 Dec 2025 00:13:10 +0100 Subject: [PATCH 16/23] Update USA converters --- fiboa_cli/datasets/us_ca_scm.py | 21 +++++++++----- fiboa_cli/datasets/us_usda_cropland.py | 40 +++++++++++++++++--------- 2 files changed, 40 insertions(+), 21 deletions(-) diff --git a/fiboa_cli/datasets/us_ca_scm.py b/fiboa_cli/datasets/us_ca_scm.py index 61f58b25..9a191ada 100644 --- a/fiboa_cli/datasets/us_ca_scm.py +++ b/fiboa_cli/datasets/us_ca_scm.py @@ -4,13 +4,21 @@ from ..conversion.fiboa_converter import FiboaBaseConverter from .commons.ec import load_ec_mapping +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = { - "https://data.cnra.ca.gov/dataset/6c3d65e3-35bb-49e1-a51e-49d5a2cf09a9/resource/f38d3f6f-dcf1-4553-9f07-4f381d494320/download/i15_crop_mapping_2022_provisional_gdb.zip": [ - "i15_Crop_Mapping_2022_Provisional_GDB/i15_Crop_Mapping_2022_Provisional.gdb" - ] +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + variants = { + "2023": { + "https://data.cnra.ca.gov/dataset/6c3d65e3-35bb-49e1-a51e-49d5a2cf09a9/resource/4e17ca38-268e-4bf5-bbc5-09636d44ed60/download/i15_crop_mapping_2023_provisional_20241127.gdb.zip": [ + "i15_Crop_Mapping_2023_Provisional_20241127.gdb" + ] + }, + "2022": { + "https://data.cnra.ca.gov/dataset/6c3d65e3-35bb-49e1-a51e-49d5a2cf09a9/resource/f38d3f6f-dcf1-4553-9f07-4f381d494320/download/i15_crop_mapping_2022_provisional_gdb.zip": [ + "i15_Crop_Mapping_2022_Provisional_GDB/i15_Crop_Mapping_2022_Provisional.gdb" + ] + }, } id = "us_ca_scm" admin_subdivision_code = "CA" @@ -24,7 +32,6 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): seek to address resource management issues, regulatory compliance issues, environmental impacts, ecosystem services, urban and economic development, and other issues. """ - extensions = {"https://fiboa.org/crop-extension/v0.2.0/schema.yaml"} provider = "County of Santa Clara " license = "CC0-1.0" columns = { @@ -36,8 +43,8 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): } column_additions = { "determination:datetime": "2023-05-01T00:00:00Z", - "crop:code_list": "https://fiboa.org/code/us/ca/scm.csv", } + ec_mapping_csv = "https://fiboa.org/code/us/ca/scm.csv" missing_schemas = { "properties": { "admin_level_2": {"type": "string"}, diff --git a/fiboa_cli/datasets/us_usda_cropland.py b/fiboa_cli/datasets/us_usda_cropland.py index e5aef1af..35850d48 100644 --- a/fiboa_cli/datasets/us_usda_cropland.py +++ b/fiboa_cli/datasets/us_usda_cropland.py @@ -1,18 +1,24 @@ -from os.path import dirname, join - import pandas as pd from loguru import logger from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter from .commons.ec import load_ec_mapping +from .commons.hcat import AddHCATMixin -class Converter(AdminConverterMixin, FiboaBaseConverter): - sources = { - "https://www.nass.usda.gov/Research_and_Science/Crop-Sequence-Boundaries/datasets/NationalCSB_2016-2023_rev23.zip": [ - "NationalCSB_2016-2023_rev23/CSB1623.gdb" - ] +class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): + variants = { + "2024": { + "https://www.nass.usda.gov/Research_and_Science/Crop-Sequence-Boundaries/datasets/NationalCSB_2017-2024_rev23.zip": [ + "NationalCSB_2017-2024_rev23/CSB1724.gdb" + ] + }, + "2023": { + "https://www.nass.usda.gov/Research_and_Science/Crop-Sequence-Boundaries/datasets/NationalCSB_2016-2023_rev23.zip": [ + "NationalCSB_2016-2023_rev23/CSB1623.gdb" + ] + }, } id = "us_usda_cropland" short_name = "US (USDA CSB)" @@ -30,19 +36,19 @@ class Converter(AdminConverterMixin, FiboaBaseConverter): columns = { "geometry": "geometry", "CSBID": "id", - "CDL2023": "crop:code", + # "CDL2023": "crop:code", "crop:name": "crop:name", "CNTY": "administrative_area_level_2", } column_additions = { "determination:datetime": "2023-05-01T00:00:00Z", - "crop:code_list": "https://fiboa.org/code/us/usda/crop.csv", } missing_schemas = { "properties": { "administrative_area_level_2": {"type": "string"}, } } + ec_mapping_csv = "https://fiboa.org/code/us/usda/cropland.csv" def migrate(self, gdf): """ @@ -53,18 +59,24 @@ def migrate(self, gdf): geodataframe.Dissolve(method="unary") is **slow** for large datasets So we're handling this huge dataset in blocks, states are a natural grouping-method """ + assert self.variant, "Variant must be set" + crop_key = f"CDL{self.variant}" + self.columns[crop_key] = "crop:code" + gdf = super().migrate(gdf) states = list(gdf["STATEFIPS"].unique()) gdfs = [] for state in states: logger.info(f"Handling State {state}") df = gdf[gdf["STATEFIPS"] == state].explode() - # TODO is this correct, don't we need `df = df.dissolve?` - df.dissolve(by=["CDL2023"], aggfunc="first").explode() + df = df.dissolve(by=[crop_key], aggfunc="first", as_index=False).explode() gdfs.append(df) gdf = pd.concat(gdfs) del gdfs - mapping = load_ec_mapping(url=join(dirname(__file__), "data-files", "us_usda_cropland.csv")) - original_name_mapping = {int(e["original_code"]): e["original_name"] for e in mapping} - gdf["crop:name"] = gdf["CDL2023"].map(original_name_mapping) + if self.ec_mapping is None: + self.ec_mapping = load_ec_mapping(self.ec_mapping_csv, url=self.mapping_file) + original_name_mapping = { + int(e["original_code"]): e["original_name"] for e in self.ec_mapping + } + gdf["crop:name"] = gdf[crop_key].map(original_name_mapping) return gdf From cd650ca349c4154ea1ab6f2988a707c19468f40a Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Mon, 8 Dec 2025 19:40:14 +0100 Subject: [PATCH 17/23] Update vecorel version --- pixi.lock | 42 +++++++++++++++++++++--------------------- pyproject.toml | 2 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/pixi.lock b/pixi.lock index f7ff81e9..ce310736 100644 --- a/pixi.lock +++ b/pixi.lock @@ -177,7 +177,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-64: @@ -342,7 +342,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-arm64: @@ -508,7 +508,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ win-64: @@ -672,7 +672,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ @@ -828,7 +828,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-64: @@ -968,7 +968,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-arm64: @@ -1109,7 +1109,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ win-64: @@ -1249,7 +1249,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ @@ -1368,7 +1368,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-64: @@ -1471,7 +1471,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-arm64: @@ -1575,7 +1575,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ win-64: @@ -1676,7 +1676,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ @@ -1820,7 +1820,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-64: @@ -1948,7 +1948,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ osx-arm64: @@ -2077,7 +2077,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: ./ win-64: @@ -2202,7 +2202,7 @@ environments: - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ @@ -2917,9 +2917,9 @@ packages: - pypi: ./ name: fiboa-cli version: 0.20.3 - sha256: 0b3743a9a5f590df1aa36c60901b73456e1f2f7dbc25163ba4597134928c1132 + sha256: 37684f32135ca252711dae982a7f5f80dbc23a622225cf0c6118a9632584059f requires_dist: - - vecorel-cli==0.2.11 + - vecorel-cli==0.2.12 - spdx-license-list==3.27.0 requires_python: '>=3.10,<3.14' editable: true @@ -7322,10 +7322,10 @@ packages: purls: [] size: 113963 timestamp: 1753739198723 -- pypi: https://files.pythonhosted.org/packages/04/ed/c3c3cee45ca60be5f4766bc8dcf6ff904b70b5ca80c603d14297a830d1f0/vecorel_cli-0.2.11-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl name: vecorel-cli - version: 0.2.11 - sha256: 405e04bac3f4818787d3a17e57d13985dcfc9a8f3704454cfa45ca7702243951 + version: 0.2.12 + sha256: c984d5522e84f5b374d9778a617006afa06e549fdde423a2f8170cbc399731a1 requires_dist: - pyyaml>=6.0,<7.0 - click>=8.1,<9.0 diff --git a/pyproject.toml b/pyproject.toml index cb36db97..12e7ccc2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,7 +22,7 @@ classifiers = [ ] requires-python = ">=3.10,<3.14" dependencies = [ - "vecorel-cli==0.2.11", + "vecorel-cli==0.2.12", "spdx-license-list==3.27.0", ] From f4125992e278cb02f231f74a71a8993a8562a3e7 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Mon, 8 Dec 2025 20:53:14 +0100 Subject: [PATCH 18/23] Update cropland testing dataset --- .../NationalCSB_2016-2023_rev23.zip | Bin 34569 -> 0 bytes .../NationalCSB_2017-2024_rev23.zip | Bin 0 -> 34357 bytes .../convert/us_usda_cropland/cropland.csv | 256 ++++++++++++++++++ tests/test_convert.py | 2 + 4 files changed, 258 insertions(+) delete mode 100644 tests/data-files/convert/us_usda_cropland/NationalCSB_2016-2023_rev23.zip create mode 100644 tests/data-files/convert/us_usda_cropland/NationalCSB_2017-2024_rev23.zip create mode 100644 tests/data-files/convert/us_usda_cropland/cropland.csv diff --git a/tests/data-files/convert/us_usda_cropland/NationalCSB_2016-2023_rev23.zip b/tests/data-files/convert/us_usda_cropland/NationalCSB_2016-2023_rev23.zip deleted file mode 100644 index fcc4ec9c0e0cc21f3bab1891f3c7d3d8fc8ea991..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34569 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 N>ffC`kNZD<`#)NSgbV-x diff --git a/tests/data-files/convert/us_usda_cropland/NationalCSB_2017-2024_rev23.zip b/tests/data-files/convert/us_usda_cropland/NationalCSB_2017-2024_rev23.zip new file mode 100644 index 0000000000000000000000000000000000000000..93c13ae0e1302ea4c2ad5877ec96bd27810f6572 GIT binary patch literal 34357 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 Date: Mon, 8 Dec 2025 21:17:41 +0100 Subject: [PATCH 19/23] Extend tests --- ...op_mapping_2023_provisional_20241127.gdb.zip | Bin 0 -> 42956 bytes tests/test_convert.py | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 tests/data-files/convert/us_ca_scm/i15_crop_mapping_2023_provisional_20241127.gdb.zip diff --git a/tests/data-files/convert/us_ca_scm/i15_crop_mapping_2023_provisional_20241127.gdb.zip b/tests/data-files/convert/us_ca_scm/i15_crop_mapping_2023_provisional_20241127.gdb.zip new file mode 100644 index 0000000000000000000000000000000000000000..0b662e1eca89f079787b144683c5c298ea38bce2 GIT binary patch literal 42956 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 literal 0 HcmV?d00001 diff --git a/tests/test_convert.py b/tests/test_convert.py index f5f4baaa..dc7698d0 100644 --- a/tests/test_convert.py +++ b/tests/test_convert.py @@ -37,6 +37,7 @@ "ch", "cz", "us_usda_cropland", + "us_ca_scm", "jp", "lv", "ie", @@ -77,7 +78,7 @@ def test_converter(load_ec_mock, capsys, tmp_parquet_file, converter): from fiboa_cli import Registry # noqa def load_ec(csv_file=None, url=None): - if "://" in csv_file: + if csv_file and "://" in csv_file: csv_file = csv_file.split("/")[-1] path = url if url and "://" not in url else f"{test_path}/{converter}/{csv_file}" return list(DictReader(open(path, "r", encoding="utf-8"))) From 81ed771ba5b0301e3b0e31d1df690787c746fe6a Mon Sep 17 00:00:00 2001 From: Matthias Mohr Date: Fri, 13 Feb 2026 12:38:10 +0100 Subject: [PATCH 20/23] Clean-up --- fiboa_cli/datasets/hr.py | 19 +- fiboa_cli/datasets/ie.py | 7 +- fiboa_cli/datasets/us_usda_cropland.py | 2 +- pixi.lock | 6392 ++++++++++++------------ pyproject.toml | 3 +- 5 files changed, 3188 insertions(+), 3235 deletions(-) diff --git a/fiboa_cli/datasets/hr.py b/fiboa_cli/datasets/hr.py index 08ea26e0..d539e92a 100644 --- a/fiboa_cli/datasets/hr.py +++ b/fiboa_cli/datasets/hr.py @@ -1,4 +1,3 @@ -import geopandas as gpd from vecorel_cli.conversion.admin import AdminConverterMixin from ..conversion.fiboa_converter import FiboaBaseConverter @@ -28,6 +27,10 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): license = "Prostorni podaci i servisi " index_as_id = True + column_migrations = { + "land_use_id": lambda col: col.astype(int) + } + columns = { "id": "id", "land_use_id": "crop:code", @@ -38,13 +41,13 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "slope": "slope", "z_avg": "height", "eligibility_coef": "eligibility_coef", - # "mines_status": "mines_status", - # "mines_year_removed": "mines_year_removed", + "mines_status": "mines_status", + "mines_year_removed": "mines_year_removed", "water_protect_zone": "water_protect_zone", "natura2000": "natura2000", - # "natura2000_ok": "natura2000_ok", - # "natura2000_pop": "natura2000_pop", - # "natura2000_povs": "natura2000_povs", + "natura2000_ok": "natura2000_ok", + "natura2000_pop": "natura2000_pop", + "natura2000_povs": "natura2000_povs", "anc": "anc", "anc_area": "anc_area", "rp": "rp", @@ -60,10 +63,6 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): ec_mapping_csv = "hr_2020.csv" - def migrate(self, gdf) -> gpd.GeoDataFrame: - gdf["land_use_id"] = gdf["land_use_id"].astype(int) - return super().migrate(gdf) - missing_schemas = { "required": [ "mines_status", diff --git a/fiboa_cli/datasets/ie.py b/fiboa_cli/datasets/ie.py index 611b47a9..a66a0cee 100644 --- a/fiboa_cli/datasets/ie.py +++ b/fiboa_cli/datasets/ie.py @@ -30,10 +30,14 @@ class IEConverter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "crop_name": "crop:name", "crop_code": "crop:code", "localId": "id", - "determination:datetime": "determination:datetime", + "observationDate": "determination:datetime", } ec_mapping_csv = "https://fiboa.org/code/ie/ie.csv" + column_migrations = { + "observationDate": lambda col: col.str.replace("+01:00", "T00:00:00Z"), + } + def migrate(self, gdf) -> gpd.GeoDataFrame: # crop_name can be multiple: "crop1, crop2, crop3". We only read the main crop (first). gdf["crop_name"] = gdf["crop_name"].str.split(", ").str.get(0) @@ -43,7 +47,6 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: mapping = {row["original_name"]: index + 1 for index, row in enumerate(rows)} gdf["crop_code"] = gdf["crop_name"].map(mapping) - gdf["determination:datetime"] = gdf["observationDate"].str.replace("+01:00", "T00:00:00Z") return super().migrate(gdf) def file_migration( diff --git a/fiboa_cli/datasets/us_usda_cropland.py b/fiboa_cli/datasets/us_usda_cropland.py index 35850d48..1497ea2e 100644 --- a/fiboa_cli/datasets/us_usda_cropland.py +++ b/fiboa_cli/datasets/us_usda_cropland.py @@ -36,7 +36,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): columns = { "geometry": "geometry", "CSBID": "id", - # "CDL2023": "crop:code", + "CDL2023": "crop:code", "crop:name": "crop:name", "CNTY": "administrative_area_level_2", } diff --git a/pixi.lock b/pixi.lock index ce310736..c829348f 100644 --- a/pixi.lock +++ b/pixi.lock @@ -7,673 +7,661 @@ environments: - https://pypi.org/simple packages: linux-64: - - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.0-py313h301e4d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.3-py313hd6074c6_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.3.0-py313h18e8e13_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf01b4d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf46b229_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.10.7-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-45.0.7-py313hafb0bba_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.13.4-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-46.0.5-py313heb322e3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.7.0-py313h6b9daa2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.7.1-py313h74173ec_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.74.1-py313h2b3948d_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.8.0-py313h74173ec_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.78.0-py313h36609a2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20250512.1-cxx17_hba17884_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20260107.1-cxx17_h7b12aa8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.24-h86f0d12_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.18.0-hcf29cc6_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.74.1-h3288cfb_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.78.0-h1d1128b_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.31.1-h9ef548d_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.08.12-h7b12aa8_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.33.5-h2b00c02_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.11.05-h0dc7533_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.1.10-hb700be7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.2.4-hb700be7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.7.0-py313h3dea7bd_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.0-hb72c0af_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.1-he0df7b0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/propcache-0.3.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.31.1-py313h8c92afc_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.33.5-py313hf481762_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.2-py313h77f6078_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.12-hc97d973_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.08.12-h5301d42_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.11.05-h5301d42_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.12.8-hf9daec2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.50.4-hbc0de68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.51.2-h04a0ce9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.1.0-py313h7037e92_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.17.3-py313h07c4f96_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.20.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.22.0-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3e/44/17e812a3e4dd86fb03d5d271927b86615c7e8782325ca878f2c9bae10069/inflate64-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c0/c5/038dc2593bbc4272d87eac8c9f75692267d47f834ced888f6d81995df606/inflate64-1.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ee/00/8b8a05b5125b26b74b27126aa2842118004702dd4e00f732ce675e427f4b/json_stream_rs_tokenizer-0.4.30-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/51/9f/362c5093c5329c989f3ae5ff1be63ba39fef7a1c356b11da14c3174139ba/json_stream_rs_tokenizer-0.5.0-cp313-cp313-manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/70/50/73f9a5aa0810cdccda9c1d20be3cbe4a4d6ea6bfd6931464a44c95eef731/numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/9d/de/04c8c61232f7244aa0a4b9a9fbd63a89d5aeaf94b2fc9d1d16e2faa5cbb0/psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f7/a3/51e02ebc2a14974170d51e2410dfdab58870ea9bcd37cda15bd553d24dc4/pandas-3.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/89/4b/7782438b551dbb0468892a276b8c789b8bbdb25ea5c5eb27faadd753e037/pyarrow-21.0.0-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/8d/b2/e658bf56f4d04a83b366128920fbda93024dee851f134660491b8cc97863/pybcj-1.0.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/86/43/2ce282501a39f32f27cef2a3ee11c621f9d5348da4441d2326f2fcc9b17e/pybcj-1.0.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c8/a9/8862616a85cf450d2822dbd4fff1fcaba90877907a6ff5bc2672cafe42f8/pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/89/a9/79eca15094f7806a3adcf0bb976ab4346b0fb1bd87956c1933df44546c14/pyogrio-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0b/ae/4b0a4fe34f91cce15aa086a3d374ee21f8261445fe935bc835d6d8ba75bb/pyppmd-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/46/35/b874f79d03e9f900012cf609f7fff97b77164f2e14ee5aac282f8a999c1b/pyogrio-0.12.1-cp313-cp313-manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/64/fd/673d429df719affa1445611288aab6111c0bc87e51eb4677fe2421a1dd64/pyppmd-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/de/16/8540b868a5b0fa9eaf743856f86088e3cac8477fbf2339e76c5c973622cc/pyzstd-0.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f2/a2/83fc37e2a58090e3d2ff79175a95493c664bcd0b653dd75cb9134645a4e5/shapely-2.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.0-py313h25d8036_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.3-py313h537e735_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/backports.zstd-1.3.0-py313h591e92b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py313h253db18_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.2.0-py313h8d69aa9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.5-hf13058a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313h8715ba9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313hf57695f_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.10.7-py313h0f4d31d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-45.0.7-py313h2686292_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.13.4-py313h7c6a591_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-46.0.5-py313h6e3882f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/frozenlist-1.7.0-py313haf29b43_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.7.1-py313hff33f76_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.74.1-py313ha22d4e2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.8.0-py313h49a2f01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.78.0-py313h3d05629_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hcca01a6_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20250512.1-cxx17_hfc00f1c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20260107.1-cxx17_h7ed6875_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.14.1-h5dec5d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.2-h3d58e20_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.24-hcc1b750_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.18.0-h9a2545f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.8-h4fb565c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.1-h21dd04a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.6-h281671d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.74.1-h451496d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.0-h6e16a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.78.0-h147dede_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.2-h8616949_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.2-h11316ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.67.0-h3338091_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.31.1-h6e993e7_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.08.12-h554ac88_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.50.4-h39a8b3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.33.5-h29d92e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.11.05-h6e8c311_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.2-hb99441e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-haa3b502_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.1.10-h07ed6ef_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.2.4-h06b67a2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.6.0-hb807250_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-hd23fc13_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.6.3-py313h797cdad_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.7.0-py313h5d7b66b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.5.4-h230baf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.0-h3124640_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.1-hb6871ef_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.1-h4aacef1_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/propcache-0.3.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.31.1-py313hc85ccdc_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.33.5-py313hc1d2497_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.7.2-py313hc0f1baa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.7-h5eba815_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.12-h894a449_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h0f4d31d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.08.12-h7df6414_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h7c6a591_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.11.05-h77e0585_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.12.8-h6cc4cfe_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.50.4-h64b5abc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.51.2-h5af3ad2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py313h0c4e38b_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.1.0-py313h252b9d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.17.3-py313h585f44e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h4132b18_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.20.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstandard-0.25.0-py313hcb05632_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.22.0-py313h0f4d31d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6b/69/b3b87d25a8d31dc0a4f0a9e441f2e02e198cff4259b5ecb877b73505c8dc/inflate64-1.0.3-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b8/5f/6f89c8524503fd7a9ca2bd91fe60d7291b3f684e9d41edb38ef49e10fc3d/inflate64-1.0.4-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a9/2f/6990bb99ca33906f0a57c3b17a7e4a5a4464bfd92506282da1cf61c7f567/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/0e/b8/2cf6e936604314265c76aa86324a14e1390c336702a741b13ded2f2a6ddc/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/4d/0b/620591441457e25f3404c8057eb924d04f161244cb8a3680d529419aa86e/numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/46/62/ce4051019ee20ce0ed74432dd73a5bb087a6704284a470bb8adff69a0932/psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/fa/7f0ac4ca8877c57537aaff2a842f8760e630d8e824b730eb2e859ffe96ca/pandas-3.0.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ce/e8/e87d9e3b2489302b3a1aea709aaca4b781c5252fcb812a17ab6275a9a484/pyarrow-21.0.0-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0d/ab/e04befe57175c0ef6f00368263e17ef79dadfaf633057dcd13711ef06678/pybcj-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/47/e5/68bffbc87581ea96bb4aea623d8cd085786f36d5b912ed8d9bade3265110/pybcj-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7a/62/f5221a191a97157d240cf6643747558759126c76ee92f29a3f4aee3197a5/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/20/bc/34bd87641fc2ecc6d842d6d758bbaa8d58aea4d36aa6a1111cbc9d450e74/pyogrio-0.11.1-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/f6/b8/fb8de2664cabc12621b6eed4bb9783b41336e72e0f76ebce42e3e9f58728/pyppmd-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/66/ac/5559f8a35d58a16cbb2dd7602dd11936ff8796d8c9bf789f14da88764ec3/pyogrio-0.12.1-cp313-cp313-macosx_12_0_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/dd/02/caf6305224b9432ea7373670d101392f620c1ce741d6f95458b1fb9a16a4/pyppmd-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/f5/55/9e200f8ad193bb9d060cd724a8f876e40be918eece578c46c33cab336cf4/pyzstd-0.18.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/c3/90/98ef257c23c46425dc4d1d31005ad7c8d649fe423a38b917db02c30f1f5a/shapely-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-arm64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.0-py313ha205f9d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.3-py313h53c0e3e_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/backports.zstd-1.3.0-py313h48bb75e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py313hb4b7877_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.2.0-py313hde1f3bb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.5-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h89bd988_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h224173a_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.10.7-py313h7d74516_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-45.0.7-py313h06766fd_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.13.4-py313h65a2061_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-46.0.5-py313he3f6fad_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/frozenlist-1.7.0-py313hf28abc0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.7.1-py313h7962f2b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.74.1-py313hb057f1c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.8.0-py313h11ab6f4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.78.0-py313hfa4fce0_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-h38cb7af_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-hd64df32_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20250512.1-cxx17_hd41c47c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20260107.1-cxx17_h2062a1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.14.1-h73640d1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.2-hf598326_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.24-h5773f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.18.0-hd5a2499_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-h55c6f16_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.74.1-h3063b79_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.0-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.78.0-h3e3f78d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.31.1-h702a38d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.08.12-h91c62da_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.33.5-h4a5acfd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.11.05-h4c27e2a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h7dc4979_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.1.10-h1821781_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.2.4-h4ddebb9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.6.3-py313h6347b5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.7.0-py313h92dd972_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.0-hf83150c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.1-hfb14a63_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/propcache-0.3.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.31.1-py313he4076bf_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.33.5-py313h0fe2d26_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.7.2-py313h698103d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.12-h20e6be0_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h7d74516_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.08.12-h64b956e_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h65a2061_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.11.05-ha480c28_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.12.8-h575f11b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.50.4-hb5dd463_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.51.2-h77b7338_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py313hf9c7212_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.1.0-py313h5c29297_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.17.3-py313hcdf3177_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.20.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstandard-0.25.0-py313h9734d34_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.22.0-py313h7d74516_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d0/53/62fd8e9f2016936ddf87e5678994f25c97bb2e4d82215f28a15bfaebc9b9/inflate64-1.0.3-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7d/14/9eadd59244b38cf85ccd0ca43d1296c50b3a33aa37be4fb68a1928efa58c/inflate64-1.0.4-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/01/7b/55f5457b0edadfe67439a9b7c7e771dd21f9a10d25815f3e8b48b05fc212/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3a/84/fa953089b66f84be37fa3313855b8f95ca9d89aafd297f6e675d21cfb144/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/45/e1/210b2d8b31ce9119145433e6ea78046e30771de3fe353f313b2778142f34/numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/38/61/f76959fba841bf5b61123fbf4b650886dc4094c6858008b5bf73d9057216/psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/11/28a221815dcea4c0c9414dfc845e34a84a6a7dabc6da3194498ed5ba4361/pandas-3.0.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/16/ca/c7eaa8e62db8fb37ce942b1ea0c6d7abfe3786ca193957afa25e71b81b66/pyarrow-21.0.0-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/c2/aa/25877ccb48f638c5cef205ed8185848e7daff53f152cdd6e014ceee86753/pybcj-1.0.6-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/ed/ad/718d6daa0d5e15e2131301220eaefbf6bc8cd0c90791c5ac18c893be111a/pybcj-1.0.7-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/dd/9c/1a8f35daa39784ed8adf93a694e7e5dc15c23c741bbda06e1d45f8979e9e/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_universal2.whl - - pypi: https://files.pythonhosted.org/packages/f2/68/86328e36d010ee565ce0c65cdf9b830afcb1fb5972f537fe1cc561a49247/pyogrio-0.11.1-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/da/aa/7f8198de419bff405aa77c444fbf9d300ce86cc4889e91101669439c616d/pyppmd-1.2.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/be/56/f56e79f71b84aa9bea25fdde39fab3846841bd7926be96f623eb7253b7e1/pyogrio-0.12.1-cp313-cp313-macosx_12_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/45/82/8c5d3f0f738a3cf5c209d1471efda105a16417c0aaa91a2ad39efb3d4efb/pyppmd-1.3.1-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/64/73/28bc86e284ca5e5ea082641748f2a583c9db8744dbf2c28d54e85e101114/pyzstd-0.18.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6d/ab/0bee5a830d209adcd3a01f2d4b70e587cdd9fd7380d5198c064091005af8/shapely-2.1.2-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ win-64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.0-py313h4e0b5e6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.3-py313h51e1470_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/backports.zstd-1.3.0-py313h2a31948_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py313hfe59770_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.2.0-py313h3ebfc14_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.5-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-h4c7d964_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.6-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyha7b4d00_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.10.7-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-45.0.7-py313h392ebe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.13.4-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-46.0.5-py313hf5c5e30_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/frozenlist-1.7.0-py313h0c48a3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.7.1-py313h5327936_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.74.1-py313h3c83859_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.8.0-py313h5327936_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.78.0-py313hbfc34d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h6470a55_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20250512.1-cxx17_habfad5f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20260107.1-cxx17_h0eb2380_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.14.1-h88aaa65_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.24-h76ddb4d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.74.1-h317e13b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.31.1-hdcda5b4_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.08.12-h0eb2380_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.18.0-h8206538_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.78.0-h9ff2b3e_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.33.5-h61fc761_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.11.05-h04e5de1_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h550210a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.1.10-h49e36cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.2.4-h49e36cd_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.6.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.7.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.0-h9080b7b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.1-hd30e2cd_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/propcache-0.3.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.31.1-py313h16c7a9f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.33.5-py313h16c7a9f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.7.2-py313h24787ba_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.7-hdf00ec1_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.12-h09917c8_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.08.12-ha104f34_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.11.05-ha104f34_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.12.8-hd40eec1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.50.4-hdb435a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.51.2-hdb435a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py313h1ec8472_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.1.0-py313hf069bd2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_31.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_34.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.17.3-py313h5ea7bf4_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.20.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.25.0-py313h5fd188c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.22.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/dd/9d/21c2baa41ac3aa762bcbb66a7a9f00b7857489fe7531a2e7d35df262da94/inflate64-1.0.3-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e7/4f/5784ee1eb8260f2310e24ef2883f1f494f9332bcfde4ed14ee780372149e/inflate64-1.0.4-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/17/1c/84f79b4e9702160f9da874ec279e52b2ca8c20ddbfe6ba9207fa420fdaf9/json_stream_rs_tokenizer-0.4.30-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b4/f1/f992895d069297e4aa7a14ff1e510645fb8f2f8e16648484e6c68150bbae/json_stream_rs_tokenizer-0.5.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/bb/f9/12297ed8d8301a401e7d8eb6b418d32547f1d700ed3c038d325a605421a4/numpy-2.1.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c9/8c/c6638d9f67e45e07656b3826405c5cc5f57f6fd07c8b2572ade328c86e22/pandas-3.0.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/52/21/df6e5cb6c918d5321a4db241be78fd71d5d18561a4458eec5757b0b6a1b2/pybcj-1.0.6-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/5c/71/a0d58633236783028c08e585b3c4f4715a4286970b4ec4a25acfe23794f1/pybcj-1.0.7-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/69/96/11f36f71a865dd6df03716d33bd07a67e9d20f6b8d39820470b766af323c/pycryptodomex-3.23.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/2b/f3/7722bc81e9eee39b528c1cbc6289a26d2d3b1b187491ed8493457d6a3a0e/pyogrio-0.11.1-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/58/46/4554bc202b4ec0307de72aeb3b7ea6e8585f102d832b2d22ab0e8fc0c3ee/pyppmd-1.2.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/6c/6d/311d8faca142f39b4d158c94ed7eb237a197d41dd7eb67f53442a7904e04/pyppmd-1.3.1-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a5/8e/3f6f445ee23864988ae3cfd6cebd3fe79dd42dbaa50538275928082e3df8/pyzstd-0.18.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ cloud: @@ -683,574 +671,562 @@ environments: - https://pypi.org/simple packages: linux-64: - - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.0-py313h301e4d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.3-py313hd6074c6_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.3.0-py313h18e8e13_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf01b4d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-45.0.7-py313hafb0bba_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf46b229_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-46.0.5-py313heb322e3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.7.0-py313h6b9daa2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.7.1-py313h74173ec_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.74.1-py313h2b3948d_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.8.0-py313h74173ec_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.78.0-py313h36609a2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20250512.1-cxx17_hba17884_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20260107.1-cxx17_h7b12aa8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.24-h86f0d12_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.18.0-hcf29cc6_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.74.1-h3288cfb_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.78.0-h1d1128b_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.31.1-h9ef548d_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.08.12-h7b12aa8_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.33.5-h2b00c02_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.11.05-h0dc7533_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.1.10-hb700be7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.2.4-hb700be7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.7.0-py313h3dea7bd_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.0-hb72c0af_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.1-he0df7b0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/propcache-0.3.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.31.1-py313h8c92afc_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.33.5-py313hf481762_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.2-py313h77f6078_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.12-hc97d973_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.08.12-h5301d42_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.11.05-h5301d42_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.50.4-hbc0de68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.51.2-h04a0ce9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.17.3-py313h07c4f96_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.20.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.22.0-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3e/44/17e812a3e4dd86fb03d5d271927b86615c7e8782325ca878f2c9bae10069/inflate64-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c0/c5/038dc2593bbc4272d87eac8c9f75692267d47f834ced888f6d81995df606/inflate64-1.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ee/00/8b8a05b5125b26b74b27126aa2842118004702dd4e00f732ce675e427f4b/json_stream_rs_tokenizer-0.4.30-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/51/9f/362c5093c5329c989f3ae5ff1be63ba39fef7a1c356b11da14c3174139ba/json_stream_rs_tokenizer-0.5.0-cp313-cp313-manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/70/50/73f9a5aa0810cdccda9c1d20be3cbe4a4d6ea6bfd6931464a44c95eef731/numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/9d/de/04c8c61232f7244aa0a4b9a9fbd63a89d5aeaf94b2fc9d1d16e2faa5cbb0/psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f7/a3/51e02ebc2a14974170d51e2410dfdab58870ea9bcd37cda15bd553d24dc4/pandas-3.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/89/4b/7782438b551dbb0468892a276b8c789b8bbdb25ea5c5eb27faadd753e037/pyarrow-21.0.0-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/8d/b2/e658bf56f4d04a83b366128920fbda93024dee851f134660491b8cc97863/pybcj-1.0.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/86/43/2ce282501a39f32f27cef2a3ee11c621f9d5348da4441d2326f2fcc9b17e/pybcj-1.0.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c8/a9/8862616a85cf450d2822dbd4fff1fcaba90877907a6ff5bc2672cafe42f8/pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/89/a9/79eca15094f7806a3adcf0bb976ab4346b0fb1bd87956c1933df44546c14/pyogrio-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0b/ae/4b0a4fe34f91cce15aa086a3d374ee21f8261445fe935bc835d6d8ba75bb/pyppmd-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/de/16/8540b868a5b0fa9eaf743856f86088e3cac8477fbf2339e76c5c973622cc/pyzstd-0.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/46/35/b874f79d03e9f900012cf609f7fff97b77164f2e14ee5aac282f8a999c1b/pyogrio-0.12.1-cp313-cp313-manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/64/fd/673d429df719affa1445611288aab6111c0bc87e51eb4677fe2421a1dd64/pyppmd-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f2/a2/83fc37e2a58090e3d2ff79175a95493c664bcd0b653dd75cb9134645a4e5/shapely-2.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.0-py313h25d8036_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.3-py313h537e735_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/backports.zstd-1.3.0-py313h591e92b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py313h253db18_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.2.0-py313h8d69aa9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.5-hf13058a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313h8715ba9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-45.0.7-py313h2686292_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313hf57695f_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-46.0.5-py313h6e3882f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/frozenlist-1.7.0-py313haf29b43_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.7.1-py313hff33f76_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.74.1-py313ha22d4e2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.8.0-py313h49a2f01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.78.0-py313h3d05629_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hcca01a6_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20250512.1-cxx17_hfc00f1c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20260107.1-cxx17_h7ed6875_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.14.1-h5dec5d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.2-h3d58e20_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.24-hcc1b750_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.18.0-h9a2545f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.8-h4fb565c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.1-h21dd04a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.6-h281671d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.74.1-h451496d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.0-h6e16a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.78.0-h147dede_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.2-h8616949_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.2-h11316ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.67.0-h3338091_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.31.1-h6e993e7_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.08.12-h554ac88_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.50.4-h39a8b3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.33.5-h29d92e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.11.05-h6e8c311_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.2-hb99441e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-haa3b502_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.1.10-h07ed6ef_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.2.4-h06b67a2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.6.0-hb807250_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-hd23fc13_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.6.3-py313h797cdad_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.7.0-py313h5d7b66b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.5.4-h230baf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.0-h3124640_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.1-hb6871ef_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.1-h4aacef1_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/propcache-0.3.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.31.1-py313hc85ccdc_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.33.5-py313hc1d2497_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.7.2-py313hc0f1baa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.7-h5eba815_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.12-h894a449_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h0f4d31d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.08.12-h7df6414_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h7c6a591_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.11.05-h77e0585_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.50.4-h64b5abc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.51.2-h5af3ad2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.17.3-py313h585f44e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h4132b18_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.20.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstandard-0.25.0-py313hcb05632_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.22.0-py313h0f4d31d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6b/69/b3b87d25a8d31dc0a4f0a9e441f2e02e198cff4259b5ecb877b73505c8dc/inflate64-1.0.3-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b8/5f/6f89c8524503fd7a9ca2bd91fe60d7291b3f684e9d41edb38ef49e10fc3d/inflate64-1.0.4-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a9/2f/6990bb99ca33906f0a57c3b17a7e4a5a4464bfd92506282da1cf61c7f567/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/0e/b8/2cf6e936604314265c76aa86324a14e1390c336702a741b13ded2f2a6ddc/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/4d/0b/620591441457e25f3404c8057eb924d04f161244cb8a3680d529419aa86e/numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/46/62/ce4051019ee20ce0ed74432dd73a5bb087a6704284a470bb8adff69a0932/psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/fa/7f0ac4ca8877c57537aaff2a842f8760e630d8e824b730eb2e859ffe96ca/pandas-3.0.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ce/e8/e87d9e3b2489302b3a1aea709aaca4b781c5252fcb812a17ab6275a9a484/pyarrow-21.0.0-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0d/ab/e04befe57175c0ef6f00368263e17ef79dadfaf633057dcd13711ef06678/pybcj-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/47/e5/68bffbc87581ea96bb4aea623d8cd085786f36d5b912ed8d9bade3265110/pybcj-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7a/62/f5221a191a97157d240cf6643747558759126c76ee92f29a3f4aee3197a5/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/20/bc/34bd87641fc2ecc6d842d6d758bbaa8d58aea4d36aa6a1111cbc9d450e74/pyogrio-0.11.1-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/f6/b8/fb8de2664cabc12621b6eed4bb9783b41336e72e0f76ebce42e3e9f58728/pyppmd-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/f5/55/9e200f8ad193bb9d060cd724a8f876e40be918eece578c46c33cab336cf4/pyzstd-0.18.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/66/ac/5559f8a35d58a16cbb2dd7602dd11936ff8796d8c9bf789f14da88764ec3/pyogrio-0.12.1-cp313-cp313-macosx_12_0_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/dd/02/caf6305224b9432ea7373670d101392f620c1ce741d6f95458b1fb9a16a4/pyppmd-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/c3/90/98ef257c23c46425dc4d1d31005ad7c8d649fe423a38b917db02c30f1f5a/shapely-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-arm64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.0-py313ha205f9d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.3-py313h53c0e3e_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/backports.zstd-1.3.0-py313h48bb75e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py313hb4b7877_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.2.0-py313hde1f3bb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.5-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h89bd988_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-45.0.7-py313h06766fd_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h224173a_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-46.0.5-py313he3f6fad_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/frozenlist-1.7.0-py313hf28abc0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.7.1-py313h7962f2b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.74.1-py313hb057f1c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.8.0-py313h11ab6f4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.78.0-py313hfa4fce0_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-h38cb7af_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-hd64df32_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20250512.1-cxx17_hd41c47c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20260107.1-cxx17_h2062a1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.14.1-h73640d1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.2-hf598326_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.24-h5773f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.18.0-hd5a2499_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-h55c6f16_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.74.1-h3063b79_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.0-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.78.0-h3e3f78d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.31.1-h702a38d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.08.12-h91c62da_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.33.5-h4a5acfd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.11.05-h4c27e2a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h7dc4979_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.1.10-h1821781_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.2.4-h4ddebb9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.6.3-py313h6347b5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.7.0-py313h92dd972_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.0-hf83150c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.1-hfb14a63_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/propcache-0.3.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.31.1-py313he4076bf_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.33.5-py313h0fe2d26_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.7.2-py313h698103d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.12-h20e6be0_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h7d74516_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.08.12-h64b956e_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h65a2061_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.11.05-ha480c28_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.50.4-hb5dd463_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.51.2-h77b7338_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.17.3-py313hcdf3177_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.20.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstandard-0.25.0-py313h9734d34_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.22.0-py313h7d74516_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d0/53/62fd8e9f2016936ddf87e5678994f25c97bb2e4d82215f28a15bfaebc9b9/inflate64-1.0.3-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7d/14/9eadd59244b38cf85ccd0ca43d1296c50b3a33aa37be4fb68a1928efa58c/inflate64-1.0.4-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/01/7b/55f5457b0edadfe67439a9b7c7e771dd21f9a10d25815f3e8b48b05fc212/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3a/84/fa953089b66f84be37fa3313855b8f95ca9d89aafd297f6e675d21cfb144/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/45/e1/210b2d8b31ce9119145433e6ea78046e30771de3fe353f313b2778142f34/numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/38/61/f76959fba841bf5b61123fbf4b650886dc4094c6858008b5bf73d9057216/psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/11/28a221815dcea4c0c9414dfc845e34a84a6a7dabc6da3194498ed5ba4361/pandas-3.0.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/16/ca/c7eaa8e62db8fb37ce942b1ea0c6d7abfe3786ca193957afa25e71b81b66/pyarrow-21.0.0-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/c2/aa/25877ccb48f638c5cef205ed8185848e7daff53f152cdd6e014ceee86753/pybcj-1.0.6-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/ed/ad/718d6daa0d5e15e2131301220eaefbf6bc8cd0c90791c5ac18c893be111a/pybcj-1.0.7-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/dd/9c/1a8f35daa39784ed8adf93a694e7e5dc15c23c741bbda06e1d45f8979e9e/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_universal2.whl - - pypi: https://files.pythonhosted.org/packages/f2/68/86328e36d010ee565ce0c65cdf9b830afcb1fb5972f537fe1cc561a49247/pyogrio-0.11.1-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/da/aa/7f8198de419bff405aa77c444fbf9d300ce86cc4889e91101669439c616d/pyppmd-1.2.0-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/64/73/28bc86e284ca5e5ea082641748f2a583c9db8744dbf2c28d54e85e101114/pyzstd-0.18.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/be/56/f56e79f71b84aa9bea25fdde39fab3846841bd7926be96f623eb7253b7e1/pyogrio-0.12.1-cp313-cp313-macosx_12_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/45/82/8c5d3f0f738a3cf5c209d1471efda105a16417c0aaa91a2ad39efb3d4efb/pyppmd-1.3.1-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6d/ab/0bee5a830d209adcd3a01f2d4b70e587cdd9fd7380d5198c064091005af8/shapely-2.1.2-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ win-64: - - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.0-py313h4e0b5e6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.3-py313h51e1470_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/backports.zstd-1.3.0-py313h2a31948_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py313hfe59770_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.2.0-py313h3ebfc14_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.5-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-h4c7d964_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.6-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyha7b4d00_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-45.0.7-py313h392ebe0_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-46.0.5-py313hf5c5e30_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/frozenlist-1.7.0-py313h0c48a3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/gcsfs-2025.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.7.1-py313h5327936_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.74.1-py313h3c83859_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.8.0-py313h5327936_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.78.0-py313hbfc34d6_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h6470a55_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20250512.1-cxx17_habfad5f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20260107.1-cxx17_h0eb2380_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.14.1-h88aaa65_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.24-h76ddb4d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.74.1-h317e13b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.31.1-hdcda5b4_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.08.12-h0eb2380_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.18.0-h8206538_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.78.0-h9ff2b3e_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.33.5-h61fc761_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.11.05-h04e5de1_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h550210a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.1.10-h49e36cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.2.4-h49e36cd_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.6.3-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.7.0-py313hd650c13_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/oauthlib-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.0-h9080b7b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.1-hd30e2cd_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/propcache-0.3.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.31.1-py313h16c7a9f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.33.5-py313h16c7a9f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.7.2-py313h24787ba_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.7-hdf00ec1_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.12-h09917c8_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.08.12-ha104f34_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.11.05-ha104f34_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/s3fs-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.50.4-hdb435a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.51.2-hdb435a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_31.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_34.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.17.3-py313h5ea7bf4_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.20.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.25.0-py313h5fd188c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.22.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/dd/9d/21c2baa41ac3aa762bcbb66a7a9f00b7857489fe7531a2e7d35df262da94/inflate64-1.0.3-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e7/4f/5784ee1eb8260f2310e24ef2883f1f494f9332bcfde4ed14ee780372149e/inflate64-1.0.4-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/17/1c/84f79b4e9702160f9da874ec279e52b2ca8c20ddbfe6ba9207fa420fdaf9/json_stream_rs_tokenizer-0.4.30-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b4/f1/f992895d069297e4aa7a14ff1e510645fb8f2f8e16648484e6c68150bbae/json_stream_rs_tokenizer-0.5.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/bb/f9/12297ed8d8301a401e7d8eb6b418d32547f1d700ed3c038d325a605421a4/numpy-2.1.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c9/8c/c6638d9f67e45e07656b3826405c5cc5f57f6fd07c8b2572ade328c86e22/pandas-3.0.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/52/21/df6e5cb6c918d5321a4db241be78fd71d5d18561a4458eec5757b0b6a1b2/pybcj-1.0.6-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/5c/71/a0d58633236783028c08e585b3c4f4715a4286970b4ec4a25acfe23794f1/pybcj-1.0.7-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/69/96/11f36f71a865dd6df03716d33bd07a67e9d20f6b8d39820470b766af323c/pycryptodomex-3.23.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/2b/f3/7722bc81e9eee39b528c1cbc6289a26d2d3b1b187491ed8493457d6a3a0e/pyogrio-0.11.1-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/58/46/4554bc202b4ec0307de72aeb3b7ea6e8585f102d832b2d22ab0e8fc0c3ee/pyppmd-1.2.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a5/8e/3f6f445ee23864988ae3cfd6cebd3fe79dd42dbaa50538275928082e3df8/pyzstd-0.18.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/6c/6d/311d8faca142f39b4d158c94ed7eb237a197d41dd7eb67f53442a7904e04/pyppmd-1.3.1-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ default: @@ -1260,424 +1236,403 @@ environments: - https://pypi.org/simple packages: linux-64: - - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.0-py313h301e4d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.3-py313hd6074c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.3.0-py313h18e8e13_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf01b4d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.7.0-py313h6b9daa2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.24-h86f0d12_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.18.0-hcf29cc6_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.1.10-hb700be7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.2.4-hb700be7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.7.0-py313h3dea7bd_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.0-hb72c0af_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.1-he0df7b0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/propcache-0.3.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.2-py313h77f6078_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.12-hc97d973_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.50.4-hbc0de68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.51.2-h04a0ce9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.20.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.22.0-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3e/44/17e812a3e4dd86fb03d5d271927b86615c7e8782325ca878f2c9bae10069/inflate64-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c0/c5/038dc2593bbc4272d87eac8c9f75692267d47f834ced888f6d81995df606/inflate64-1.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ee/00/8b8a05b5125b26b74b27126aa2842118004702dd4e00f732ce675e427f4b/json_stream_rs_tokenizer-0.4.30-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/51/9f/362c5093c5329c989f3ae5ff1be63ba39fef7a1c356b11da14c3174139ba/json_stream_rs_tokenizer-0.5.0-cp313-cp313-manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/70/50/73f9a5aa0810cdccda9c1d20be3cbe4a4d6ea6bfd6931464a44c95eef731/numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/9d/de/04c8c61232f7244aa0a4b9a9fbd63a89d5aeaf94b2fc9d1d16e2faa5cbb0/psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f7/a3/51e02ebc2a14974170d51e2410dfdab58870ea9bcd37cda15bd553d24dc4/pandas-3.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/89/4b/7782438b551dbb0468892a276b8c789b8bbdb25ea5c5eb27faadd753e037/pyarrow-21.0.0-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/8d/b2/e658bf56f4d04a83b366128920fbda93024dee851f134660491b8cc97863/pybcj-1.0.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/86/43/2ce282501a39f32f27cef2a3ee11c621f9d5348da4441d2326f2fcc9b17e/pybcj-1.0.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c8/a9/8862616a85cf450d2822dbd4fff1fcaba90877907a6ff5bc2672cafe42f8/pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/89/a9/79eca15094f7806a3adcf0bb976ab4346b0fb1bd87956c1933df44546c14/pyogrio-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0b/ae/4b0a4fe34f91cce15aa086a3d374ee21f8261445fe935bc835d6d8ba75bb/pyppmd-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/de/16/8540b868a5b0fa9eaf743856f86088e3cac8477fbf2339e76c5c973622cc/pyzstd-0.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/46/35/b874f79d03e9f900012cf609f7fff97b77164f2e14ee5aac282f8a999c1b/pyogrio-0.12.1-cp313-cp313-manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/64/fd/673d429df719affa1445611288aab6111c0bc87e51eb4677fe2421a1dd64/pyppmd-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f2/a2/83fc37e2a58090e3d2ff79175a95493c664bcd0b653dd75cb9134645a4e5/shapely-2.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.0-py313h25d8036_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.3-py313h537e735_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py313h253db18_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/backports.zstd-1.3.0-py313h591e92b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.2.0-py313h8d69aa9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.5-hf13058a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313h8715ba9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/frozenlist-1.7.0-py313haf29b43_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hcca01a6_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.14.1-h5dec5d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.2-h3d58e20_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.24-hcc1b750_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.18.0-h9a2545f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.8-h4fb565c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.1-h21dd04a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.6-h281671d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.0-h6e16a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.2-h8616949_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.2-h11316ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.67.0-h3338091_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.50.4-h39a8b3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.2-hb99441e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-haa3b502_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.1.10-h07ed6ef_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.2.4-h06b67a2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.6.0-hb807250_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-hd23fc13_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.6.3-py313h797cdad_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.7.0-py313h5d7b66b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.5.4-h230baf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.0-h3124640_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.1-hb6871ef_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.1-h4aacef1_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/propcache-0.3.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.7.2-py313hc0f1baa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.7-h5eba815_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.12-h894a449_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h0f4d31d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h7c6a591_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.50.4-h64b5abc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.51.2-h5af3ad2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h4132b18_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.20.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstandard-0.25.0-py313hcb05632_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.22.0-py313h0f4d31d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6b/69/b3b87d25a8d31dc0a4f0a9e441f2e02e198cff4259b5ecb877b73505c8dc/inflate64-1.0.3-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b8/5f/6f89c8524503fd7a9ca2bd91fe60d7291b3f684e9d41edb38ef49e10fc3d/inflate64-1.0.4-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a9/2f/6990bb99ca33906f0a57c3b17a7e4a5a4464bfd92506282da1cf61c7f567/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/0e/b8/2cf6e936604314265c76aa86324a14e1390c336702a741b13ded2f2a6ddc/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/4d/0b/620591441457e25f3404c8057eb924d04f161244cb8a3680d529419aa86e/numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/46/62/ce4051019ee20ce0ed74432dd73a5bb087a6704284a470bb8adff69a0932/psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/fa/7f0ac4ca8877c57537aaff2a842f8760e630d8e824b730eb2e859ffe96ca/pandas-3.0.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ce/e8/e87d9e3b2489302b3a1aea709aaca4b781c5252fcb812a17ab6275a9a484/pyarrow-21.0.0-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0d/ab/e04befe57175c0ef6f00368263e17ef79dadfaf633057dcd13711ef06678/pybcj-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/47/e5/68bffbc87581ea96bb4aea623d8cd085786f36d5b912ed8d9bade3265110/pybcj-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7a/62/f5221a191a97157d240cf6643747558759126c76ee92f29a3f4aee3197a5/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/20/bc/34bd87641fc2ecc6d842d6d758bbaa8d58aea4d36aa6a1111cbc9d450e74/pyogrio-0.11.1-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/f6/b8/fb8de2664cabc12621b6eed4bb9783b41336e72e0f76ebce42e3e9f58728/pyppmd-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/f5/55/9e200f8ad193bb9d060cd724a8f876e40be918eece578c46c33cab336cf4/pyzstd-0.18.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/66/ac/5559f8a35d58a16cbb2dd7602dd11936ff8796d8c9bf789f14da88764ec3/pyogrio-0.12.1-cp313-cp313-macosx_12_0_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/dd/02/caf6305224b9432ea7373670d101392f620c1ce741d6f95458b1fb9a16a4/pyppmd-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/c3/90/98ef257c23c46425dc4d1d31005ad7c8d649fe423a38b917db02c30f1f5a/shapely-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.0-py313ha205f9d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.3-py313h53c0e3e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py313hb4b7877_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/backports.zstd-1.3.0-py313h48bb75e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.2.0-py313hde1f3bb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.5-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h89bd988_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/frozenlist-1.7.0-py313hf28abc0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-h38cb7af_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-hd64df32_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.14.1-h73640d1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.2-hf598326_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.24-h5773f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.18.0-hd5a2499_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-h55c6f16_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.0-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h7dc4979_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.1.10-h1821781_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.2.4-h4ddebb9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.6.3-py313h6347b5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.7.0-py313h92dd972_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.0-hf83150c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.1-hfb14a63_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/propcache-0.3.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.7.2-py313h698103d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.12-h20e6be0_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h7d74516_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h65a2061_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.50.4-hb5dd463_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.51.2-h77b7338_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.20.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstandard-0.25.0-py313h9734d34_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.22.0-py313h7d74516_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d0/53/62fd8e9f2016936ddf87e5678994f25c97bb2e4d82215f28a15bfaebc9b9/inflate64-1.0.3-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7d/14/9eadd59244b38cf85ccd0ca43d1296c50b3a33aa37be4fb68a1928efa58c/inflate64-1.0.4-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/01/7b/55f5457b0edadfe67439a9b7c7e771dd21f9a10d25815f3e8b48b05fc212/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3a/84/fa953089b66f84be37fa3313855b8f95ca9d89aafd297f6e675d21cfb144/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/45/e1/210b2d8b31ce9119145433e6ea78046e30771de3fe353f313b2778142f34/numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/38/61/f76959fba841bf5b61123fbf4b650886dc4094c6858008b5bf73d9057216/psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/11/28a221815dcea4c0c9414dfc845e34a84a6a7dabc6da3194498ed5ba4361/pandas-3.0.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/16/ca/c7eaa8e62db8fb37ce942b1ea0c6d7abfe3786ca193957afa25e71b81b66/pyarrow-21.0.0-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/c2/aa/25877ccb48f638c5cef205ed8185848e7daff53f152cdd6e014ceee86753/pybcj-1.0.6-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/ed/ad/718d6daa0d5e15e2131301220eaefbf6bc8cd0c90791c5ac18c893be111a/pybcj-1.0.7-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/dd/9c/1a8f35daa39784ed8adf93a694e7e5dc15c23c741bbda06e1d45f8979e9e/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_universal2.whl - - pypi: https://files.pythonhosted.org/packages/f2/68/86328e36d010ee565ce0c65cdf9b830afcb1fb5972f537fe1cc561a49247/pyogrio-0.11.1-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/da/aa/7f8198de419bff405aa77c444fbf9d300ce86cc4889e91101669439c616d/pyppmd-1.2.0-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/64/73/28bc86e284ca5e5ea082641748f2a583c9db8744dbf2c28d54e85e101114/pyzstd-0.18.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/be/56/f56e79f71b84aa9bea25fdde39fab3846841bd7926be96f623eb7253b7e1/pyogrio-0.12.1-cp313-cp313-macosx_12_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/45/82/8c5d3f0f738a3cf5c209d1471efda105a16417c0aaa91a2ad39efb3d4efb/pyppmd-1.3.1-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6d/ab/0bee5a830d209adcd3a01f2d4b70e587cdd9fd7380d5198c064091005af8/shapely-2.1.2-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.0-py313h4e0b5e6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.3-py313h51e1470_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py313hfe59770_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/backports.zstd-1.3.0-py313h2a31948_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.2.0-py313h3ebfc14_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-h4c7d964_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyha7b4d00_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/frozenlist-1.7.0-py313h0c48a3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h6470a55_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.14.1-h88aaa65_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.24-h76ddb4d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.18.0-h8206538_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h550210a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.1.10-h49e36cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.2.4-h49e36cd_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.6.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.0-h9080b7b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.7.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.1-hd30e2cd_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/propcache-0.3.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.7.2-py313h24787ba_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.7-hdf00ec1_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.12-h09917c8_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.50.4-hdb435a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.51.2-hdb435a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.20.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.25.0-py313h5fd188c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.22.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/dd/9d/21c2baa41ac3aa762bcbb66a7a9f00b7857489fe7531a2e7d35df262da94/inflate64-1.0.3-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e7/4f/5784ee1eb8260f2310e24ef2883f1f494f9332bcfde4ed14ee780372149e/inflate64-1.0.4-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/17/1c/84f79b4e9702160f9da874ec279e52b2ca8c20ddbfe6ba9207fa420fdaf9/json_stream_rs_tokenizer-0.4.30-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b4/f1/f992895d069297e4aa7a14ff1e510645fb8f2f8e16648484e6c68150bbae/json_stream_rs_tokenizer-0.5.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/bb/f9/12297ed8d8301a401e7d8eb6b418d32547f1d700ed3c038d325a605421a4/numpy-2.1.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c9/8c/c6638d9f67e45e07656b3826405c5cc5f57f6fd07c8b2572ade328c86e22/pandas-3.0.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/52/21/df6e5cb6c918d5321a4db241be78fd71d5d18561a4458eec5757b0b6a1b2/pybcj-1.0.6-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/5c/71/a0d58633236783028c08e585b3c4f4715a4286970b4ec4a25acfe23794f1/pybcj-1.0.7-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/69/96/11f36f71a865dd6df03716d33bd07a67e9d20f6b8d39820470b766af323c/pycryptodomex-3.23.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/2b/f3/7722bc81e9eee39b528c1cbc6289a26d2d3b1b187491ed8493457d6a3a0e/pyogrio-0.11.1-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/58/46/4554bc202b4ec0307de72aeb3b7ea6e8585f102d832b2d22ab0e8fc0c3ee/pyppmd-1.2.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a5/8e/3f6f445ee23864988ae3cfd6cebd3fe79dd42dbaa50538275928082e3df8/pyzstd-0.18.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/6c/6d/311d8faca142f39b4d158c94ed7eb237a197d41dd7eb67f53442a7904e04/pyppmd-1.3.1-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ dev: @@ -1687,555 +1642,534 @@ environments: - https://pypi.org/simple packages: linux-64: - - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.0-py313h301e4d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.3-py313hd6074c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.3.0-py313h18e8e13_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf01b4d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf46b229_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.10.7-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.13.4-py313h3dea7bd_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/frozenlist-1.7.0-py313h6b9daa2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.24-h86f0d12_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.18.0-hcf29cc6_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.1.10-hb700be7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_17.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.2.4-hb700be7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.7.0-py313h3dea7bd_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.0-hb72c0af_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.1-he0df7b0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/propcache-0.3.1-py313h8060acc_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.2-py313h77f6078_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.12-hc97d973_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.12.8-hf9daec2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.50.4-hbc0de68_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.51.2-h04a0ce9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.1.0-py313h7037e92_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.20.1-py313h8060acc_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.22.0-py313h3dea7bd_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3e/44/17e812a3e4dd86fb03d5d271927b86615c7e8782325ca878f2c9bae10069/inflate64-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c0/c5/038dc2593bbc4272d87eac8c9f75692267d47f834ced888f6d81995df606/inflate64-1.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ee/00/8b8a05b5125b26b74b27126aa2842118004702dd4e00f732ce675e427f4b/json_stream_rs_tokenizer-0.4.30-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/51/9f/362c5093c5329c989f3ae5ff1be63ba39fef7a1c356b11da14c3174139ba/json_stream_rs_tokenizer-0.5.0-cp313-cp313-manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/70/50/73f9a5aa0810cdccda9c1d20be3cbe4a4d6ea6bfd6931464a44c95eef731/numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/9d/de/04c8c61232f7244aa0a4b9a9fbd63a89d5aeaf94b2fc9d1d16e2faa5cbb0/psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/f7/a3/51e02ebc2a14974170d51e2410dfdab58870ea9bcd37cda15bd553d24dc4/pandas-3.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/89/4b/7782438b551dbb0468892a276b8c789b8bbdb25ea5c5eb27faadd753e037/pyarrow-21.0.0-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/8d/b2/e658bf56f4d04a83b366128920fbda93024dee851f134660491b8cc97863/pybcj-1.0.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/86/43/2ce282501a39f32f27cef2a3ee11c621f9d5348da4441d2326f2fcc9b17e/pybcj-1.0.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/c8/a9/8862616a85cf450d2822dbd4fff1fcaba90877907a6ff5bc2672cafe42f8/pycryptodomex-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/89/a9/79eca15094f7806a3adcf0bb976ab4346b0fb1bd87956c1933df44546c14/pyogrio-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0b/ae/4b0a4fe34f91cce15aa086a3d374ee21f8261445fe935bc835d6d8ba75bb/pyppmd-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/46/35/b874f79d03e9f900012cf609f7fff97b77164f2e14ee5aac282f8a999c1b/pyogrio-0.12.1-cp313-cp313-manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/64/fd/673d429df719affa1445611288aab6111c0bc87e51eb4677fe2421a1dd64/pyppmd-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/de/16/8540b868a5b0fa9eaf743856f86088e3cac8477fbf2339e76c5c973622cc/pyzstd-0.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/f2/a2/83fc37e2a58090e3d2ff79175a95493c664bcd0b653dd75cb9134645a4e5/shapely-2.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.0-py313h25d8036_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.3-py313h537e735_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py313h253db18_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/backports.zstd-1.3.0-py313h591e92b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.2.0-py313h8d69aa9_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h500dc9f_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.5-hf13058a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313h8715ba9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313hf57695f_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.10.7-py313h0f4d31d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.13.4-py313h7c6a591_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/frozenlist-1.7.0-py313haf29b43_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hcca01a6_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.14.1-h5dec5d8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.2-h3d58e20_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.24-hcc1b750_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.18.0-h9a2545f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.8-h4fb565c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20250104-pl5321ha958ccf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.1-h21dd04a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.6-h281671d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.0-h6e16a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.2-h8616949_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.2-h11316ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.67.0-h3338091_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.50.4-h39a8b3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.2-hb99441e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.1-hed3591d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-haa3b502_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.1.10-h07ed6ef_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.2.4-h06b67a2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.6.0-hb807250_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.3.1-hd23fc13_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.6.3-py313h797cdad_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.7.0-py313h5d7b66b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.5-h0622a9a_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.5.4-h230baf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.0-h3124640_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.1-hb6871ef_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.1-h4aacef1_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/propcache-0.3.1-py313h717bdf5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.7.2-py313hc0f1baa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.7-h5eba815_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.12-h894a449_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h0f4d31d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h7c6a591_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.12.8-h6cc4cfe_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.50.4-h64b5abc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.51.2-h5af3ad2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py313h0c4e38b_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.1.0-py313h252b9d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h4132b18_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.20.1-py313h717bdf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstandard-0.25.0-py313hcb05632_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.22.0-py313h0f4d31d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/6b/69/b3b87d25a8d31dc0a4f0a9e441f2e02e198cff4259b5ecb877b73505c8dc/inflate64-1.0.3-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b8/5f/6f89c8524503fd7a9ca2bd91fe60d7291b3f684e9d41edb38ef49e10fc3d/inflate64-1.0.4-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a9/2f/6990bb99ca33906f0a57c3b17a7e4a5a4464bfd92506282da1cf61c7f567/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/0e/b8/2cf6e936604314265c76aa86324a14e1390c336702a741b13ded2f2a6ddc/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/4d/0b/620591441457e25f3404c8057eb924d04f161244cb8a3680d529419aa86e/numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/46/62/ce4051019ee20ce0ed74432dd73a5bb087a6704284a470bb8adff69a0932/psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/fa/7f0ac4ca8877c57537aaff2a842f8760e630d8e824b730eb2e859ffe96ca/pandas-3.0.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ce/e8/e87d9e3b2489302b3a1aea709aaca4b781c5252fcb812a17ab6275a9a484/pyarrow-21.0.0-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/0d/ab/e04befe57175c0ef6f00368263e17ef79dadfaf633057dcd13711ef06678/pybcj-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/47/e5/68bffbc87581ea96bb4aea623d8cd085786f36d5b912ed8d9bade3265110/pybcj-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/7a/62/f5221a191a97157d240cf6643747558759126c76ee92f29a3f4aee3197a5/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/20/bc/34bd87641fc2ecc6d842d6d758bbaa8d58aea4d36aa6a1111cbc9d450e74/pyogrio-0.11.1-cp313-cp313-macosx_12_0_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/f6/b8/fb8de2664cabc12621b6eed4bb9783b41336e72e0f76ebce42e3e9f58728/pyppmd-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/66/ac/5559f8a35d58a16cbb2dd7602dd11936ff8796d8c9bf789f14da88764ec3/pyogrio-0.12.1-cp313-cp313-macosx_12_0_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/dd/02/caf6305224b9432ea7373670d101392f620c1ce741d6f95458b1fb9a16a4/pyppmd-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/f5/55/9e200f8ad193bb9d060cd724a8f876e40be918eece578c46c33cab336cf4/pyzstd-0.18.0-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/c3/90/98ef257c23c46425dc4d1d31005ad7c8d649fe423a38b917db02c30f1f5a/shapely-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.0-py313ha205f9d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.3-py313h53c0e3e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py313hb4b7877_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/backports.zstd-1.3.0-py313h48bb75e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.2.0-py313hde1f3bb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_8.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.5-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h89bd988_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h224173a_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.10.7-py313h7d74516_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.13.4-py313h65a2061_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/frozenlist-1.7.0-py313hf28abc0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-h38cb7af_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-hd64df32_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.14.1-h73640d1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.2-hf598326_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.24-h5773f1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.18.0-hd5a2499_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-h55c6f16_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.0-h5505292_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.67.0-hc438710_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.1-h1590b86_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h7dc4979_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.1.10-h1821781_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.2.4-h4ddebb9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.6.3-py313h6347b5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.7.0-py313h92dd972_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.0-hf83150c_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.1-hfb14a63_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/propcache-0.3.1-py313ha9b7d5b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.7.2-py313h698103d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.12-h20e6be0_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h7d74516_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h65a2061_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.12.8-h575f11b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.50.4-hb5dd463_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.51.2-h77b7338_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py313hf9c7212_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.1.0-py313h5c29297_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h925e9cb_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.20.1-py313ha9b7d5b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstandard-0.25.0-py313h9734d34_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.22.0-py313h7d74516_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/d0/53/62fd8e9f2016936ddf87e5678994f25c97bb2e4d82215f28a15bfaebc9b9/inflate64-1.0.3-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/7d/14/9eadd59244b38cf85ccd0ca43d1296c50b3a33aa37be4fb68a1928efa58c/inflate64-1.0.4-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/01/7b/55f5457b0edadfe67439a9b7c7e771dd21f9a10d25815f3e8b48b05fc212/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/3a/84/fa953089b66f84be37fa3313855b8f95ca9d89aafd297f6e675d21cfb144/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/45/e1/210b2d8b31ce9119145433e6ea78046e30771de3fe353f313b2778142f34/numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/38/61/f76959fba841bf5b61123fbf4b650886dc4094c6858008b5bf73d9057216/psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/6f/11/28a221815dcea4c0c9414dfc845e34a84a6a7dabc6da3194498ed5ba4361/pandas-3.0.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/16/ca/c7eaa8e62db8fb37ce942b1ea0c6d7abfe3786ca193957afa25e71b81b66/pyarrow-21.0.0-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/c2/aa/25877ccb48f638c5cef205ed8185848e7daff53f152cdd6e014ceee86753/pybcj-1.0.6-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/ed/ad/718d6daa0d5e15e2131301220eaefbf6bc8cd0c90791c5ac18c893be111a/pybcj-1.0.7-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/dd/9c/1a8f35daa39784ed8adf93a694e7e5dc15c23c741bbda06e1d45f8979e9e/pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_universal2.whl - - pypi: https://files.pythonhosted.org/packages/f2/68/86328e36d010ee565ce0c65cdf9b830afcb1fb5972f537fe1cc561a49247/pyogrio-0.11.1-cp313-cp313-macosx_12_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/da/aa/7f8198de419bff405aa77c444fbf9d300ce86cc4889e91101669439c616d/pyppmd-1.2.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/be/56/f56e79f71b84aa9bea25fdde39fab3846841bd7926be96f623eb7253b7e1/pyogrio-0.12.1-cp313-cp313-macosx_12_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/45/82/8c5d3f0f738a3cf5c209d1471efda105a16417c0aaa91a2ad39efb3d4efb/pyppmd-1.3.1-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/64/73/28bc86e284ca5e5ea082641748f2a583c9db8744dbf2c28d54e85e101114/pyzstd-0.18.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6d/ab/0bee5a830d209adcd3a01f2d4b70e587cdd9fd7380d5198c064091005af8/shapely-2.1.2-cp313-cp313-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: ./ win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.0-py313h4e0b5e6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.3-py313h51e1470_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py313hfe59770_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/backports.zstd-1.3.0-py313h2a31948_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.2.0-py313h3ebfc14_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_8.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-h4c7d964_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-h4c7d964_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyha7b4d00_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.10.7-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.13.4-py313hd650c13_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/frozenlist-1.7.0-py313h0c48a3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2025.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h6470a55_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.14.1-h88aaa65_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.24-h76ddb4d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.18.0-h8206538_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.1-h9aa295b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h550210a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.1.10-h49e36cd_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.2.4-h49e36cd_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.6.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.0-h9080b7b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.7.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.1-hd30e2cd_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/propcache-0.3.1-py313hb4c8b1a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.19.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.7.2-py313h24787ba_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.7-hdf00ec1_100_cp313.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.12-h09917c8_100_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/responses-0.25.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.12.8-hd40eec1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.17.0-pyhe01879c_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.50.4-hdb435a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.51.2-hdb435a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.15.0-pyhcf101f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py313h1ec8472_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.1.0-py313hf069bd2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h6a83c73_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.20.1-py313hb4c8b1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.25.0-py313h5fd188c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - - pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.22.0-py313hd650c13_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + - pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz - pypi: https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/dd/9d/21c2baa41ac3aa762bcbb66a7a9f00b7857489fe7531a2e7d35df262da94/inflate64-1.0.3-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e7/4f/5784ee1eb8260f2310e24ef2883f1f494f9332bcfde4ed14ee780372149e/inflate64-1.0.4-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/17/1c/84f79b4e9702160f9da874ec279e52b2ca8c20ddbfe6ba9207fa420fdaf9/json_stream_rs_tokenizer-0.4.30-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/b4/f1/f992895d069297e4aa7a14ff1e510645fb8f2f8e16648484e6c68150bbae/json_stream_rs_tokenizer-0.5.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/bb/f9/12297ed8d8301a401e7d8eb6b418d32547f1d700ed3c038d325a605421a4/numpy-2.1.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c9/8c/c6638d9f67e45e07656b3826405c5cc5f57f6fd07c8b2572ade328c86e22/pandas-3.0.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/52/21/df6e5cb6c918d5321a4db241be78fd71d5d18561a4458eec5757b0b6a1b2/pybcj-1.0.6-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/5c/71/a0d58633236783028c08e585b3c4f4715a4286970b4ec4a25acfe23794f1/pybcj-1.0.7-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/69/96/11f36f71a865dd6df03716d33bd07a67e9d20f6b8d39820470b766af323c/pycryptodomex-3.23.0-cp37-abi3-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/2b/f3/7722bc81e9eee39b528c1cbc6289a26d2d3b1b187491ed8493457d6a3a0e/pyogrio-0.11.1-cp313-cp313-win_amd64.whl - - pypi: https://files.pythonhosted.org/packages/58/46/4554bc202b4ec0307de72aeb3b7ea6e8585f102d832b2d22ab0e8fc0c3ee/pyppmd-1.2.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/6c/6d/311d8faca142f39b4d158c94ed7eb237a197d41dd7eb67f53442a7904e04/pyppmd-1.3.1-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/a5/8e/3f6f445ee23864988ae3cfd6cebd3fe79dd42dbaa50538275928082e3df8/pyzstd-0.18.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/65/d4/f7407c3d15d5ac779c3dd34fbbc6ea2090f77bd7dd12f207ccf881551208/rfc3987-1.3.8-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/6e/d5/6fbc5770fc55e027dbd24571c4fd0b4ad6f2e310adbbda95ec39993f344c/spdx_license_list-3.27.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl - - pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl - pypi: ./ packages: -- conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 - md5: d7c89558ba9fa0495403155b64376d81 - license: None - purls: [] - size: 2562 - timestamp: 1578324546067 -- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - build_number: 16 - sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 - md5: 73aaf86a425cc6e73fcf236a5a46396d - depends: - - _libgcc_mutex 0.1 conda_forge +- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda + build_number: 20 + sha256: 1dd3fffd892081df9726d7eb7e0dea6198962ba775bd88842135a4ddb4deb3c9 + md5: a9f577daf3de00bca7c3c76c0ecbd1de + depends: + - __glibc >=2.17,<3.0.a0 - libgomp >=7.5.0 constrains: - - openmp_impl 9999 + - openmp_impl <0.0a0 license: BSD-3-Clause - license_family: BSD purls: [] - size: 23621 - timestamp: 1650670423406 -- conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.24.2-pyhcf101f3_0.conda - sha256: fb95ca4f267b5315f51d0288ef9240121ec8268ff22cb7f3e1876fd25b8a4015 - md5: 7f5e09ce210e1f4c06a75739846cf7ce + size: 28948 + timestamp: 1770939786096 +- conda: https://conda.anaconda.org/conda-forge/noarch/aiobotocore-2.25.2-pyhcf101f3_0.conda + sha256: 922fb146148449c6bc374a37fa9edb89b3af1c385392391339206d3ab3d571a3 + md5: 6e90a60dbb939d24a6295e19377cf0e6 depends: - python >=3.10 - aiohttp >=3.9.2,<4.0.0 - aioitertools >=0.5.1,<1.0.0 - - botocore >=1.40.15,<1.40.19 + - botocore >=1.40.46,<1.40.71 - python-dateutil >=2.1,<3.0.0 - jmespath >=0.7.1,<2.0.0 - multidict >=6.0.0,<7.0.0 @@ -2245,8 +2179,8 @@ packages: license_family: APACHE purls: - pkg:pypi/aiobotocore?source=hash-mapping - size: 79885 - timestamp: 1757743639414 + size: 80900 + timestamp: 1762893423043 - conda: https://conda.anaconda.org/conda-forge/noarch/aiohappyeyeballs-2.6.1-pyhd8ed1ab_0.conda sha256: 7842ddc678e77868ba7b92a726b437575b23aaec293bca0d40826f1026d90e27 md5: 18fd895e0e775622906cdabfc3cf0fb4 @@ -2258,9 +2192,9 @@ packages: - pkg:pypi/aiohappyeyeballs?source=hash-mapping size: 19750 timestamp: 1741775303303 -- conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.0-py313h301e4d9_0.conda - sha256: a6436f1c91bd5c0422931f4c6711878240a7e8f46abd4e917086606fc0b9883a - md5: 7526956f63a3af83dc15b68bb5d1b5c8 +- conda: https://conda.anaconda.org/conda-forge/linux-64/aiohttp-3.13.3-py313hd6074c6_0.conda + sha256: 3557801fd8af31d15ddf0e754a6e6e1a6cc3490eebb9fdae0a6730bd90e01a8b + md5: 684fb9c78db5024b939a1ed0a107f464 depends: - __glibc >=2.17,<3.0.a0 - aiohappyeyeballs >=2.5.0 @@ -2277,11 +2211,11 @@ packages: license_family: Apache purls: - pkg:pypi/aiohttp?source=hash-mapping - size: 1014434 - timestamp: 1759836680463 -- conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.0-py313h25d8036_0.conda - sha256: b3eebfd5fe41fae419e80cdabf84beac0d10ce861fec34db4e16b4774ccd1a58 - md5: ba21e46cf38cb572eae0ded49c61e81d + size: 1028803 + timestamp: 1767525054962 +- conda: https://conda.anaconda.org/conda-forge/osx-64/aiohttp-3.13.3-py313h537e735_0.conda + sha256: 231fa712cba9ed69e0094523d395057a6473963c7a992ed09422924addc9836b + md5: 0f682d864876fd75783e384e923cb4fc depends: - __osx >=10.13 - aiohappyeyeballs >=2.5.0 @@ -2297,11 +2231,11 @@ packages: license_family: Apache purls: - pkg:pypi/aiohttp?source=hash-mapping - size: 988805 - timestamp: 1759836255483 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.0-py313ha205f9d_0.conda - sha256: 3d91d1ecf5509ea860eef2631d329087d5a821e12a9de132de33ef0ff521c5f8 - md5: fae0deeb9af9308b6dc5ff80c877ed56 + size: 1000418 + timestamp: 1767524921989 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/aiohttp-3.13.3-py313h53c0e3e_0.conda + sha256: 28f88df22b68fce5158e7a26387d5c285c72ff0f067d195a44ee3f687b595c2d + md5: 3360ba585f70b33d4976766b84bb47e7 depends: - __osx >=11.0 - aiohappyeyeballs >=2.5.0 @@ -2318,11 +2252,11 @@ packages: license_family: Apache purls: - pkg:pypi/aiohttp?source=hash-mapping - size: 987989 - timestamp: 1759836501030 -- conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.0-py313h4e0b5e6_0.conda - sha256: 3ed7d9448a538ccd55d464c3965548a3c10f2c1756bafaeeb71d0a9e7e6aba06 - md5: dcdb63501d690c744ea60c0202f74889 + size: 1001234 + timestamp: 1767525001456 +- conda: https://conda.anaconda.org/conda-forge/win-64/aiohttp-3.13.3-py313h51e1470_0.conda + sha256: f55bf200a3e4a6bb7716a469e14606a4752284d8c5b423e3ec6a4a994e2fc1f7 + md5: f134f73fa3484422bca07b32bf2291c8 depends: - aiohappyeyeballs >=2.5.0 - aiosignal >=1.4.0 @@ -2340,20 +2274,20 @@ packages: license_family: Apache purls: - pkg:pypi/aiohttp?source=hash-mapping - size: 962389 - timestamp: 1759836203198 -- conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.12.0-pyhd8ed1ab_1.conda - sha256: 7d56e547a819a03c058dd8793ca9df6ff9825812da52c214192edb61a7de1c95 - md5: 3eb47adbffac44483f59e580f8600a1e + size: 971973 + timestamp: 1767524793995 +- conda: https://conda.anaconda.org/conda-forge/noarch/aioitertools-0.13.0-pyhd8ed1ab_0.conda + sha256: 41bc8d85274c5badabe6c333cdd2e77e9c6bc0fb64251211988a71e1fd83486b + md5: 65d5134ff98cb3727022a4f23993a2e6 depends: - - python >=3.9 + - python >=3.10 - typing_extensions >=4.0 license: MIT license_family: MIT purls: - pkg:pypi/aioitertools?source=hash-mapping - size: 25063 - timestamp: 1735329177103 + size: 25450 + timestamp: 1768757675539 - conda: https://conda.anaconda.org/conda-forge/noarch/aiosignal-1.4.0-pyhd8ed1ab_0.conda sha256: 8dc149a6828d19bf104ea96382a9d04dae185d4a03cc6beb1bc7b84c428e3ca2 md5: 421a865222cd0c9d83ff08bc78bf3a61 @@ -2367,13 +2301,14 @@ packages: - pkg:pypi/aiosignal?source=hash-mapping size: 13688 timestamp: 1751626573984 -- pypi: https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl name: arrow - version: 1.3.0 - sha256: c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 + version: 1.4.0 + sha256: 749f0769958ebdc79c173ff0b0670d59051a535fa26e8eba02953dc19eb43205 requires_dist: - python-dateutil>=2.7.0 - - types-python-dateutil>=2.8.10 + - backports-zoneinfo==0.2.1 ; python_full_version < '3.9' + - tzdata ; python_full_version >= '3.9' - doc8 ; extra == 'doc' - sphinx>=7.0.0 ; extra == 'doc' - sphinx-autobuild ; extra == 'doc' @@ -2384,20 +2319,77 @@ packages: - pytest ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-mock ; extra == 'test' - - pytz==2021.1 ; extra == 'test' + - pytz==2025.2 ; extra == 'test' - simplejson==3.* ; extra == 'test' requires_python: '>=3.8' -- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyh71513ae_0.conda - sha256: f6c3c19fa599a1a856a88db166c318b148cac3ee4851a9905ed8a04eeec79f45 - md5: c7944d55af26b6d2d7629e27e9a972c1 +- conda: https://conda.anaconda.org/conda-forge/noarch/attrs-25.4.0-pyhcf101f3_1.conda + sha256: c13d5e42d187b1d0255f591b7ce91201d4ed8a5370f0d986707a802c20c9d32f + md5: 537296d57ea995666c68c821b00e360b depends: - python >=3.10 + - python license: MIT license_family: MIT purls: - pkg:pypi/attrs?source=compressed-mapping - size: 60101 - timestamp: 1759762331492 + size: 64759 + timestamp: 1764875182184 +- conda: https://conda.anaconda.org/conda-forge/linux-64/backports.zstd-1.3.0-py313h18e8e13_0.conda + sha256: 9552afbec37c4d8d0e83a5c4c6b3c7f4b8785f935094ce3881e0a249045909ce + md5: d9e90792551a527200637e23a915dd79 + depends: + - python + - libgcc >=14 + - __glibc >=2.17,<3.0.a0 + - python_abi 3.13.* *_cp313 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause AND MIT AND EPL-2.0 + purls: + - pkg:pypi/backports-zstd?source=hash-mapping + size: 240943 + timestamp: 1767044981366 +- conda: https://conda.anaconda.org/conda-forge/osx-64/backports.zstd-1.3.0-py313h591e92b_0.conda + sha256: 4133ba0e5ab6a0955b57a49ad4014148df6e4b79bef4309a1cdd407afd853444 + md5: c602f30b6c45567cd5cfb074631beb5d + depends: + - python + - __osx >=10.13 + - python_abi 3.13.* *_cp313 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause AND MIT AND EPL-2.0 + purls: + - pkg:pypi/backports-zstd?source=hash-mapping + size: 241212 + timestamp: 1767044991370 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/backports.zstd-1.3.0-py313h48bb75e_0.conda + sha256: f3047ca3b41bb444b4b5a71a6eee182623192c77019746dd4685fd260becb249 + md5: 54008c5cc8928e5cb5a0f9206b829451 + depends: + - python + - python 3.13.* *_cp313 + - __osx >=11.0 + - zstd >=1.5.7,<1.6.0a0 + - python_abi 3.13.* *_cp313 + license: BSD-3-Clause AND MIT AND EPL-2.0 + purls: + - pkg:pypi/backports-zstd?source=hash-mapping + size: 244371 + timestamp: 1767045003420 +- conda: https://conda.anaconda.org/conda-forge/win-64/backports.zstd-1.3.0-py313h2a31948_0.conda + sha256: 1e76ed9bcf07ef1df9c964d73e9cda08a0380845d09c8da1678a1687dc087c34 + md5: cdcdfe68c5bc9af9e908e35ebffc9fe1 + depends: + - python + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + - ucrt >=10.0.20348.0 + - python_abi 3.13.* *_cp313 + - zstd >=1.5.7,<1.6.0a0 + license: BSD-3-Clause AND MIT AND EPL-2.0 + purls: + - pkg:pypi/backports-zstd?source=hash-mapping + size: 240406 + timestamp: 1767045016907 - conda: https://conda.anaconda.org/conda-forge/noarch/blinker-1.9.0-pyhff2d567_0.conda sha256: f7efd22b5c15b400ed84a996d777b6327e5c402e79e3c534a7e086236f1eb2dc md5: 42834439227a4551b939beeeb8a4b085 @@ -2409,9 +2401,9 @@ packages: - pkg:pypi/blinker?source=hash-mapping size: 13934 timestamp: 1731096548765 -- conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.18-pyhd8ed1ab_0.conda - sha256: ae41db8e340a72fcf7f4804fbaa12c8c46da033637cfd205a6bf05a811ab40bb - md5: 42f86fbce14d7a025ff914cfc7e5450e +- conda: https://conda.anaconda.org/conda-forge/noarch/botocore-1.40.70-pyhd8ed1ab_0.conda + sha256: 92e3b65d162600eec4c858a870e2b7593886d837c965ca51bf8bd1ed0e6f1e27 + md5: 280a8a31bface0a6b1cf49ea85004128 depends: - jmespath >=0.7.1,<2.0.0 - python >=3.10 @@ -2421,11 +2413,11 @@ packages: license_family: Apache purls: - pkg:pypi/botocore?source=hash-mapping - size: 7870142 - timestamp: 1756247044936 -- conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py313h7033f15_4.conda - sha256: b1941426e564d326097ded7af8b525540be219be7a88ca961d58a8d4fc116db2 - md5: bc8624c405856b1d047dd0a81829b08c + size: 8150945 + timestamp: 1762813779810 +- conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.2.0-py313hf159716_1.conda + sha256: dadec2879492adede0a9af0191203f9b023f788c18efd45ecac676d424c458ae + md5: 6c4d3597cf43f3439a51b2b13e29a4ba depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 @@ -2433,32 +2425,32 @@ packages: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: - - libbrotlicommon 1.1.0 hb03c661_4 + - libbrotlicommon 1.2.0 hb03c661_1 license: MIT license_family: MIT purls: - - pkg:pypi/brotli?source=compressed-mapping - size: 353639 - timestamp: 1756599425945 -- conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py313h253db18_4.conda - sha256: fc4db6916598d1c634de85337db6d351d6f1cb8a93679715e0ee572777a5007e - md5: 8643345f12d0db3096a8aa0abd74f6e9 + - pkg:pypi/brotli?source=hash-mapping + size: 367721 + timestamp: 1764017371123 +- conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.2.0-py313h8d69aa9_1.conda + sha256: 3d328413ff65a12af493066d721d12f5ee82a0adf3565629ce4c797c4680162c + md5: 7c5e382b4d5161535f1dd258103fea51 depends: - __osx >=10.13 - libcxx >=19 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: - - libbrotlicommon 1.1.0 h1c43f85_4 + - libbrotlicommon 1.2.0 h8616949_1 license: MIT license_family: MIT purls: - - pkg:pypi/brotli?source=compressed-mapping - size: 369082 - timestamp: 1756600456664 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py313hb4b7877_4.conda - sha256: a6402a7186ace5c3eb21ed4ce50eda3592c44ce38ab4e9a7ddd57d72b1e61fb3 - md5: 9518cd948fc334d66119c16a2106a959 + - pkg:pypi/brotli?source=hash-mapping + size: 389859 + timestamp: 1764018040907 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.2.0-py313hde1f3bb_1.conda + sha256: 2e21dccccd68bedd483300f9ab87a425645f6776e6e578e10e0dd98c946e1be9 + md5: b03732afa9f4f54634d94eb920dfb308 depends: - __osx >=11.0 - libcxx >=19 @@ -2466,16 +2458,16 @@ packages: - python >=3.13,<3.14.0a0 *_cp313 - python_abi 3.13.* *_cp313 constrains: - - libbrotlicommon 1.1.0 h6caf38d_4 + - libbrotlicommon 1.2.0 hc919400_1 license: MIT license_family: MIT purls: - pkg:pypi/brotli?source=hash-mapping - size: 341104 - timestamp: 1756600117644 -- conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py313hfe59770_4.conda - sha256: 0e98ebafd586c4da7d848f9de94770cb27653ba9232a2badb28f8a01f6e48fb5 - md5: 477bf04a8a3030368068ccd39b8c5532 + size: 359568 + timestamp: 1764018359470 +- conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.2.0-py313h3ebfc14_1.conda + sha256: 3558006cd6e836de8dff53cbe5f0b9959f96ea6a6776b4e14f1c524916dd956c + md5: 916a39a0261621b8c33e9db2366dd427 depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -2483,19 +2475,19 @@ packages: - vc >=14.3,<15 - vc14_runtime >=14.44.35208 constrains: - - libbrotlicommon 1.1.0 hfd05255_4 + - libbrotlicommon 1.2.0 hfd05255_1 license: MIT license_family: MIT purls: - - pkg:pypi/brotli?source=compressed-mapping - size: 323459 - timestamp: 1756600051044 -- pypi: https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl + - pkg:pypi/brotli?source=hash-mapping + size: 335605 + timestamp: 1764018132514 +- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl name: build - version: 1.3.0 - sha256: 7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 + version: 1.4.0 + sha256: 6a07c1b8eb6f2b311b96fcbdbce5dab5fe637ffda0fd83c9cac622e927501596 requires_dist: - - packaging>=19.1 + - packaging>=24.0 - pyproject-hooks - colorama ; os_name == 'nt' - importlib-metadata>=4.6 ; python_full_version < '3.10.2' @@ -2548,94 +2540,83 @@ packages: purls: [] size: 55977 timestamp: 1757437738856 -- conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.5-hb9d3cd8_0.conda - sha256: f8003bef369f57396593ccd03d08a8e21966157269426f71e943f96e4b579aeb - md5: f7f0d6cc2dc986d42ac2689ec88192be +- conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.6-hb03c661_0.conda + sha256: cc9accf72fa028d31c2a038460787751127317dcfa991f8d1f1babf216bb454e + md5: 920bb03579f15389b9e512095ad995b7 depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 license: MIT license_family: MIT purls: [] - size: 206884 - timestamp: 1744127994291 -- conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.5-hf13058a_0.conda - sha256: b37f5dacfe1c59e0a207c1d65489b760dff9ddb97b8df7126ceda01692ba6e97 - md5: eafe5d9f1a8c514afe41e6e833f66dfd + size: 207882 + timestamp: 1765214722852 +- conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.34.6-hb5e19a0_0.conda + sha256: 2f5bc0292d595399df0d168355b4e9820affc8036792d6984bd751fdda2bcaea + md5: fc9a153c57c9f070bebaa7eef30a8f17 depends: - __osx >=10.13 license: MIT license_family: MIT purls: [] - size: 184824 - timestamp: 1744128064511 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.5-h5505292_0.conda - sha256: b4bb55d0806e41ffef94d0e3f3c97531f322b3cb0ca1f7cdf8e47f62538b7a2b - md5: f8cd1beb98240c7edb1a95883360ccfa + size: 186122 + timestamp: 1765215100384 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.34.6-hc919400_0.conda + sha256: 2995f2aed4e53725e5efbc28199b46bf311c3cab2648fc4f10c2227d6d5fa196 + md5: bcb3cba70cf1eec964a03b4ba7775f01 depends: - __osx >=11.0 license: MIT license_family: MIT purls: [] - size: 179696 - timestamp: 1744128058734 -- conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.5-h2466b09_0.conda - sha256: b52214a0a5632a12587d8dac6323f715bcc890f884efba5a2ce01c48c64ec6dc - md5: b1f84168da1f0b76857df7e5817947a9 + size: 180327 + timestamp: 1765215064054 +- conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.34.6-hfd05255_0.conda + sha256: 5e1e2e24ce279f77e421fcc0e5846c944a8a75f7cf6158427c7302b02984291a + md5: 7c6da34e5b6e60b414592c74582e28bf depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: MIT license_family: MIT purls: [] - size: 194147 - timestamp: 1744128507613 -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-h4c7d964_0.conda - sha256: bfb7f9f242f441fdcd80f1199edd2ecf09acea0f2bcef6f07d7cbb1a8131a345 - md5: e54200a1cd1fe33d61c9df8d3b00b743 + size: 193550 + timestamp: 1765215100218 +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-h4c7d964_0.conda + sha256: 4ddcb01be03f85d3db9d881407fb13a673372f1b9fac9c836ea441893390e049 + md5: 84d389c9eee640dda3d26fc5335c67d8 depends: - __win license: ISC purls: [] - size: 156354 - timestamp: 1759649104842 -- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2025.10.5-hbd8a1cb_0.conda - sha256: 3b5ad78b8bb61b6cdc0978a6a99f8dfb2cc789a451378d054698441005ecbdb6 - md5: f9e5fbc24009179e8b0409624691758a + size: 147139 + timestamp: 1767500904211 +- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.1.4-hbd8a1cb_0.conda + sha256: b5974ec9b50e3c514a382335efa81ed02b05906849827a34061c496f4defa0b2 + md5: bddacf101bb4dd0e51811cb69c7790e2 depends: - __unix license: ISC purls: [] - size: 155907 - timestamp: 1759649036195 -- conda: https://conda.anaconda.org/conda-forge/noarch/cachetools-6.2.0-pyhd8ed1ab_0.conda - sha256: 5cdf6c2624ad70baab0374d3a582e302b98d3cbfa7935e0aeab6a1857de0a7a0 - md5: 33a59a2cf83ab89ee546c72254521a4a - depends: - - python >=3.10 - license: MIT - license_family: MIT - purls: - - pkg:pypi/cachetools?source=hash-mapping - size: 16514 - timestamp: 1756198358026 -- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2025.10.5-pyhd8ed1ab_0.conda - sha256: 955bac31be82592093f6bc006e09822cd13daf52b28643c9a6abd38cd5f4a306 - md5: 257ae203f1d204107ba389607d375ded + size: 146519 + timestamp: 1767500828366 +- conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2026.1.4-pyhd8ed1ab_0.conda + sha256: 110338066d194a715947808611b763857c15458f8b3b97197387356844af9450 + md5: eacc711330cd46939f66cd401ff9c44b depends: - python >=3.10 license: ISC purls: - - pkg:pypi/certifi?source=hash-mapping - size: 160248 - timestamp: 1759648987029 -- conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf01b4d8_0.conda - sha256: cbead764b88c986642578bb39f77d234fbc3890bd301ed29f849a6d3898ed0fc - md5: 062317cc1cd26fbf6454e86ddd3622c4 + - pkg:pypi/certifi?source=compressed-mapping + size: 150969 + timestamp: 1767500900768 +- conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-2.0.0-py313hf46b229_1.conda + sha256: 2162a91819945c826c6ef5efe379e88b1df0fe9a387eeba23ddcf7ebeacd5bd6 + md5: d0616e7935acab407d1543b28c446f6f depends: - __glibc >=2.17,<3.0.a0 - - libffi >=3.4.6,<3.5.0a0 + - libffi >=3.5.2,<3.6.0a0 - libgcc >=14 - pycparser - python >=3.13,<3.14.0a0 @@ -2643,15 +2624,15 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/cffi?source=compressed-mapping - size: 298211 - timestamp: 1758716239290 -- conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313h8715ba9_0.conda - sha256: 42bc009b35ff8669be24fab48f9bfa4b7e50f8cb41abc4c921d047e26dba911c - md5: bd859e351d8c443dd9304690502cad60 + - pkg:pypi/cffi?source=hash-mapping + size: 298357 + timestamp: 1761202966461 +- conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-2.0.0-py313hf57695f_1.conda + sha256: 16c8c80bebe1c3d671382a64beaa16996e632f5b75963379e2b084eb6bc02053 + md5: b10f64f2e725afc9bf2d9b30eff6d0ea depends: - __osx >=10.13 - - libffi >=3.4.6,<3.5.0a0 + - libffi >=3.5.2,<3.6.0a0 - pycparser - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -2659,14 +2640,14 @@ packages: license_family: MIT purls: - pkg:pypi/cffi?source=hash-mapping - size: 290694 - timestamp: 1758716446727 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h89bd988_0.conda - sha256: 97404dd3e363d7fe546ef317502a0f26a4f314b986adc700de2c9840084459cd - md5: 7768e6a259b378e0722b7f64e3f64c80 + size: 290946 + timestamp: 1761203173891 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-2.0.0-py313h224173a_1.conda + sha256: 1fa69651f5e81c25d48ac42064db825ed1a3e53039629db69f86b952f5ce603c + md5: 050374657d1c7a4f2ea443c0d0cbd9a0 depends: - __osx >=11.0 - - libffi >=3.4.6,<3.5.0a0 + - libffi >=3.5.2,<3.6.0a0 - pycparser - python >=3.13,<3.14.0a0 - python >=3.13,<3.14.0a0 *_cp313 @@ -2674,12 +2655,12 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/cffi?source=compressed-mapping - size: 291107 - timestamp: 1758716485269 -- conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_0.conda - sha256: 099c0e4739e530259bb9ac7fee5e11229e36acf131e3c672824dbe215af61031 - md5: 2ede5fcd7d154a6e1bc9e57af2968ba2 + - pkg:pypi/cffi?source=hash-mapping + size: 291376 + timestamp: 1761203583358 +- conda: https://conda.anaconda.org/conda-forge/win-64/cffi-2.0.0-py313h5ea7bf4_1.conda + sha256: f867a11f42bb64a09b232e3decf10f8a8fe5194d7e3a216c6bac9f40483bd1c6 + md5: 55b44664f66a2caf584d72196aa98af9 depends: - pycparser - python >=3.13,<3.14.0a0 @@ -2691,55 +2672,57 @@ packages: license_family: MIT purls: - pkg:pypi/cffi?source=hash-mapping - size: 292670 - timestamp: 1758716395348 -- conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_1.conda - sha256: d5696636733b3c301054b948cdd793f118efacce361d9bd4afb57d5980a9064f - md5: 57df494053e17dce2ac3a0b33e1b2a2e + size: 292681 + timestamp: 1761203203673 +- conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.5.0-pyhd8ed1ab_0.conda + sha256: aa589352e61bb221351a79e5946d56916e3c595783994884accdb3b97fe9d449 + md5: 381bd45fb7aa032691f3063aff47e3a1 depends: - - python >=3.9 + - python >=3.10 license: MIT license_family: MIT purls: - pkg:pypi/cfgv?source=hash-mapping - size: 12973 - timestamp: 1734267180483 -- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.3-pyhd8ed1ab_0.conda - sha256: 838d5a011f0e7422be6427becba3de743c78f3874ad2743c341accbba9bb2624 - md5: 7e7d5ef1b9ed630e4a1c358d6bc62284 + size: 13589 + timestamp: 1763607964133 +- conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.4-pyhd8ed1ab_0.conda + sha256: b32f8362e885f1b8417bac2b3da4db7323faa12d5db62b7fd6691c02d60d6f59 + md5: a22d1fd9bf98827e280a02875d9a007a depends: - - python >=3.9 + - python >=3.10 license: MIT license_family: MIT purls: - pkg:pypi/charset-normalizer?source=hash-mapping - size: 51033 - timestamp: 1754767444665 -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh707e725_0.conda - sha256: c6567ebc27c4c071a353acaf93eb82bb6d9a6961e40692a359045a89a61d02c0 - md5: e76c4ba9e1837847679421b8d549b784 + size: 50965 + timestamp: 1760437331772 +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyh8f84b5b_1.conda + sha256: 38cfe1ee75b21a8361c8824f5544c3866f303af1762693a178266d7f198e8715 + md5: ea8a6c3256897cc31263de9f455e25d9 depends: - - __unix - python >=3.10 + - __unix + - python license: BSD-3-Clause license_family: BSD purls: - - pkg:pypi/click?source=compressed-mapping - size: 91622 - timestamp: 1758270534287 -- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.0-pyh7428d3b_0.conda - sha256: 0a008359973e833b568d0a18cf04556b12a4f5182e745dfc8ade32c38fa1fca5 - md5: 4601476ee4ad7ad522e5ffa5a579a48e + - pkg:pypi/click?source=hash-mapping + size: 97676 + timestamp: 1764518652276 +- conda: https://conda.anaconda.org/conda-forge/noarch/click-8.3.1-pyha7b4d00_1.conda + sha256: c3bc9a49930fa1c3383a1485948b914823290efac859a2587ca57a270a652e08 + md5: 6cd3ccc98bacfcc92b2bd7f236f01a7e depends: - - __win - - colorama - python >=3.10 + - colorama + - __win + - python license: BSD-3-Clause license_family: BSD purls: - - pkg:pypi/click?source=compressed-mapping - size: 92148 - timestamp: 1758270588199 + - pkg:pypi/click?source=hash-mapping + size: 96620 + timestamp: 1764518654675 - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda sha256: ab29d57dc70786c1269633ba3dff20288b81664d3ff8d21af995742e2bb03287 md5: 962b9857ee8e7018c22f2776ffa0b2d7 @@ -2751,9 +2734,9 @@ packages: - pkg:pypi/colorama?source=hash-mapping size: 27011 timestamp: 1733218222191 -- conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.10.7-py313h3dea7bd_0.conda - sha256: 1b56d8f5ed42734e56737a98d8d943da48a58e55c5dd1a3142867afb4adef385 - md5: 2847245cb868cdf87bb7fee7b8605d10 +- conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.13.4-py313h3dea7bd_0.conda + sha256: 5b88b351c6a61ac25ed02e23cd37b25cc90e071f5cdfbc375b656356fb04ca5c + md5: 77e1fc7133e03ccd62070f2405c82ea9 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 @@ -2764,11 +2747,11 @@ packages: license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 390586 - timestamp: 1758501129226 -- conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.10.7-py313h0f4d31d_0.conda - sha256: eb88d793089b85d1b9bee16be455ccd147116cd1abd445f838c9489380d6b85a - md5: 2a00c5c55aeffeb92b513b1231418090 + size: 394748 + timestamp: 1770720450191 +- conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.13.4-py313h7c6a591_0.conda + sha256: 1518b01dfc261e05475b8bf76e38175bf7c667a95c1137dde841f1f90bbb49d3 + md5: 3596dc3d4cebd9b7c27ff69c28ead0c0 depends: - __osx >=10.13 - python >=3.13,<3.14.0a0 @@ -2778,11 +2761,11 @@ packages: license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 389977 - timestamp: 1758501049598 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.10.7-py313h7d74516_0.conda - sha256: f3e3414ffda0d03741ebbd60447114f81f362d3f568e434a963448303dd11565 - md5: 6165cb718b857579763bd1408459a530 + size: 395490 + timestamp: 1770721055774 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.13.4-py313h65a2061_0.conda + sha256: eaa9ff039d93d2063e33ed60423e6f7b7a195eaf0bc8e5b0ea18a41051f464e4 + md5: 8009f27c9f115104ce8905cc2dff110e depends: - __osx >=11.0 - python >=3.13,<3.14.0a0 @@ -2793,11 +2776,11 @@ packages: license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 390053 - timestamp: 1758501053435 -- conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.10.7-py313hd650c13_0.conda - sha256: d7aed7e234d6abcc4c40ab9035c7d8d0bd610dece0eab81f391d1b6df22c40f2 - md5: 20e3184041b711b0c57859544eb4ce7d + size: 395122 + timestamp: 1770720766837 +- conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.13.4-py313hd650c13_0.conda + sha256: 284f87de1929a46dc69a1d247bd8d7c7cb491eb6cc7cbba5dcc1c11dc20550b7 + md5: 663fdd0fc33f6dd666642c24d64df072 depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -2809,16 +2792,16 @@ packages: license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 415962 - timestamp: 1758501048142 -- conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-45.0.7-py313hafb0bba_1.conda - sha256: d22b2798369956e8c8d3de5deaf4312c63fdbfbf5764be57b00db52169d77b67 - md5: 5550fcb08b89b0c7d565d39a5f666225 + size: 421244 + timestamp: 1770720471468 +- conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-46.0.5-py313heb322e3_0.conda + sha256: 553f4ee18ad755d690ad63fa8e00d89598ecc4945ec046a8af808ddee5bb1ca0 + md5: 964f25e322b16cae073da8f5b7adf123 depends: - __glibc >=2.17,<3.0.a0 - - cffi >=1.12 + - cffi >=1.14 - libgcc >=14 - - openssl >=3.5.2,<4.0a0 + - openssl >=3.5.5,<4.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: @@ -2826,16 +2809,16 @@ packages: license: Apache-2.0 AND BSD-3-Clause AND PSF-2.0 AND MIT license_family: BSD purls: - - pkg:pypi/cryptography?source=hash-mapping - size: 1658234 - timestamp: 1756843590 -- conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-45.0.7-py313h2686292_1.conda - sha256: d6adb32a3d1d5c8104a8b0c7e04077b110f4dec969f091c864bc37213d7cc682 - md5: 4d20514dd34a6f207fa03479e763699f + - pkg:pypi/cryptography?source=compressed-mapping + size: 1718868 + timestamp: 1770772833949 +- conda: https://conda.anaconda.org/conda-forge/osx-64/cryptography-46.0.5-py313h6e3882f_0.conda + sha256: 92a8512b8e4b00e8afd8e3e5a77b1bf384f30ecbccbd5163c9c596098b06d914 + md5: 071bcb7607cc391596db9b193a1f5014 depends: - __osx >=10.13 - - cffi >=1.12 - - openssl >=3.5.2,<4.0a0 + - cffi >=1.14 + - openssl >=3.5.5,<4.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: @@ -2844,15 +2827,15 @@ packages: license_family: BSD purls: - pkg:pypi/cryptography?source=hash-mapping - size: 1559422 - timestamp: 1756843822108 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-45.0.7-py313h06766fd_1.conda - sha256: 07504d61cfa7231136cdfa23402406a675166e136c604f9c908d1ebf0b258628 - md5: dc1bd6f267e511c1a90cc6e619547d93 + size: 1652433 + timestamp: 1770772806563 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cryptography-46.0.5-py313he3f6fad_0.conda + sha256: 5d27780eae308b9602eb80b62b8fada46680c3fc68bfb249c95ddd07f74e74d2 + md5: 2cca7fe0caca845c02b37d8b465a18fa depends: - __osx >=11.0 - - cffi >=1.12 - - openssl >=3.5.2,<4.0a0 + - cffi >=1.14 + - openssl >=3.5.5,<4.0a0 - python >=3.13,<3.14.0a0 - python >=3.13,<3.14.0a0 *_cp313 - python_abi 3.13.* *_cp313 @@ -2862,14 +2845,14 @@ packages: license_family: BSD purls: - pkg:pypi/cryptography?source=hash-mapping - size: 1528270 - timestamp: 1756843826263 -- conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-45.0.7-py313h392ebe0_1.conda - sha256: 83e4e8ebc0ab67519f9761260a035427dbe717b6f40c5647d775278ac7dbe906 - md5: 9d51af64bb06e38914656d533483f442 - depends: - - cffi >=1.12 - - openssl >=3.5.2,<4.0a0 + size: 1600031 + timestamp: 1770773038178 +- conda: https://conda.anaconda.org/conda-forge/win-64/cryptography-46.0.5-py313hf5c5e30_0.conda + sha256: f565890690a299107adae6314f7e2ba633d7c4e554e87524acc99eb5bad753f9 + md5: 198a8d301501a620273ef05250e7213c + depends: + - cffi >=1.14 + - openssl >=3.5.5,<4.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 - ucrt >=10.0.20348.0 @@ -2879,8 +2862,8 @@ packages: license_family: BSD purls: - pkg:pypi/cryptography?source=hash-mapping - size: 1416143 - timestamp: 1756843770371 + size: 1490238 + timestamp: 1770772680643 - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.2.1-pyhd8ed1ab_0.conda sha256: c17c6b9937c08ad63cb20a26f403a3234088e57d4455600974a0ce865cb14017 md5: 9ce473d1d1be1cc3810856a48b3fab32 @@ -2903,36 +2886,36 @@ packages: - pkg:pypi/distlib?source=hash-mapping size: 275642 timestamp: 1752823081585 -- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.0-pyhd8ed1ab_0.conda - sha256: ce61f4f99401a4bd455b89909153b40b9c823276aefcbb06f2044618696009ca - md5: 72e42d28960d875c7654614f8b50939a +- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda + sha256: ee6cf346d017d954255bbcbdb424cddea4d14e4ed7e9813e429db1d795d01144 + md5: 8e662bd460bda79b1ea39194e3c4c9ab depends: - - python >=3.9 + - python >=3.10 - typing_extensions >=4.6.0 license: MIT and PSF-2.0 purls: - pkg:pypi/exceptiongroup?source=hash-mapping - size: 21284 - timestamp: 1746947398083 + size: 21333 + timestamp: 1763918099466 - pypi: ./ name: fiboa-cli version: 0.20.3 - sha256: 37684f32135ca252711dae982a7f5f80dbc23a622225cf0c6118a9632584059f + sha256: 0f8f3b6feeac1992779e668cfcef07a13bfecf3c66d7f872ef923678a1d1e305 requires_dist: - vecorel-cli==0.2.12 - spdx-license-list==3.27.0 requires_python: '>=3.10,<3.14' editable: true -- conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.20.0-pyhd8ed1ab_0.conda - sha256: 19025a4078ff3940d97eb0da29983d5e0deac9c3e09b0eabf897daeaf9d1114e - md5: 66b8b26023b8efdf8fcb23bac4b6325d +- conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.21.2-pyhd8ed1ab_0.conda + sha256: f866335fbecf04c0f7355fcf60880aa608ea14190c180e9ae514891871089b36 + md5: 0b3041d2b101e48bee2df46dffd6f047 depends: - python >=3.10 license: Unlicense purls: - - pkg:pypi/filelock?source=hash-mapping - size: 17976 - timestamp: 1759948208140 + - pkg:pypi/filelock?source=compressed-mapping + size: 22738 + timestamp: 1770961083848 - pypi: https://files.pythonhosted.org/packages/3e/0d/424de6e5612f1399ff69bf86500d6a62ff0a4843979701ae97f120c7f1fe/flatdict-4.0.1.tar.gz name: flatdict version: 4.0.1 @@ -3032,10 +3015,10 @@ packages: - pkg:pypi/gcsfs?source=hash-mapping size: 38937 timestamp: 1752671731858 -- pypi: https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/54/e4/fac19dc34cb686c96011388b813ff7b858a70681e5ce6ce7698e5021b0f4/geopandas-1.1.2-py3-none-any.whl name: geopandas - version: 1.1.1 - sha256: 589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 + version: 1.1.2 + sha256: 2bb0b1052cb47378addb4ba54c47f8d4642dcbda9b61375638274f49d9f0bb0d requires_dist: - numpy>=1.24 - pyogrio>=0.7.2 @@ -3060,9 +3043,9 @@ packages: - pre-commit ; extra == 'dev' - ruff ; extra == 'dev' requires_python: '>=3.10' -- conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.25.2-pyhd8ed1ab_0.conda - sha256: 6c6578b0163d02222a0feb790ca161b640a5699b743bc90ff41c273e7f004bc5 - md5: 4680d12712bfbfe272cfadea41fd0cf1 +- conda: https://conda.anaconda.org/conda-forge/noarch/google-api-core-2.29.0-pyhd8ed1ab_0.conda + sha256: 0f696294c9a117a16e344388347dd9dff644cd8ddb703002169d81f889c176df + md5: 7fd8158ff94ccf28a2ac1f534989d698 depends: - google-auth >=2.14.1,<3.0.0 - googleapis-common-protos >=1.56.2,<2.0.0 @@ -3074,27 +3057,27 @@ packages: license_family: APACHE purls: - pkg:pypi/google-api-core?source=hash-mapping - size: 92146 - timestamp: 1759482025905 -- conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.41.1-pyhd8ed1ab_0.conda - sha256: 4803abcd2210a49fb7475697304fe3d9389709085f8952387ffbfa832ee45ab2 - md5: 96e470abcfdf28546bc7b4e9788cf71d + size: 98400 + timestamp: 1768122057220 +- conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-2.48.0-pyhcf101f3_0.conda + sha256: f9fd7cbfc6cea1b43c9e210f0042c5ca62ded641a83ed6e7c046ef08dfac4583 + md5: 6e643ba74997c8dddbaa98fc2fc3481b depends: - - aiohttp >=3.6.2,<4.0.0 - - cachetools >=2.0.0,<7.0 - - cryptography >=38.0.3 + - python >=3.10 - pyasn1-modules >=0.2.1 + - cryptography >=38.0.3 + - rsa >=3.1.4,<5 + - aiohttp >=3.6.2,<4.0.0 + - requests >=2.20.0,<3.0.0 - pyopenssl >=20.0.0 - - python >=3.10 - pyu2f >=0.1.5 - - requests >=2.20.0,<3.0.0 - - rsa >=3.1.4,<5 + - python license: Apache-2.0 - license_family: Apache + license_family: APACHE purls: - - pkg:pypi/google-auth?source=hash-mapping - size: 123125 - timestamp: 1759297989197 + - pkg:pypi/google-auth?source=compressed-mapping + size: 141954 + timestamp: 1769604366349 - conda: https://conda.anaconda.org/conda-forge/noarch/google-auth-oauthlib-1.2.2-pyhd8ed1ab_0.conda sha256: 8b9bdddd954f257c234014fda6169fb453b9608af96a5d6faf4110be1ffad30a md5: 8e340e42470ffa0435a2067858b5c743 @@ -3109,41 +3092,44 @@ packages: - pkg:pypi/google-auth-oauthlib?source=hash-mapping size: 22086 timestamp: 1745360378896 -- conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.4.3-pyhd8ed1ab_0.conda - sha256: 3e674119e8ff016a0ddd6128c3709a7a449b1dc02088e242b5df349d120ca466 - md5: 7a191cc7d8d50e6dd565f15c1b92170b - depends: - - google-api-core >=1.31.6,<3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0 - - google-auth >=1.25.0,<3.0dev - - grpcio >=1.38.0,<2.0.0dev - - python >=3.9 +- conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-core-2.5.0-pyhcf101f3_1.conda + sha256: fcef1d51f6de304a23c19ea6b3114dcab9ce54482d9f506f9a3e0b48be514744 + md5: 48fcccc0b579087018df0afc332b8bd6 + depends: + - python >=3.10,<3.14 + - google-api-core >=1.31.6,<3.0.0,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0 + - google-auth >=1.25.0,<3.0.0 + - grpcio >=1.38.0,<2.0.0 + - grpcio-status >=1.38.0,<2.0.0 + - python license: Apache-2.0 - license_family: Apache + license_family: APACHE purls: - pkg:pypi/google-cloud-core?source=hash-mapping - size: 28516 - timestamp: 1741676184625 -- conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.4.0-pyhd8ed1ab_0.conda - sha256: c5f0c1bbe1423b4d5704dd293ebc949ab8f7cfd5e3a12b61513fe2287b30335c - md5: f9d43c8ae3f34ef933853cd24359ee8d + size: 33593 + timestamp: 1768561863777 +- conda: https://conda.anaconda.org/conda-forge/noarch/google-cloud-storage-3.9.0-pyhcf101f3_0.conda + sha256: a42b7f24ded8a97ae18d46bbdf9485d951346e41c66b18f7f793d521c05a53d5 + md5: 71aa090f8647c9b9efa63994eaa0dc18 depends: - - google-api-core >=2.15.0,<3.0.0 + - python >=3.10 + - google-api-core >=2.27.0,<3.0.0 - google-auth >=2.26.1,<3.0.0 - google-cloud-core >=2.4.2,<3.0.0 - google-crc32c >=1.1.3,<2.0.0 - google-resumable-media >=2.7.2,<3.0.0 - - protobuf >=3.20.2,<7.0.0 - - python >=3.10 - requests >=2.22.0,<3.0.0 + - protobuf >=3.20.2,<7.0.0 + - python license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/google-cloud-storage?source=hash-mapping - size: 167831 - timestamp: 1757947145312 -- conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.7.1-py313h74173ec_1.conda - sha256: 81ca7fb5c0756e3a5934fe18b44b90be475a03329bcd715334455aec340e34c0 - md5: 8580f244242b4d6a8c1933d8d0475b9c + size: 201445 + timestamp: 1770056609761 +- conda: https://conda.anaconda.org/conda-forge/linux-64/google-crc32c-1.8.0-py313h74173ec_1.conda + sha256: c0e39ebce8b9d8bc4e734bb5d2538e60f7c8c85ec04f9b0690fc6e1cb9656869 + md5: d358850e37a98739224fdc265d7d8eb7 depends: - __glibc >=2.17,<3.0.a0 - libcrc32c >=1.1.2,<1.2.0a0 @@ -3154,11 +3140,11 @@ packages: license_family: Apache purls: - pkg:pypi/google-crc32c?source=hash-mapping - size: 24798 - timestamp: 1755850411927 -- conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.7.1-py313hff33f76_1.conda - sha256: c4175d26ad80e95af566c9b10a0aa10f1a9a124ee5dca663e31102ee962f0112 - md5: 45c66a5704c3fbfd692b2a6e63e6f625 + size: 25326 + timestamp: 1768549200259 +- conda: https://conda.anaconda.org/conda-forge/osx-64/google-crc32c-1.8.0-py313h49a2f01_1.conda + sha256: 42b0be206602e6521f3095cda4b7752b36be9548cb1d374d2107d986c870d202 + md5: 623c30b99d3d699f052ee20bd5ba4ec2 depends: - __osx >=10.13 - libcrc32c >=1.1.2,<1.2.0a0 @@ -3168,11 +3154,11 @@ packages: license_family: Apache purls: - pkg:pypi/google-crc32c?source=hash-mapping - size: 24024 - timestamp: 1755850484935 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.7.1-py313h7962f2b_1.conda - sha256: 789ddc2a6f49064f5212457180f2f5100ad270e931d07a55f63913f7a828d690 - md5: c0cd6024b9de7ff1f7d995b40bf9d5c5 + size: 24380 + timestamp: 1768549497226 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/google-crc32c-1.8.0-py313h11ab6f4_1.conda + sha256: 475172f172fbe15eb3dcb7a7c31f83792e5ca18064f1ae56502cdeaafca97592 + md5: 08e5ab1798fd9a890447baa09bb31e8f depends: - __osx >=11.0 - libcrc32c >=1.1.2,<1.2.0a0 @@ -3182,12 +3168,12 @@ packages: license: Apache-2.0 license_family: Apache purls: - - pkg:pypi/google-crc32c?source=hash-mapping - size: 24516 - timestamp: 1755850529391 -- conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.7.1-py313h5327936_1.conda - sha256: 5d1a3322ab5949c63326bbb779feaf47f95902849a9687da094e8de490250e22 - md5: 35b1131e4ea5eb0f27664eeb68c9a29b + - pkg:pypi/google-crc32c?source=compressed-mapping + size: 25467 + timestamp: 1768549431006 +- conda: https://conda.anaconda.org/conda-forge/win-64/google-crc32c-1.8.0-py313h5327936_1.conda + sha256: e0e88233f98ed75a5a0c31a7918f2a340095d1df0d3fb6bbe4f5a56c65766d8b + md5: 4f05c693f8d450b49711610815442761 depends: - libcrc32c >=1.1.2,<1.2.0a0 - python >=3.13,<3.14.0a0 @@ -3199,93 +3185,105 @@ packages: license_family: Apache purls: - pkg:pypi/google-crc32c?source=hash-mapping - size: 27799 - timestamp: 1755850484807 -- conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.7.2-pyhd8ed1ab_2.conda - sha256: 53f613ff22203c9d8a81ac9eb2351d0b9dea44e92922e62cdd2d45a676582cc7 - md5: 1792ca195c71d1304b3f7c783a3d7419 + size: 28288 + timestamp: 1768549316332 +- conda: https://conda.anaconda.org/conda-forge/noarch/google-resumable-media-2.8.0-pyhd8ed1ab_0.conda + sha256: 23d825ed0664a8089c7958bffd819d26e1aba7579695c40dfbdb25a4864d8be6 + md5: ba7f04ba62be69f9c9fef0c4487c210b depends: - - google-crc32c >=1.0,<2.0dev - - python >=3.9 + - google-crc32c >=1.0.0,<2.0.0 + - python >=3.10 constrains: - - requests >=2.18.0,<3.0.0dev - - aiohttp >=3.6.2,<4.0.0dev + - aiohttp >=3.6.2,<4.0.0 + - requests >=2.18.0,<3.0.0 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/google-resumable-media?source=hash-mapping - size: 46566 - timestamp: 1733728567440 -- conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.70.0-pyhd8ed1ab_0.conda - sha256: e0aa51de5565e92139791c5b8e2908e3cadd2c5fce6941a225889070815bcd99 - md5: 7999fb45c48645272d7d88de0b7dc188 + size: 46929 + timestamp: 1763404726218 +- conda: https://conda.anaconda.org/conda-forge/noarch/googleapis-common-protos-1.72.0-pyhd8ed1ab_0.conda + sha256: c09ba4b360a0994430d2fe4a230aa6518cd3e6bfdc51a7af9d35d35a25908bb5 + md5: 003094932fb90de018f77a273b8a509b depends: - protobuf >=3.20.2,<7.0.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5 - - python >=3.9 + - python >=3.10 license: Apache-2.0 license_family: APACHE purls: - - pkg:pypi/googleapis-common-protos?source=hash-mapping - size: 142129 - timestamp: 1744688907411 -- conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.74.1-py313h2b3948d_1.conda - sha256: 0c987463a02da2a8d4af335eab99326a4f55407bcbf26bffae08a5b4a400ad28 - md5: 397036cc46202a7a3ab58af3449fc103 + - pkg:pypi/googleapis-common-protos?source=compressed-mapping + size: 142961 + timestamp: 1762522289200 +- conda: https://conda.anaconda.org/conda-forge/linux-64/grpcio-1.78.0-py313h36609a2_1.conda + sha256: 6b77b4e5d2a4f6bb4cf3c97df87e3232cbd62ed7497a37eff84ae6ef305dd5cd + md5: 7034fb815eb05f49f4f639b927f669a5 depends: - __glibc >=2.17,<3.0.a0 + - libabseil * cxx17* + - libabseil >=20260107.0,<20260108.0a0 - libgcc >=14 - - libgrpc 1.74.1 h3288cfb_1 + - libgrpc 1.78.0 h1d1128b_1 - libstdcxx >=14 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 + - typing-extensions >=4.12,<5 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/grpcio?source=hash-mapping - size: 895874 - timestamp: 1759630058869 -- conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.74.1-py313ha22d4e2_1.conda - sha256: e829d133e6108a0456992b91c3c13cbd1ffbb745f925270acad2fd8edf876a72 - md5: bb57f1ff27b01061588f0064efb97dec + size: 883476 + timestamp: 1770261206519 +- conda: https://conda.anaconda.org/conda-forge/osx-64/grpcio-1.78.0-py313h3d05629_1.conda + sha256: 930ad8be6da80c29932fe775de41c3a7985c4717e0d6a12391441418daaa9fed + md5: 3cb1230963380e7e425b5ff6f30bbb99 depends: - __osx >=11.0 + - libabseil * cxx17* + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - - libgrpc 1.74.1 h451496d_1 + - libgrpc 1.78.0 h147dede_1 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 + - typing-extensions >=4.12,<5 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/grpcio?source=hash-mapping - size: 812418 - timestamp: 1759629155587 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.74.1-py313hb057f1c_1.conda - sha256: 6e2effa84d8db877c3c7588bf208cd49f82d27385b0464e67ebb3e9a5fc872fd - md5: f94aa44e5af447d9831266e977347cb9 + size: 785718 + timestamp: 1770256039933 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/grpcio-1.78.0-py313hfa4fce0_1.conda + sha256: 6bf869086c35c9fb196bb0373d5d3a71aa9c8a634f871adf4c40428f0ae19f8e + md5: 64afe96b093ba3913536c1fede30a0bd depends: - __osx >=11.0 + - libabseil * cxx17* + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - - libgrpc 1.74.1 h3063b79_1 + - libgrpc 1.78.0 h3e3f78d_1 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python >=3.13,<3.14.0a0 *_cp313 - python_abi 3.13.* *_cp313 + - typing-extensions >=4.12,<5 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/grpcio?source=hash-mapping - size: 795946 - timestamp: 1759615344612 -- conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.74.1-py313h3c83859_1.conda - sha256: 215a30a59d570858d5fc77187df9e506862892125a7531b21585aeacfd644360 - md5: 5edee969047a888411c32f158a7f1f37 + size: 764607 + timestamp: 1770642240449 +- conda: https://conda.anaconda.org/conda-forge/win-64/grpcio-1.78.0-py313hbfc34d6_1.conda + sha256: a58d0a5deec1d23c0df92ff335d71c93e68f7073b954199f1f4c15142c58ff6b + md5: dbf169885b13be4f966b95a3f082c8bd depends: - - libgrpc 1.74.1 h317e13b_1 + - libabseil * cxx17* + - libabseil >=20260107.0,<20260108.0a0 + - libgrpc 1.78.0 h9ff2b3e_1 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 + - typing-extensions >=4.12,<5 - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 @@ -3293,8 +3291,22 @@ packages: license_family: APACHE purls: - pkg:pypi/grpcio?source=hash-mapping - size: 716336 - timestamp: 1759616701094 + size: 721828 + timestamp: 1770253752173 +- conda: https://conda.anaconda.org/conda-forge/noarch/grpcio-status-1.78.0-pyhd8ed1ab_0.conda + sha256: cab0cf75422ce7b3b21ad977e68035b093812070ea03ea4da84b460fdf19f376 + md5: 1239612d9082a423a1bde874a7ca130f + depends: + - googleapis-common-protos >=1.5.5 + - grpcio >=1.78.0 + - protobuf >=6.31.1,<7.0.0 + - python >=3.10 + license: Apache-2.0 + license_family: APACHE + purls: + - pkg:pypi/grpcio-status?source=hash-mapping + size: 19238 + timestamp: 1770422777875 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.3.0-pyhcf101f3_0.conda sha256: 84c64443368f84b600bfecc529a1194a3b14c3656ee2e832d15a20e0329b6da3 md5: 164fc43f0b53b6e3a7bc7dce5e4f1dc9 @@ -3306,7 +3318,7 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/h2?source=compressed-mapping + - pkg:pypi/h2?source=hash-mapping size: 95967 timestamp: 1756364871835 - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.1.0-pyhd8ed1ab_0.conda @@ -3331,43 +3343,55 @@ packages: - pkg:pypi/hyperframe?source=hash-mapping size: 17397 timestamp: 1737618427549 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - sha256: 9ba12c93406f3df5ab0a43db8a4b4ef67a5871dfd401010fbe29b218b2cbe620 - md5: 5eb22c1d7b3fc4abb50d92d621583137 +- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda + sha256: 142a722072fa96cf16ff98eaaf641f54ab84744af81754c292cb81e0881c0329 + md5: 186a18e3ba246eccfc7cff00cd19a870 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 + - libstdcxx >=14 + license: MIT + license_family: MIT + purls: [] + size: 12728445 + timestamp: 1767969922681 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-h38cb7af_0.conda + sha256: d4cefbca587429d1192509edc52c88de52bc96c2447771ddc1f8bee928aed5ef + md5: 1e93aca311da0210e660d2247812fa02 depends: - __osx >=11.0 license: MIT license_family: MIT purls: [] - size: 11857802 - timestamp: 1720853997952 -- conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.15-pyhd8ed1ab_0.conda - sha256: 32d5007d12e5731867908cbf5345f5cd44a6c8755a2e8e63e15a184826a51f82 - md5: 25f954b7dae6dd7b0dc004dab74f1ce9 + size: 12358010 + timestamp: 1767970350308 +- conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.6.16-pyhd8ed1ab_0.conda + sha256: 6a88cdde151469131df1948839ac2315ada99cf8d38aaacc9a7a5984e9cd8c19 + md5: 8bc5851c415865334882157127e75799 depends: - python >=3.10 - ukkonen license: MIT license_family: MIT purls: - - pkg:pypi/identify?source=hash-mapping - size: 79151 - timestamp: 1759437561529 -- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - sha256: d7a472c9fd479e2e8dcb83fb8d433fce971ea369d704ece380e876f9c3494e87 - md5: 39a4f67be3286c86d696df570b1201b7 + - pkg:pypi/identify?source=compressed-mapping + size: 79302 + timestamp: 1768295306539 +- conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.11-pyhd8ed1ab_0.conda + sha256: ae89d0299ada2a3162c2614a9d26557a92aa6a77120ce142f8e0109bbf0342b0 + md5: 53abe63df7e10a6ba605dc5f9f961d36 depends: - - python >=3.9 + - python >=3.10 license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/idna?source=hash-mapping - size: 49765 - timestamp: 1733211921194 -- pypi: https://files.pythonhosted.org/packages/3e/44/17e812a3e4dd86fb03d5d271927b86615c7e8782325ca878f2c9bae10069/inflate64-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + size: 50721 + timestamp: 1760286526795 +- pypi: https://files.pythonhosted.org/packages/7d/14/9eadd59244b38cf85ccd0ca43d1296c50b3a33aa37be4fb68a1928efa58c/inflate64-1.0.4-cp313-cp313-macosx_11_0_arm64.whl name: inflate64 - version: 1.0.3 - sha256: 9e32f7fb9c4120cdc27024249687fdaace2dc88857be6c031ae276d085a54166 + version: 1.0.4 + sha256: 5c098dab17821f466fc6e6a3d78fc6e0295bb51458015f03416b1d58d6a8df4f requires_dist: - pytest ; extra == 'test' - sphinx>=5.0 ; extra == 'docs' @@ -3383,11 +3407,11 @@ packages: - pygments ; extra == 'check' - readme-renderer ; extra == 'check' - twine ; extra == 'check' - requires_python: '>=3.9,<3.14' -- pypi: https://files.pythonhosted.org/packages/6b/69/b3b87d25a8d31dc0a4f0a9e441f2e02e198cff4259b5ecb877b73505c8dc/inflate64-1.0.3-cp313-cp313-macosx_10_13_x86_64.whl + requires_python: '>=3.9' +- pypi: https://files.pythonhosted.org/packages/b8/5f/6f89c8524503fd7a9ca2bd91fe60d7291b3f684e9d41edb38ef49e10fc3d/inflate64-1.0.4-cp313-cp313-macosx_10_13_x86_64.whl name: inflate64 - version: 1.0.3 - sha256: 75b1625b027111270a5bb89fb6cb83930eacf4538881fb8ef901e00839272dc7 + version: 1.0.4 + sha256: 4d24112180c95d12f279cade9a1e21f8be7f4790c4109c293292edf87d061992 requires_dist: - pytest ; extra == 'test' - sphinx>=5.0 ; extra == 'docs' @@ -3403,11 +3427,11 @@ packages: - pygments ; extra == 'check' - readme-renderer ; extra == 'check' - twine ; extra == 'check' - requires_python: '>=3.9,<3.14' -- pypi: https://files.pythonhosted.org/packages/d0/53/62fd8e9f2016936ddf87e5678994f25c97bb2e4d82215f28a15bfaebc9b9/inflate64-1.0.3-cp313-cp313-macosx_11_0_arm64.whl + requires_python: '>=3.9' +- pypi: https://files.pythonhosted.org/packages/c0/c5/038dc2593bbc4272d87eac8c9f75692267d47f834ced888f6d81995df606/inflate64-1.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl name: inflate64 - version: 1.0.3 - sha256: 1ced5841cbe81cb158c1fc0df7837e0f3c38b2f3b5b0c8f2a6490eb78b3a4f7a + version: 1.0.4 + sha256: f62a13d0327631778fa2a47c308ae2b07b2659b7bb8564783259ac65949f8c0c requires_dist: - pytest ; extra == 'test' - sphinx>=5.0 ; extra == 'docs' @@ -3423,11 +3447,11 @@ packages: - pygments ; extra == 'check' - readme-renderer ; extra == 'check' - twine ; extra == 'check' - requires_python: '>=3.9,<3.14' -- pypi: https://files.pythonhosted.org/packages/dd/9d/21c2baa41ac3aa762bcbb66a7a9f00b7857489fe7531a2e7d35df262da94/inflate64-1.0.3-cp313-cp313-win_amd64.whl + requires_python: '>=3.9' +- pypi: https://files.pythonhosted.org/packages/e7/4f/5784ee1eb8260f2310e24ef2883f1f494f9332bcfde4ed14ee780372149e/inflate64-1.0.4-cp313-cp313-win_amd64.whl name: inflate64 - version: 1.0.3 - sha256: 5b077eaf7d6e99823751bd30e450102419cd71b6db4b3765e752e843fc040906 + version: 1.0.4 + sha256: 3983f53b590ff7d0ba243f664ce852aca882482f30f7a8eab33e10d769336d0c requires_dist: - pytest ; extra == 'test' - sphinx>=5.0 ; extra == 'docs' @@ -3443,18 +3467,18 @@ packages: - pygments ; extra == 'check' - readme-renderer ; extra == 'check' - twine ; extra == 'check' - requires_python: '>=3.9,<3.14' -- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - sha256: 0ec8f4d02053cd03b0f3e63168316530949484f80e16f5e2fb199a1d117a89ca - md5: 6837f3eff7dcea42ecd714ce1ac2b108 + requires_python: '>=3.9' +- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda + sha256: e1a9e3b1c8fe62dc3932a616c284b5d8cbe3124bbfbedcf4ce5c828cb166ee19 + md5: 9614359868482abba1bd15ce465e3c42 depends: - - python >=3.9 + - python >=3.10 license: MIT license_family: MIT purls: - - pkg:pypi/iniconfig?source=hash-mapping - size: 11474 - timestamp: 1733223232820 + - pkg:pypi/iniconfig?source=compressed-mapping + size: 13387 + timestamp: 1760831448842 - pypi: https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl name: isoduration version: 20.11.0 @@ -3462,30 +3486,31 @@ packages: requires_dist: - arrow>=0.15.0 requires_python: '>=3.7' -- conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.0.1-pyhd8ed1ab_1.conda - sha256: 3d2f20ee7fd731e3ff55c189db9c43231bc8bde957875817a609c227bcb295c6 - md5: 972bdca8f30147135f951847b30399ea +- conda: https://conda.anaconda.org/conda-forge/noarch/jmespath-1.1.0-pyhcf101f3_1.conda + sha256: 904d43d5210584004cf8b38f9657c717661ae55b0fb3f60573be974e50653fa1 + md5: cc73a9bd315659dc5307a5270f44786f depends: - - python >=3.9 + - python >=3.10 + - python license: MIT license_family: MIT purls: - - pkg:pypi/jmespath?source=hash-mapping - size: 23708 - timestamp: 1733229244590 -- pypi: https://files.pythonhosted.org/packages/bc/87/67c0de941a08cdafd85c2048ecec52ff5568c0191ead465e966bea78db79/json_stream-2.3.3-py3-none-any.whl + - pkg:pypi/jmespath?source=compressed-mapping + size: 25946 + timestamp: 1769161799923 +- pypi: https://files.pythonhosted.org/packages/71/42/754adf29fd19e81024dc507bcf42d4184c89210c3db0f1c866f4b658214c/json_stream-2.4.1-py3-none-any.whl name: json-stream - version: 2.3.3 - sha256: 65f08c5031d7df145c6fe89e434b718c1574b2bb84b8a0eea974de90916a089d + version: 2.4.1 + sha256: d31dc2dbc8586c21a6e71e4bf4868133f86c53fc7fd62eb482005db579a6e3e6 requires_dist: - json-stream-rs-tokenizer>=0.4.17 - requests ; extra == 'requests' - httpx ; extra == 'httpx' requires_python: '>=3.5,<4' -- pypi: https://files.pythonhosted.org/packages/01/7b/55f5457b0edadfe67439a9b7c7e771dd21f9a10d25815f3e8b48b05fc212/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_11_0_arm64.whl +- pypi: https://files.pythonhosted.org/packages/0e/b8/2cf6e936604314265c76aa86324a14e1390c336702a741b13ded2f2a6ddc/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl name: json-stream-rs-tokenizer - version: 0.4.30 - sha256: 3af40c5c0966dd8632d3f3813bd19b4103ebf69e8f2899fe49b11fc60fb07731 + version: 0.5.0 + sha256: a8300a0bf3846b2d9cd818b1b75107ae1e67f1f43d96587c1ed99bb8744039c9 requires_dist: - json-stream-to-standard-types>=0.1,<0.2 ; extra == 'benchmark' - tqdm>=4.64,<5 ; extra == 'benchmark' @@ -3495,11 +3520,13 @@ packages: - pytest>7.1,<8 ; extra == 'test' - json-stream-rs-tokenizer[benchmark] ; extra == 'test' - json-stream==2.3.2 ; extra == 'test' - requires_python: '>=3.7,<4' -- pypi: https://files.pythonhosted.org/packages/17/1c/84f79b4e9702160f9da874ec279e52b2ca8c20ddbfe6ba9207fa420fdaf9/json_stream_rs_tokenizer-0.4.30-cp313-cp313-win_amd64.whl + - mypy>=1,<2 ; extra == 'stubtest' + - types-tqdm ; extra == 'stubtest' + requires_python: '>=3.8,<3.15' +- pypi: https://files.pythonhosted.org/packages/3a/84/fa953089b66f84be37fa3313855b8f95ca9d89aafd297f6e675d21cfb144/json_stream_rs_tokenizer-0.5.0-cp313-cp313-macosx_11_0_arm64.whl name: json-stream-rs-tokenizer - version: 0.4.30 - sha256: 3069d9bf2f65b5c64847808a9179535526b9ec68f6783506814f1f4dc261b93a + version: 0.5.0 + sha256: 040556e7e55979911ddf11bf96c8906b27f61105471ade52129094efa7fe9e1b requires_dist: - json-stream-to-standard-types>=0.1,<0.2 ; extra == 'benchmark' - tqdm>=4.64,<5 ; extra == 'benchmark' @@ -3509,11 +3536,13 @@ packages: - pytest>7.1,<8 ; extra == 'test' - json-stream-rs-tokenizer[benchmark] ; extra == 'test' - json-stream==2.3.2 ; extra == 'test' - requires_python: '>=3.7,<4' -- pypi: https://files.pythonhosted.org/packages/a9/2f/6990bb99ca33906f0a57c3b17a7e4a5a4464bfd92506282da1cf61c7f567/json_stream_rs_tokenizer-0.4.30-cp313-cp313-macosx_10_13_x86_64.whl + - mypy>=1,<2 ; extra == 'stubtest' + - types-tqdm ; extra == 'stubtest' + requires_python: '>=3.8,<3.15' +- pypi: https://files.pythonhosted.org/packages/51/9f/362c5093c5329c989f3ae5ff1be63ba39fef7a1c356b11da14c3174139ba/json_stream_rs_tokenizer-0.5.0-cp313-cp313-manylinux_2_28_x86_64.whl name: json-stream-rs-tokenizer - version: 0.4.30 - sha256: c061a242aa69b07ce80a91a4abf4b8706beae4f3523f17e84a88b54674aa7cbd + version: 0.5.0 + sha256: 501a4c5133aa68b642955e86b8d68bea7a563324570684627c0b10bccf3864aa requires_dist: - json-stream-to-standard-types>=0.1,<0.2 ; extra == 'benchmark' - tqdm>=4.64,<5 ; extra == 'benchmark' @@ -3523,11 +3552,13 @@ packages: - pytest>7.1,<8 ; extra == 'test' - json-stream-rs-tokenizer[benchmark] ; extra == 'test' - json-stream==2.3.2 ; extra == 'test' - requires_python: '>=3.7,<4' -- pypi: https://files.pythonhosted.org/packages/ee/00/8b8a05b5125b26b74b27126aa2842118004702dd4e00f732ce675e427f4b/json_stream_rs_tokenizer-0.4.30-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + - mypy>=1,<2 ; extra == 'stubtest' + - types-tqdm ; extra == 'stubtest' + requires_python: '>=3.8,<3.15' +- pypi: https://files.pythonhosted.org/packages/b4/f1/f992895d069297e4aa7a14ff1e510645fb8f2f8e16648484e6c68150bbae/json_stream_rs_tokenizer-0.5.0-cp313-cp313-win_amd64.whl name: json-stream-rs-tokenizer - version: 0.4.30 - sha256: 33b84aae0b1c7502992e61e08c1bbbc4f4477bd90f558a6012549241710d92ea + version: 0.5.0 + sha256: 2141158a691205d85dc1192152a64dd2d5054c120851b9f89a1c195b34ac49c3 requires_dist: - json-stream-to-standard-types>=0.1,<0.2 ; extra == 'benchmark' - tqdm>=4.64,<5 ; extra == 'benchmark' @@ -3537,21 +3568,23 @@ packages: - pytest>7.1,<8 ; extra == 'test' - json-stream-rs-tokenizer[benchmark] ; extra == 'test' - json-stream==2.3.2 ; extra == 'test' - requires_python: '>=3.7,<4' + - mypy>=1,<2 ; extra == 'stubtest' + - types-tqdm ; extra == 'stubtest' + requires_python: '>=3.8,<3.15' - pypi: https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl name: jsonpointer version: 3.0.0 sha256: 13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 requires_python: '>=3.7' -- pypi: https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl name: jsonschema - version: 4.25.1 - sha256: 3fba0169e345c7175110351d456342c364814cfcf3b964ba4587f22915230a63 + version: 4.26.0 + sha256: d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce requires_dist: - attrs>=22.2.0 - jsonschema-specifications>=2023.3.6 - referencing>=0.28.4 - - rpds-py>=0.7.1 + - rpds-py>=0.25.0 - fqdn ; extra == 'format' - idna ; extra == 'format' - isoduration ; extra == 'format' @@ -3569,7 +3602,7 @@ packages: - rfc3987-syntax>=1.1.0 ; extra == 'format-nongpl' - uri-template ; extra == 'format-nongpl' - webcolors>=24.6.0 ; extra == 'format-nongpl' - requires_python: '>=3.9' + requires_python: '>=3.10' - pypi: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl name: jsonschema-specifications version: 2025.9.1 @@ -3587,74 +3620,76 @@ packages: purls: [] size: 134088 timestamp: 1754905959823 -- conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - sha256: 99df692f7a8a5c27cd14b5fb1374ee55e756631b9c3d659ed3ee60830249b238 - md5: 3f43953b7d3fb3aaa1d0d0723d91e368 +- conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda + sha256: 3e307628ca3527448dd1cb14ad7bb9d04d1d28c7d4c5f97ba196ae984571dd25 + md5: fb53fb07ce46a575c5d004bbc96032c2 depends: - - keyutils >=1.6.1,<2.0a0 - - libedit >=3.1.20191231,<3.2.0a0 - - libedit >=3.1.20191231,<4.0a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - openssl >=3.3.1,<4.0a0 + - __glibc >=2.17,<3.0.a0 + - keyutils >=1.6.3,<2.0a0 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - libgcc >=14 + - libstdcxx >=14 + - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT purls: [] - size: 1370023 - timestamp: 1719463201255 -- conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.3-h37d8d59_0.conda - sha256: 83b52685a4ce542772f0892a0f05764ac69d57187975579a0835ff255ae3ef9c - md5: d4765c524b1d91567886bde656fb514b + size: 1386730 + timestamp: 1769769569681 +- conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.22.2-h207b36a_0.conda + sha256: df009385e8262c234c0dae9016540b86dad3d299f0d9366d08e327e8e7731634 + md5: e66e2c52d2fdddcf314ad750fb4ebb4a depends: - __osx >=10.13 - - libcxx >=16 - - libedit >=3.1.20191231,<3.2.0a0 - - libedit >=3.1.20191231,<4.0a0 - - openssl >=3.3.1,<4.0a0 + - libcxx >=19 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT purls: [] - size: 1185323 - timestamp: 1719463492984 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.3-h237132a_0.conda - sha256: 4442f957c3c77d69d9da3521268cad5d54c9033f1a73f99cde0a3658937b159b - md5: c6dc8a0fdec13a0565936655c33069a1 + size: 1193620 + timestamp: 1769770267475 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda + sha256: c0a0bf028fe7f3defcdcaa464e536cf1b202d07451e18ad83fdd169d15bef6ed + md5: e446e1822f4da8e5080a9de93474184d depends: - __osx >=11.0 - - libcxx >=16 - - libedit >=3.1.20191231,<3.2.0a0 - - libedit >=3.1.20191231,<4.0a0 - - openssl >=3.3.1,<4.0a0 + - libcxx >=19 + - libedit >=3.1.20250104,<3.2.0a0 + - libedit >=3.1.20250104,<4.0a0 + - openssl >=3.5.5,<4.0a0 license: MIT license_family: MIT purls: [] - size: 1155530 - timestamp: 1719463474401 -- conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - sha256: 18e8b3430d7d232dad132f574268f56b3eb1a19431d6d5de8c53c29e6c18fa81 - md5: 31aec030344e962fbd7dbbbbd68e60a9 + size: 1160828 + timestamp: 1769770119811 +- conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda + sha256: eb60f1ad8b597bcf95dee11bc11fe71a8325bc1204cf51d2bb1f2120ffd77761 + md5: 4432f52dc0c8eb6a7a6abc00a037d93c depends: - - openssl >=3.3.1,<4.0a0 + - openssl >=3.5.5,<4.0a0 - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: MIT license_family: MIT purls: [] - size: 712034 - timestamp: 1719463874284 -- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.44-ha97dd6f_2.conda - sha256: 707dfb8d55d7a5c6f95c772d778ef07a7ca85417d9971796f7d3daad0b615de8 - md5: 14bae321b8127b63cba276bd53fac237 + size: 751055 + timestamp: 1769769688841 +- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda + sha256: 565941ac1f8b0d2f2e8f02827cbca648f4d18cd461afc31f15604cd291b5c5f3 + md5: 12bd9a3f089ee6c9266a37dab82afabd depends: - __glibc >=2.17,<3.0.a0 + - zstd >=1.5.7,<1.6.0a0 constrains: - - binutils_impl_linux-64 2.44 + - binutils_impl_linux-64 2.45.1 license: GPL-3.0-only license_family: GPL purls: [] - size: 747158 - timestamp: 1758810907507 + size: 725507 + timestamp: 1770267139900 - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h0aef613_1.conda sha256: 412381a43d5ff9bbed82cd52a0bbca5b90623f62e41007c9c42d3870c60945ff md5: 9344155d33912347b37f0ae6c410a835 @@ -3701,64 +3736,64 @@ packages: purls: [] size: 164701 timestamp: 1745264384716 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20250512.1-cxx17_hba17884_0.conda - sha256: dcd1429a1782864c452057a6c5bc1860f2b637dc20a2b7e6eacd57395bbceff8 - md5: 83b160d4da3e1e847bf044997621ed63 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20260107.1-cxx17_h7b12aa8_0.conda + sha256: a7a4481a4d217a3eadea0ec489826a69070fcc3153f00443aa491ed21527d239 + md5: 6f7b4302263347698fd24565fbf11310 depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - - libstdcxx >=13 + - libgcc >=14 + - libstdcxx >=14 constrains: - - libabseil-static =20250512.1=cxx17* - - abseil-cpp =20250512.1 + - libabseil-static =20260107.1=cxx17* + - abseil-cpp =20260107.1 license: Apache-2.0 license_family: Apache purls: [] - size: 1310612 - timestamp: 1750194198254 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20250512.1-cxx17_hfc00f1c_0.conda - sha256: a878efebf62f039a1f1733c1e150a75a99c7029ece24e34efdf23d56256585b1 - md5: ddf1acaed2276c7eb9d3c76b49699a11 + size: 1384817 + timestamp: 1770863194876 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20260107.1-cxx17_h7ed6875_0.conda + sha256: 2b4ff36082ddfbacc47ac6e11d4dd9f3403cd109ce8d7f0fbee0cdd47cdef013 + md5: 317f40d7bd7bf6d54b56d4a5b5f5085d depends: - __osx >=10.13 - - libcxx >=18 + - libcxx >=19 constrains: - - abseil-cpp =20250512.1 - - libabseil-static =20250512.1=cxx17* + - libabseil-static =20260107.1=cxx17* + - abseil-cpp =20260107.1 license: Apache-2.0 license_family: Apache purls: [] - size: 1162435 - timestamp: 1750194293086 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20250512.1-cxx17_hd41c47c_0.conda - sha256: 7f0ee9ae7fa2cf7ac92b0acf8047c8bac965389e48be61bf1d463e057af2ea6a - md5: 360dbb413ee2c170a0a684a33c4fc6b8 + size: 1217836 + timestamp: 1770863510112 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20260107.1-cxx17_h2062a1b_0.conda + sha256: 756611fbb8d2957a5b4635d9772bd8432cb6ddac05580a6284cca6fdc9b07fca + md5: bb65152e0d7c7178c0f1ee25692c9fd1 depends: - __osx >=11.0 - - libcxx >=18 + - libcxx >=19 constrains: - - libabseil-static =20250512.1=cxx17* - - abseil-cpp =20250512.1 + - abseil-cpp =20260107.1 + - libabseil-static =20260107.1=cxx17* license: Apache-2.0 license_family: Apache purls: [] - size: 1174081 - timestamp: 1750194620012 -- conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20250512.1-cxx17_habfad5f_0.conda - sha256: 78790771f44e146396d9ae92efbe1022168295afd8d174f653a1fa16f0f0fa32 - md5: d6a4cd236fc1c69a1cfc9698fb5e391f + size: 1229639 + timestamp: 1770863511331 +- conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20260107.1-cxx17_h0eb2380_0.conda + sha256: 7e7f3754f8afaabd946dc11d7c00fd1dc93f0388a2d226a7abf1bf07deab0e2b + md5: 60da39dd5fd93b2a4a0f986f3acc2520 depends: - ucrt >=10.0.20348.0 - vc >=14.3,<15 - - vc14_runtime >=14.42.34438 + - vc14_runtime >=14.44.35208 constrains: - - libabseil-static =20250512.1=cxx17* - - abseil-cpp =20250512.1 + - libabseil-static =20260107.1=cxx17* + - abseil-cpp =20260107.1 license: Apache-2.0 license_family: Apache purls: [] - size: 1615210 - timestamp: 1750194549591 + size: 1884784 + timestamp: 1770863303486 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 sha256: fd1d153962764433fe6233f34a72cdeed5dcf8a883a85769e8295ce940b5b0c5 md5: c965a5aa0d5c1c37ffc62dff36e28400 @@ -3801,133 +3836,133 @@ packages: purls: [] size: 25694 timestamp: 1633684287072 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.14.1-h332b0f4_0.conda - sha256: b6c5cf340a4f80d70d64b3a29a7d9885a5918d16a5cb952022820e6d3e79dc8b - md5: 45f6713cb00f124af300342512219182 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.18.0-hcf29cc6_1.conda + sha256: c84e8dccb65ad5149c0121e4b54bdc47fa39303fd5f4979b8c44bb51b39a369b + md5: 1707cdd636af2ff697b53186572c9f77 depends: - __glibc >=2.17,<3.0.a0 - - krb5 >=1.21.3,<1.22.0a0 - - libgcc >=13 - - libnghttp2 >=1.64.0,<2.0a0 + - krb5 >=1.22.2,<1.23.0a0 + - libgcc >=14 + - libnghttp2 >=1.67.0,<2.0a0 - libssh2 >=1.11.1,<2.0a0 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.0,<4.0a0 + - openssl >=3.5.5,<4.0a0 - zstd >=1.5.7,<1.6.0a0 license: curl license_family: MIT purls: [] - size: 449910 - timestamp: 1749033146806 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.14.1-h5dec5d8_0.conda - sha256: ca0d8d12056227d6b47122cfb6d68fc5a3a0c6ab75a0e908542954fc5f84506c - md5: 8738cd19972c3599400404882ddfbc24 + size: 463621 + timestamp: 1770892808818 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.18.0-h9a2545f_1.conda + sha256: e2d8cb7c6d8dfb6c277eddbb9cf099805f40957877a48347cafddeade02f143a + md5: a6c0494188638d4bfe767f195619bb93 depends: - __osx >=10.13 - - krb5 >=1.21.3,<1.22.0a0 - - libnghttp2 >=1.64.0,<2.0a0 + - krb5 >=1.22.2,<1.23.0a0 + - libnghttp2 >=1.67.0,<2.0a0 - libssh2 >=1.11.1,<2.0a0 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.0,<4.0a0 + - openssl >=3.5.5,<4.0a0 - zstd >=1.5.7,<1.6.0a0 license: curl license_family: MIT purls: [] - size: 424040 - timestamp: 1749033558114 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.14.1-h73640d1_0.conda - sha256: 0055b68137309db41ec34c938d95aec71d1f81bd9d998d5be18f32320c3ccba0 - md5: 1af57c823803941dfc97305248a56d57 + size: 419351 + timestamp: 1770893388507 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.18.0-hd5a2499_1.conda + sha256: dbc34552fc6f040bbcd52b4246ec068ce8d82be0e76bfe45c6984097758d37c2 + md5: 2742a933ef07e91f38e3d33ad6fe937c depends: - __osx >=11.0 - - krb5 >=1.21.3,<1.22.0a0 - - libnghttp2 >=1.64.0,<2.0a0 + - krb5 >=1.22.2,<1.23.0a0 + - libnghttp2 >=1.67.0,<2.0a0 - libssh2 >=1.11.1,<2.0a0 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.0,<4.0a0 + - openssl >=3.5.5,<4.0a0 - zstd >=1.5.7,<1.6.0a0 license: curl license_family: MIT purls: [] - size: 403456 - timestamp: 1749033320430 -- conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.14.1-h88aaa65_0.conda - sha256: b2cface2cf35d8522289df7fffc14370596db6f6dc481cc1b6ca313faeac19d8 - md5: 836b9c08f34d2017dbcaec907c6a1138 + size: 402616 + timestamp: 1770893178846 +- conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.18.0-h8206538_1.conda + sha256: f7dfa98e615a0ddc8de80b32eb6700ea4ebf7b872a6de22a7eadc30a52edd4bf + md5: b7243e3227df9a1852a05762d0efe08d depends: - - krb5 >=1.21.3,<1.22.0a0 + - krb5 >=1.22.2,<1.23.0a0 - libssh2 >=1.11.1,<2.0a0 - libzlib >=1.3.1,<2.0a0 - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: curl license_family: MIT purls: [] - size: 368346 - timestamp: 1749033492826 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.2-h3d58e20_0.conda - sha256: c3feab716740baa6193a1bc5c948c47c913e28f6e52d418bb67123cb92b9761e - md5: 34cd9d03a8f27081a556cb397a19f6cd + size: 383527 + timestamp: 1770892890348 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-21.1.8-h4fb565c_2.conda + sha256: 2619d471c50c466320e2aea906a4363e34efe181e61346e4453bc68264c5185f + md5: 1ac756454e65fb3fd7bc7de599526e43 depends: - __osx >=10.13 license: Apache-2.0 WITH LLVM-exception license_family: Apache purls: [] - size: 572006 - timestamp: 1758698149906 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.2-hf598326_0.conda - sha256: 3de00998c8271f599d6ed9aea60dc0b3e5b1b7ff9f26f8eac95f86f135aa9beb - md5: edfa256c5391f789384e470ce5c9f340 + size: 571912 + timestamp: 1770237202404 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-21.1.8-h55c6f16_2.conda + sha256: 5fbeb2fc2673f0455af6079abf93faaf27f11a92574ad51565fa1ecac9a4e2aa + md5: 4cb5878bdb9ebfa65b7cdff5445087c5 depends: - __osx >=11.0 license: Apache-2.0 WITH LLVM-exception license_family: Apache purls: [] - size: 568154 - timestamp: 1758698306949 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.24-h86f0d12_0.conda - sha256: 8420748ea1cc5f18ecc5068b4f24c7a023cc9b20971c99c824ba10641fb95ddf - md5: 64f0c503da58ec25ebd359e4d990afa8 + size: 570068 + timestamp: 1770238262922 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda + sha256: aa8e8c4be9a2e81610ddf574e05b64ee131fab5e0e3693210c9d6d2fba32c680 + md5: 6c77a605a7a689d17d4819c0f8ac9a00 depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 license: MIT license_family: MIT purls: [] - size: 72573 - timestamp: 1747040452262 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.24-hcc1b750_0.conda - sha256: 2733a4adf53daca1aa4f41fe901f0f8ee9e4c509abd23ffcd7660013772d6f45 - md5: f0a46c359722a3e84deb05cd4072d153 + size: 73490 + timestamp: 1761979956660 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.25-h517ebb2_0.conda + sha256: 025f8b1e85dd8254e0ca65f011919fb1753070eb507f03bca317871a884d24de + md5: 31aa65919a729dc48180893f62c25221 depends: - __osx >=10.13 license: MIT license_family: MIT purls: [] - size: 69751 - timestamp: 1747040526774 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.24-h5773f1b_0.conda - sha256: 417d52b19c679e1881cce3f01cad3a2d542098fa2d6df5485aac40f01aede4d1 - md5: 3baf58a5a87e7c2f4d243ce2f8f2fe5c + size: 70840 + timestamp: 1761980008502 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda + sha256: 5e0b6961be3304a5f027a8c00bd0967fc46ae162cffb7553ff45c70f51b8314c + md5: a6130c709305cd9828b4e1bd9ba0000c depends: - __osx >=11.0 license: MIT license_family: MIT purls: [] - size: 54790 - timestamp: 1747040549847 -- conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.24-h76ddb4d_0.conda - sha256: 65347475c0009078887ede77efe60db679ea06f2b56f7853b9310787fe5ad035 - md5: 08d988e266c6ae77e03d164b83786dc4 + size: 55420 + timestamp: 1761980066242 +- conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda + sha256: 834e4881a18b690d5ec36f44852facd38e13afe599e369be62d29bd675f107ee + md5: e77030e67343e28b084fabd7db0ce43e depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: MIT license_family: MIT purls: [] - size: 156292 - timestamp: 1747040812624 + size: 156818 + timestamp: 1761979842440 - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda sha256: d789471216e7aba3c184cd054ed61ce3f6dac6f87a50ec69291b9297f8c18724 md5: c277e0a4d549b03ac1e9d6cbbe3d017b @@ -3991,354 +4026,357 @@ packages: purls: [] size: 107458 timestamp: 1702146414478 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.1-hecca717_0.conda - sha256: da2080da8f0288b95dd86765c801c6e166c4619b910b11f9a8446fb852438dc2 - md5: 4211416ecba1866fab0c6470986c22d6 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.3-hecca717_0.conda + sha256: 1e1b08f6211629cbc2efe7a5bca5953f8f6b3cae0eeb04ca4dacee1bd4e2db2f + md5: 8b09ae86839581147ef2e5c5e229d164 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 constrains: - - expat 2.7.1.* + - expat 2.7.3.* license: MIT license_family: MIT purls: [] - size: 74811 - timestamp: 1752719572741 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.1-h21dd04a_0.conda - sha256: 689862313571b62ee77ee01729dc093f2bf25a2f99415fcfe51d3a6cd31cce7b - md5: 9fdeae0b7edda62e989557d645769515 + size: 76643 + timestamp: 1763549731408 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.7.3-heffb93a_0.conda + sha256: d11b3a6ce5b2e832f430fd112084533a01220597221bee16d6c7dc3947dffba6 + md5: 222e0732a1d0780a622926265bee14ef depends: - __osx >=10.13 constrains: - - expat 2.7.1.* + - expat 2.7.3.* license: MIT license_family: MIT purls: [] - size: 72450 - timestamp: 1752719744781 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.1-hec049ff_0.conda - sha256: 8fbb17a56f51e7113ed511c5787e0dec0d4b10ef9df921c4fd1cccca0458f648 - md5: b1ca5f21335782f71a8bd69bdc093f67 + size: 74058 + timestamp: 1763549886493 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.3-haf25636_0.conda + sha256: fce22610ecc95e6d149e42a42fbc3cc9d9179bd4eb6232639a60f06e080eec98 + md5: b79875dbb5b1db9a4a22a4520f918e1a depends: - __osx >=11.0 constrains: - - expat 2.7.1.* + - expat 2.7.3.* license: MIT license_family: MIT purls: [] - size: 65971 - timestamp: 1752719657566 -- conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.1-hac47afa_0.conda - sha256: 8432ca842bdf8073ccecf016ccc9140c41c7114dc4ec77ca754551c01f780845 - md5: 3608ffde260281fa641e70d6e34b1b96 + size: 67800 + timestamp: 1763549994166 +- conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.3-hac47afa_0.conda + sha256: 844ab708594bdfbd7b35e1a67c379861bcd180d6efe57b654f482ae2f7f5c21e + md5: 8c9e4f1a0e688eef2e95711178061a0f depends: - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 constrains: - - expat 2.7.1.* + - expat 2.7.3.* license: MIT license_family: MIT purls: [] - size: 141322 - timestamp: 1752719767870 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.6-h2dba641_1.conda - sha256: 764432d32db45466e87f10621db5b74363a9f847d2b8b1f9743746cd160f06ab - md5: ede4673863426c0883c0063d853bbd85 + size: 70137 + timestamp: 1763550049107 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda + sha256: 31f19b6a88ce40ebc0d5a992c131f57d919f73c0b92cd1617a5bec83f6e961e6 + md5: a360c33a5abe61c07959e449fa1453eb depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 license: MIT license_family: MIT purls: [] - size: 57433 - timestamp: 1743434498161 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.6-h281671d_1.conda - sha256: 6394b1bc67c64a21a5cc73d1736d1d4193a64515152e861785c44d2cfc49edf3 - md5: 4ca9ea59839a9ca8df84170fab4ceb41 + size: 58592 + timestamp: 1769456073053 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.5.2-hd1f9c09_0.conda + sha256: 951958d1792238006fdc6fce7f71f1b559534743b26cc1333497d46e5903a2d6 + md5: 66a0dc7464927d0853b590b6f53ba3ea depends: - __osx >=10.13 license: MIT license_family: MIT purls: [] - size: 51216 - timestamp: 1743434595269 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.6-h1da3d7d_1.conda - sha256: c6a530924a9b14e193ea9adfe92843de2a806d1b7dbfd341546ece9653129e60 - md5: c215a60c2935b517dcda8cad4705734d + size: 53583 + timestamp: 1769456300951 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda + sha256: 6686a26466a527585e6a75cc2a242bf4a3d97d6d6c86424a441677917f28bec7 + md5: 43c04d9cb46ef176bb2a4c77e324d599 depends: - __osx >=11.0 license: MIT license_family: MIT purls: [] - size: 39839 - timestamp: 1743434670405 -- conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.6-h537db12_1.conda - sha256: d3b0b8812eab553d3464bbd68204f007f1ebadf96ce30eb0cbc5159f72e353f5 - md5: 85d8fa5e55ed8f93f874b3b23ed54ec6 + size: 40979 + timestamp: 1769456747661 +- conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda + sha256: 59d01f2dfa8b77491b5888a5ab88ff4e1574c9359f7e229da254cdfe27ddc190 + md5: 720b39f5ec0610457b725eb3f396219a depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: MIT license_family: MIT purls: [] - size: 44978 - timestamp: 1743435053850 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-h767d61c_7.conda - sha256: 08f9b87578ab981c7713e4e6a7d935e40766e10691732bba376d4964562bcb45 - md5: c0374badb3a5d4b1372db28d19462c53 + size: 45831 + timestamp: 1769456418774 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_17.conda + sha256: 43860222cf3abf04ded0cf24541a105aa388e0e1d4d6ca46258e186d4e87ae3e + md5: 3c281169ea25b987311400d7a7e28445 depends: - __glibc >=2.17,<3.0.a0 - _openmp_mutex >=4.5 constrains: - - libgomp 15.2.0 h767d61c_7 - - libgcc-ng ==15.2.0=*_7 + - libgcc-ng ==15.2.0=*_17 + - libgomp 15.2.0 he0feb66_17 license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL purls: [] - size: 822552 - timestamp: 1759968052178 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_7.conda - sha256: 2045066dd8e6e58aaf5ae2b722fb6dfdbb57c862b5f34ac7bfb58c40ef39b6ad - md5: 280ea6eee9e2ddefde25ff799c4f0363 + size: 1040478 + timestamp: 1770252533873 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_17.conda + sha256: bdfe50501e4a2d904a5eae65a7ae26e2b7a29b473ab084ad55d96080b966502e + md5: 1478bfa85224a65ab096d69ffd2af1e5 depends: - - libgcc 15.2.0 h767d61c_7 + - libgcc 15.2.0 he0feb66_17 license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL purls: [] - size: 29313 - timestamp: 1759968065504 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-h767d61c_7.conda - sha256: e9fb1c258c8e66ee278397b5822692527c5f5786d372fe7a869b900853f3f5ca - md5: f7b4d76975aac7e5d9e6ad13845f92fe + size: 27541 + timestamp: 1770252546553 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_17.conda + sha256: b961b5dd9761907a7179678b58a69bb4fc16b940eb477f635aea3aec0a3f17a6 + md5: 51b78c6a757575c0d12f4401ffc67029 depends: - __glibc >=2.17,<3.0.a0 license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL purls: [] - size: 447919 - timestamp: 1759967942498 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.74.1-h3288cfb_1.conda - sha256: 5a947f6ad314b430d54d17e8d13015dd98f902a928e2a3d36543d628bdd2208d - md5: 8142b6a4f2ffd81791262c8bd725b655 + size: 603334 + timestamp: 1770252441199 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.78.0-h1d1128b_1.conda + sha256: f6861217d6c4bf96283738ba8d55782fccb577513a6cd346abc60cf88d1795df + md5: 66055700c90b50c0405a4e515bb4fe3c depends: - __glibc >=2.17,<3.0.a0 - - c-ares >=1.34.5,<2.0a0 + - c-ares >=1.34.6,<2.0a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libgcc >=14 - - libprotobuf >=6.31.1,<6.31.2.0a0 - - libre2-11 >=2025.8.12 + - libprotobuf >=6.33.5,<6.33.6.0a0 + - libre2-11 >=2025.11.5 - libstdcxx >=14 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.4,<4.0a0 + - openssl >=3.5.5,<4.0a0 - re2 constrains: - - grpc-cpp =1.74.1 + - grpc-cpp =1.78.0 license: Apache-2.0 license_family: APACHE purls: [] - size: 8902682 - timestamp: 1759629580676 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.74.1-h451496d_1.conda - sha256: 079f69d119ccede8b4acc07b9261d22bb56132e2a05a495b4bd7355a593e87b8 - md5: 2eb73a81a11cefdaffbf7af8f8f13578 + size: 6992089 + timestamp: 1770260975908 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.78.0-h147dede_1.conda + sha256: 4a7a6e2b58229e883525522524198936d40bd97f08c243b480b72cdac9b586eb + md5: fdbb011edb31f7d92ba34f8610f59c9e depends: - __osx >=11.0 - - c-ares >=1.34.5,<2.0a0 + - c-ares >=1.34.6,<2.0a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - - libprotobuf >=6.31.1,<6.31.2.0a0 - - libre2-11 >=2025.8.12 + - libprotobuf >=6.33.5,<6.33.6.0a0 + - libre2-11 >=2025.11.5 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.4,<4.0a0 + - openssl >=3.5.5,<4.0a0 - re2 constrains: - - grpc-cpp =1.74.1 + - grpc-cpp =1.78.0 license: Apache-2.0 license_family: APACHE purls: [] - size: 6777694 - timestamp: 1759628718141 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.74.1-h3063b79_1.conda - sha256: 6069574b249204f95c5faad8b842ab7bd49b917b8c4044ce01c5d6087255bbf1 - md5: 60ba54d3c1ee11f12087a45e42bebe09 + size: 4838464 + timestamp: 1770255612184 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.78.0-h3e3f78d_1.conda + sha256: 1e932d93c21c65cf148934008970d4867286f7e090279a548d8523f2273af9f2 + md5: 5d9886313d6a152cf2d3d971868d1d3d depends: - __osx >=11.0 - - c-ares >=1.34.5,<2.0a0 + - c-ares >=1.34.6,<2.0a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - - libprotobuf >=6.31.1,<6.31.2.0a0 - - libre2-11 >=2025.8.12 + - libprotobuf >=6.33.5,<6.33.6.0a0 + - libre2-11 >=2025.11.5 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.4,<4.0a0 + - openssl >=3.5.5,<4.0a0 - re2 constrains: - - grpc-cpp =1.74.1 + - grpc-cpp =1.78.0 license: Apache-2.0 license_family: APACHE purls: [] - size: 5844427 - timestamp: 1759615058185 -- conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.74.1-h317e13b_1.conda - sha256: 1f0db4a750f94c9a9186d7f534c61a70783558dff1618f46e365c327aa794c4e - md5: fb62412ebe0df97d36d8fef9e232ee5f + size: 4867485 + timestamp: 1770641484584 +- conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.78.0-h9ff2b3e_1.conda + sha256: 329c6f44cbc4963eddcef81ba18b9f1885055ff66fd320da9d0e69c8a923fb85 + md5: c60e3003fb813f8f5bd0593e47721541 depends: - - c-ares >=1.34.5,<2.0a0 + - c-ares >=1.34.6,<2.0a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 - - libprotobuf >=6.31.1,<6.31.2.0a0 - - libre2-11 >=2025.8.12 + - libabseil >=20260107.0,<20260108.0a0 + - libprotobuf >=6.33.5,<6.33.6.0a0 + - libre2-11 >=2025.11.5 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.4,<4.0a0 + - openssl >=3.5.5,<4.0a0 - re2 - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 constrains: - - grpc-cpp =1.74.1 + - grpc-cpp =1.78.0 license: Apache-2.0 license_family: APACHE purls: [] - size: 15948811 - timestamp: 1759616170650 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.0-hb9d3cd8_0.conda - sha256: 98b399287e27768bf79d48faba8a99a2289748c65cd342ca21033fab1860d4a4 - md5: 9fa334557db9f63da6c9285fd2a48638 + size: 11509765 + timestamp: 1770253565257 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda + sha256: cc9aba923eea0af8e30e0f94f2ad7156e2984d80d1e8e7fe6be5a1f257f0eb32 + md5: 8397539e3a0bbd1695584fb4f927485a depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib purls: [] - size: 628947 - timestamp: 1745268527144 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.0-h6e16a3a_0.conda - sha256: 9c0009389c1439ec96a08e3bf7731ac6f0eab794e0a133096556a9ae10be9c27 - md5: 87537967e6de2f885a9fcebd42b7cb10 + size: 633710 + timestamp: 1762094827865 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.1.2-h8616949_0.conda + sha256: ebe2877abc046688d6ea299e80d8322d10c69763f13a102010f90f7168cc5f54 + md5: 48dda187f169f5a8f1e5e07701d5cdd9 depends: - __osx >=10.13 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib purls: [] - size: 586456 - timestamp: 1745268522731 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.0-h5505292_0.conda - sha256: 78df2574fa6aa5b6f5fc367c03192f8ddf8e27dc23641468d54e031ff560b9d4 - md5: 01caa4fbcaf0e6b08b3aef1151e91745 + size: 586189 + timestamp: 1762095332781 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda + sha256: 6c061c56058bb10374daaef50e81b39cf43e8aee21f0037022c0c39c4f31872f + md5: f0695fbecf1006f27f4395d64bd0c4b8 depends: - __osx >=11.0 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib purls: [] - size: 553624 - timestamp: 1745268405713 -- conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.0-h2466b09_0.conda - sha256: e61b0adef3028b51251124e43eb6edf724c67c0f6736f1628b02511480ac354e - md5: 7c51d27540389de84852daa1cdb9c63c + size: 551197 + timestamp: 1762095054358 +- conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda + sha256: 795e2d4feb2f7fc4a2c6e921871575feb32b8082b5760726791f080d1e2c2597 + md5: 56a686f92ac0273c0f6af58858a3f013 depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 constrains: - jpeg <0.0.0a license: IJG AND BSD-3-Clause AND Zlib purls: [] - size: 838154 - timestamp: 1745268437136 -- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.1-hb9d3cd8_2.conda - sha256: f2591c0069447bbe28d4d696b7fcb0c5bd0b4ac582769b89addbcf26fb3430d8 - md5: 1a580f7796c7bf6393fddb8bbbde58dc + size: 841783 + timestamp: 1762094814336 +- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda + sha256: 755c55ebab181d678c12e49cced893598f2bab22d582fbbf4d8b83c18be207eb + md5: c7c83eecbb72d88b940c249af56c8b17 depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 constrains: - - xz 5.8.1.* + - xz 5.8.2.* license: 0BSD purls: [] - size: 112894 - timestamp: 1749230047870 -- conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.1-hd471939_2.conda - sha256: 7e22fd1bdb8bf4c2be93de2d4e718db5c548aa082af47a7430eb23192de6bb36 - md5: 8468beea04b9065b9807fc8b9cdc5894 + size: 113207 + timestamp: 1768752626120 +- conda: https://conda.anaconda.org/conda-forge/osx-64/liblzma-5.8.2-h11316ed_0.conda + sha256: 7ab3c98abd3b5d5ec72faa8d9f5d4b50dcee4970ed05339bc381861199dabb41 + md5: 688a0c3d57fa118b9c97bf7e471ab46c depends: - __osx >=10.13 constrains: - - xz 5.8.1.* + - xz 5.8.2.* license: 0BSD purls: [] - size: 104826 - timestamp: 1749230155443 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.1-h39f12f2_2.conda - sha256: 0cb92a9e026e7bd4842f410a5c5c665c89b2eb97794ffddba519a626b8ce7285 - md5: d6df911d4564d77c4374b02552cb17d1 + size: 105482 + timestamp: 1768753411348 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda + sha256: 7bfc7ffb2d6a9629357a70d4eadeadb6f88fa26ebc28f606b1c1e5e5ed99dc7e + md5: 009f0d956d7bfb00de86901d16e486c7 depends: - __osx >=11.0 constrains: - - xz 5.8.1.* + - xz 5.8.2.* license: 0BSD purls: [] - size: 92286 - timestamp: 1749230283517 -- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.1-h2466b09_2.conda - sha256: 55764956eb9179b98de7cc0e55696f2eff8f7b83fc3ebff5e696ca358bca28cc - md5: c15148b2e18da456f5108ccb5e411446 + size: 92242 + timestamp: 1768752982486 +- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda + sha256: f25bf293f550c8ed2e0c7145eb404324611cfccff37660869d97abf526eb957c + md5: ba0bfd4c3cf73f299ffe46ff0eaeb8e3 depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 constrains: - - xz 5.8.1.* + - xz 5.8.2.* license: 0BSD purls: [] - size: 104935 - timestamp: 1749230611612 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb9d3cd8_0.conda - sha256: 3aa92d4074d4063f2a162cd8ecb45dccac93e543e565c01a787e16a43501f7ee - md5: c7e925f37e3b40d893459e625f6a53f1 + size: 106169 + timestamp: 1768752763559 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libmpdec-4.0.0-hb03c661_1.conda + sha256: fe171ed5cf5959993d43ff72de7596e8ac2853e9021dec0344e583734f1e0843 + md5: 2c21e66f50753a083cbe6b80f38268fa depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 license: BSD-2-Clause license_family: BSD purls: [] - size: 91183 - timestamp: 1748393666725 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-h6e16a3a_0.conda - sha256: 98299c73c7a93cd4f5ff8bb7f43cd80389f08b5a27a296d806bdef7841cc9b9e - md5: 18b81186a6adb43f000ad19ed7b70381 + size: 92400 + timestamp: 1769482286018 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libmpdec-4.0.0-hf3981d6_1.conda + sha256: 1096c740109386607938ab9f09a7e9bca06d86770a284777586d6c378b8fb3fd + md5: ec88ba8a245855935b871a7324373105 depends: - __osx >=10.13 license: BSD-2-Clause license_family: BSD purls: [] - size: 77667 - timestamp: 1748393757154 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h5505292_0.conda - sha256: 0a1875fc1642324ebd6c4ac864604f3f18f57fbcf558a8264f6ced028a3c75b2 - md5: 85ccccb47823dd9f7a99d2c7f530342f + size: 79899 + timestamp: 1769482558610 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libmpdec-4.0.0-h84a0fba_1.conda + sha256: 1089c7f15d5b62c622625ec6700732ece83be8b705da8c6607f4dabb0c4bd6d2 + md5: 57c4be259f5e0b99a5983799a228ae55 depends: - __osx >=11.0 license: BSD-2-Clause license_family: BSD purls: [] - size: 71829 - timestamp: 1748393749336 -- conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - sha256: fc529fc82c7caf51202cc5cec5bb1c2e8d90edbac6d0a4602c966366efe3c7bf - md5: 74860100b2029e2523cf480804c76b9b + size: 73690 + timestamp: 1769482560514 +- conda: https://conda.anaconda.org/conda-forge/win-64/libmpdec-4.0.0-hfd05255_1.conda + sha256: 40dcd0b9522a6e0af72a9db0ced619176e7cfdb114855c7a64f278e73f8a7514 + md5: e4a9fc2bba3b022dad998c78856afe47 depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: BSD-2-Clause license_family: BSD purls: [] - size: 88657 - timestamp: 1723861474602 + size: 89411 + timestamp: 1769482314283 - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.67.0-had1ee68_0.conda sha256: a4a7dab8db4dc81c736e9a9b42bdfd97b087816e029e221380511960ac46c690 md5: b499ce4b026493a13774bcf0f4c33849 @@ -4388,55 +4426,55 @@ packages: purls: [] size: 575454 timestamp: 1756835746393 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.31.1-h9ef548d_1.conda - sha256: b2a62237203a9f4d98bedb2dfc87b548cc7cede151f65589ced1e687a1c3f3b1 - md5: b92e2a26764fcadb4304add7e698ccf2 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-6.33.5-h2b00c02_0.conda + sha256: afbf195443269ae10a940372c1d37cda749355d2bd96ef9587a962abd87f2429 + md5: 11ac478fa72cf12c214199b8a96523f4 depends: - __glibc >=2.17,<3.0.a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 - - libgcc >=13 - - libstdcxx >=13 + - libabseil >=20260107.0,<20260108.0a0 + - libgcc >=14 + - libstdcxx >=14 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 4015243 - timestamp: 1751690262221 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.31.1-h6e993e7_1.conda - sha256: 5078461fd3a2f486654188ecda230dec25ad823dec4303bc9cb52a7967140531 - md5: 60cc1847da0e1e40fb7ca0769fd3c140 + size: 3638698 + timestamp: 1769749419271 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-6.33.5-h29d92e8_0.conda + sha256: adb74f4f1b1e13b02683ede915ce3a9fbf414325af8e035546c0498ffef870f6 + md5: d6d60b0a64a711d70ec2fd0105c299f9 depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 - - libcxx >=18 + - libabseil >=20260107.0,<20260108.0a0 + - libcxx >=19 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 3487404 - timestamp: 1751689250525 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.31.1-h702a38d_1.conda - sha256: 4f1cb41130b7772071a1b10654a825168515fd83d229c1752b90a3fd9d9f0c6b - md5: 16c4f075e63a1f497aa392f843d81f96 + size: 2774545 + timestamp: 1769749167835 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-6.33.5-h4a5acfd_0.conda + sha256: 626852cd50690526c9eac216a9f467edd4cbb01060d0efe41b7def10b54bdb08 + md5: b839e3295b66434f20969c8b940f056a depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 - - libcxx >=18 + - libabseil >=20260107.0,<20260108.0a0 + - libcxx >=19 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 3044706 - timestamp: 1751689138445 -- conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.31.1-hdcda5b4_1.conda - sha256: 085b55d51328c8fcd6aef15f717a21d921bf8df1db2adfa81036e041a0609cd4 - md5: f046835750b70819a1e2fffddf111825 + size: 2713660 + timestamp: 1769748299578 +- conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-6.33.5-h61fc761_0.conda + sha256: 73e2ac7ff32b635b9f6a485dfd5ec1968b7f4bd49f21350e919b2ed8966edaa3 + md5: 69e5855826e56ea4b67fb888ef879afd depends: - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libzlib >=1.3.1,<2.0a0 - ucrt >=10.0.20348.0 - vc >=14.3,<15 @@ -4444,113 +4482,114 @@ packages: license: BSD-3-Clause license_family: BSD purls: [] - size: 7615542 - timestamp: 1751690551169 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.08.12-h7b12aa8_1.conda - sha256: 6940b44710fd571440c9795daf5bed6a56a1db6ff9ad52dcd5b8b2f8b123a635 - md5: 0a801dabf8776bb86b12091d2f99377e + size: 7117788 + timestamp: 1769749718218 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2025.11.05-h0dc7533_1.conda + sha256: 138fc85321a8c0731c1715688b38e2be4fb71db349c9ab25f685315095ae70ff + md5: ced7f10b6cfb4389385556f47c0ad949 depends: - __glibc >=2.17,<3.0.a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libgcc >=14 - libstdcxx >=14 constrains: - - re2 2025.08.12.* + - re2 2025.11.05.* license: BSD-3-Clause license_family: BSD purls: [] - size: 210955 - timestamp: 1757447478835 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.08.12-h554ac88_1.conda - sha256: ca636aeef15001864c3f312e66ec1dd7aa4998e37af007108ee8e076c90cc921 - md5: dc4b1c666de75091ca4eb8327bd73bb9 + size: 213122 + timestamp: 1768190028309 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2025.11.05-h6e8c311_1.conda + sha256: 092f1ed90ba105402b0868eda0a1a11fd1aedd93ea6bb7a57f6e2fc2218806d5 + md5: 154f9f623c04dac40752d279bfdecebf depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 constrains: - - re2 2025.08.12.* + - re2 2025.11.05.* license: BSD-3-Clause license_family: BSD purls: [] - size: 180129 - timestamp: 1757447989578 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.08.12-h91c62da_1.conda - sha256: 3bc8cdf3ff4da340a33b7515e72976caaa5881a28a92e1e718c9228b4475e780 - md5: f5250c27eaa17ad72bf22e0676855d9c + size: 179250 + timestamp: 1768190310379 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2025.11.05-h4c27e2a_1.conda + sha256: 1e2d23bbc1ffca54e4912365b7b59992b7ae5cbeb892779a6dcd9eca9f71c428 + md5: 40d8ad21be4ccfff83a314076c3563f4 depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 constrains: - - re2 2025.08.12.* + - re2 2025.11.05.* license: BSD-3-Clause license_family: BSD purls: [] - size: 165680 - timestamp: 1757447844299 -- conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.08.12-h0eb2380_1.conda - sha256: a8ac6a87152548b077c9cfe02d8e4645370e636167712595982cda501892b99e - md5: 0fc3404767338c33e648ab794d477802 + size: 165851 + timestamp: 1768190225157 +- conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2025.11.05-h04e5de1_1.conda + sha256: 7e26b7868b10e40bc441e00c558927835eacef7e5a39611c2127558edd660c8f + md5: 3d863f1a19f579ca511f6ac02038ab5a depends: - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 constrains: - - re2 2025.08.12.* + - re2 2025.11.05.* license: BSD-3-Clause license_family: BSD purls: [] - size: 263885 - timestamp: 1757448019215 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.50.4-h0c1763c_0.conda - sha256: 6d9c32fc369af5a84875725f7ddfbfc2ace795c28f246dc70055a79f9b2003da - md5: 0b367fad34931cb79e0d6b7e5c06bb1c + size: 266062 + timestamp: 1768190189553 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda + sha256: 04596fcee262a870e4b7c9807224680ff48d4d0cc0dac076a602503d3dc6d217 + md5: da5be73701eecd0e8454423fd6ffcf30 depends: - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 - libgcc >=14 - libzlib >=1.3.1,<2.0a0 license: blessing purls: [] - size: 932581 - timestamp: 1753948484112 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.50.4-h39a8b3b_0.conda - sha256: 466366b094c3eb4b1d77320530cbf5400e7a10ab33e4824c200147488eebf7a6 - md5: 156bfb239b6a67ab4a01110e6718cbc4 + size: 942808 + timestamp: 1768147973361 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.51.2-hb99441e_0.conda + sha256: 710a7ea27744199023c92e66ad005de7f8db9cf83f10d5a943d786f0dac53b7c + md5: d910105ce2b14dfb2b32e92ec7653420 depends: - __osx >=10.13 - libzlib >=1.3.1,<2.0a0 license: blessing purls: [] - size: 980121 - timestamp: 1753948554003 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.50.4-h4237e3c_0.conda - sha256: 802ebe62e6bc59fc26b26276b793e0542cfff2d03c086440aeaf72fb8bbcec44 - md5: 1dcb0468f5146e38fae99aef9656034b + size: 987506 + timestamp: 1768148247615 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda + sha256: 6e9b9f269732cbc4698c7984aa5b9682c168e2a8d1e0406e1ff10091ca046167 + md5: 4b0bf313c53c3e89692f020fb55d5f2c depends: - __osx >=11.0 - - icu >=75.1,<76.0a0 + - icu >=78.2,<79.0a0 - libzlib >=1.3.1,<2.0a0 license: blessing purls: [] - size: 902645 - timestamp: 1753948599139 -- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.50.4-hf5d6505_0.conda - sha256: 5dc4f07b2d6270ac0c874caec53c6984caaaa84bc0d3eb593b0edf3dc8492efa - md5: ccb20d946040f86f0c05b644d5eadeca + size: 909777 + timestamp: 1768148320535 +- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda + sha256: 756478128e3e104bd7e7c3ce6c1b0efad7e08c7320c69fdc726e039323c63fbb + md5: 903979414b47d777d548e5f0165e6cd8 depends: - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 license: blessing purls: [] - size: 1288499 - timestamp: 1753948889360 + size: 1291616 + timestamp: 1768148278261 - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.1-hcf80075_0.conda sha256: fa39bfd69228a13e553bd24601332b7cfeb30ca11a3ca50bb028108fe90a7661 md5: eecce068c7e4eddeb169591baac20ac4 @@ -4601,34 +4640,36 @@ packages: purls: [] size: 292785 timestamp: 1745608759342 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h8f9b012_7.conda - sha256: 1b981647d9775e1cdeb2fab0a4dd9cd75a6b0de2963f6c3953dbd712f78334b3 - md5: 5b767048b1b3ee9a954b06f4084f93dc +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_17.conda + sha256: 50c48cd3716a2e58e8e2e02edc78fef2d08fffe1e3b1ed40eb5f87e7e2d07889 + md5: 24c2fe35fa45cd71214beba6f337c071 depends: - __glibc >=2.17,<3.0.a0 - - libgcc 15.2.0 h767d61c_7 + - libgcc 15.2.0 he0feb66_17 constrains: - - libstdcxx-ng ==15.2.0=*_7 + - libstdcxx-ng ==15.2.0=*_17 license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL purls: [] - size: 3898269 - timestamp: 1759968103436 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-h4852527_7.conda - sha256: 024fd46ac3ea8032a5ec3ea7b91c4c235701a8bf0e6520fe5e6539992a6bd05f - md5: f627678cf829bd70bccf141a19c3ad3e + size: 5852406 + timestamp: 1770252584235 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-15.2.0-hdf11a46_17.conda + sha256: ca3fb322dab3373946b1064da686ec076f5b1b9caf0a2823dad00d0b0f704928 + md5: ea12f5a6bf12c88c06750d9803e1a570 depends: - - libstdcxx 15.2.0 h8f9b012_7 + - libstdcxx 15.2.0 h934c35e_17 license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL purls: [] - size: 29343 - timestamp: 1759968157195 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h8261f1e_0.conda - sha256: ddda0d7ee67e71e904a452010c73e32da416806f5cb9145fb62c322f97e717fb - md5: 72b531694ebe4e8aa6f5745d1015c1b4 + size: 27573 + timestamp: 1770252638797 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda + sha256: e5f8c38625aa6d567809733ae04bb71c161a42e44a9fa8227abe61fa5c60ebe0 + md5: cd5a90476766d53e901500df9215e927 depends: - __glibc >=2.17,<3.0.a0 - lerc >=4.0.0,<5.0a0 - - libdeflate >=1.24,<1.25.0a0 + - libdeflate >=1.25,<1.26.0a0 - libgcc >=14 - libjpeg-turbo >=3.1.0,<4.0a0 - liblzma >=5.8.1,<6.0a0 @@ -4638,16 +4679,16 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: HPND purls: [] - size: 437211 - timestamp: 1758278398952 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-haa3b502_0.conda - sha256: 667bdfa1d2956952bca26adfb01a0848f716fea72afe29a684bd107ba8ec0a3c - md5: 9aeb6f2819a41937d670e73f15a12da5 + size: 435273 + timestamp: 1762022005702 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.7.1-ha0a348c_1.conda + sha256: e53424c34147301beae2cd9223ebf593720d94c038b3f03cacd0535e12c9668e + md5: 9d4344f94de4ab1330cdc41c40152ea6 depends: - __osx >=10.13 - lerc >=4.0.0,<5.0a0 - libcxx >=19 - - libdeflate >=1.24,<1.25.0a0 + - libdeflate >=1.25,<1.26.0a0 - libjpeg-turbo >=3.1.0,<4.0a0 - liblzma >=5.8.1,<6.0a0 - libwebp-base >=1.6.0,<2.0a0 @@ -4655,16 +4696,16 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: HPND purls: [] - size: 404501 - timestamp: 1758278988445 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h7dc4979_0.conda - sha256: 6bc1b601f0d3ee853acd23884a007ac0a0290f3609dabb05a47fc5a0295e2b53 - md5: 2bb9e04e2da869125e2dc334d665f00d + size: 404591 + timestamp: 1762022511178 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda + sha256: e9248077b3fa63db94caca42c8dbc6949c6f32f94d1cafad127f9005d9b1507f + md5: e2a72ab2fa54ecb6abab2b26cde93500 depends: - __osx >=11.0 - lerc >=4.0.0,<5.0a0 - libcxx >=19 - - libdeflate >=1.24,<1.25.0a0 + - libdeflate >=1.25,<1.26.0a0 - libjpeg-turbo >=3.1.0,<4.0a0 - liblzma >=5.8.1,<6.0a0 - libwebp-base >=1.6.0,<2.0a0 @@ -4672,14 +4713,14 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: HPND purls: [] - size: 373640 - timestamp: 1758278641520 -- conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h550210a_0.conda - sha256: d6cac6596ded0d5bbbc4198d7eb4db88da8c00236ebf5e2c8ad333ccde8965e2 - md5: e23f29747d9d2aa2a39b594c114fac67 + size: 373892 + timestamp: 1762022345545 +- conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda + sha256: f1b8cccaaeea38a28b9cd496694b2e3d372bb5be0e9377c9e3d14b330d1cba8a + md5: 549845d5133100142452812feb9ba2e8 depends: - lerc >=4.0.0,<5.0a0 - - libdeflate >=1.24,<1.25.0a0 + - libdeflate >=1.25,<1.26.0a0 - libjpeg-turbo >=3.1.0,<4.0a0 - liblzma >=5.8.1,<6.0a0 - libzlib >=1.3.1,<2.0a0 @@ -4689,61 +4730,61 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: HPND purls: [] - size: 992060 - timestamp: 1758278535260 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.1.10-hb700be7_0.conda - sha256: 35f377323ca0f20ee95a5cf6e725a56e3c2265b0dee15c43d768b48e417460e5 - md5: a0894ad5c0559e611cd109b0512086f1 + size: 993166 + timestamp: 1762022118895 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libunrar-7.2.4-hb700be7_0.conda + sha256: 39f49863ac60e2450490ba47e40783118548e7bf8bb141e08c1b1a0451ac32cf + md5: a8b3119fd1a0a9f72b33d0e359cc6005 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 - libstdcxx >=14 license: LicenseRef-UnRAR purls: [] - size: 342021 - timestamp: 1753950681988 -- conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.1.10-h07ed6ef_0.conda - sha256: 364ca883d9ea8d88bef476cb5c52ac793c152da2befa722e011eebe0d9ce71ae - md5: 6a5e783064468df9eb22b1edf224e693 + size: 345256 + timestamp: 1770256342415 +- conda: https://conda.anaconda.org/conda-forge/osx-64/libunrar-7.2.4-h06b67a2_0.conda + sha256: 171e11c16c3eefb7dbc16a293d77d1961695b6be47b1ca427cef3a401fa019b4 + md5: 5e839ad9aabfbc8ec449e2834ae26f46 depends: - __osx >=10.13 - libcxx >=19 license: LicenseRef-UnRAR purls: [] - size: 288791 - timestamp: 1753950893543 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.1.10-h1821781_0.conda - sha256: 2b52de9237d1472041a36badff7c94b7ed2719bef60c64d85d2f099e85bd1e8c - md5: 470a49ed4718b11f4ea6e3e06bb7c4f9 + size: 290835 + timestamp: 1770256869853 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libunrar-7.2.4-h4ddebb9_0.conda + sha256: dbbce9762acf54640f4f092d96198a12e46cdc395fcb87ccba3ea4b5e099d570 + md5: 9810b85f69f2e5bb8b4d35c47c662468 depends: - __osx >=11.0 - libcxx >=19 license: LicenseRef-UnRAR purls: [] - size: 271506 - timestamp: 1753950850637 -- conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.1.10-h49e36cd_0.conda - sha256: 7ec6c7f74baefccc7f008d432cea815e8d70472335274b5e9f9c1d244bd64e31 - md5: b7170b7cf9fe326a598e094bf07ebb2d + size: 274525 + timestamp: 1770256658272 +- conda: https://conda.anaconda.org/conda-forge/win-64/libunrar-7.2.4-h49e36cd_0.conda + sha256: 491b1d3731ab54396b716fe5027630cd4a290562a4500993a7206cffc442b804 + md5: 68994b4f9dd394339c5ed625d6cd601a depends: - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 license: LicenseRef-UnRAR purls: [] - size: 411517 - timestamp: 1753950663097 -- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.2-he9a06e4_0.conda - sha256: e5ec6d2ad7eef538ddcb9ea62ad4346fde70a4736342c4ad87bd713641eb9808 - md5: 80c07c68d2f6870250959dcc95b209d1 + size: 408865 + timestamp: 1770256323366 +- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda + sha256: 1a7539cfa7df00714e8943e18de0b06cceef6778e420a5ee3a2a145773758aee + md5: db409b7c1720428638e7c0d509d3e1b5 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 license: BSD-3-Clause license_family: BSD purls: [] - size: 37135 - timestamp: 1758626800002 + size: 40311 + timestamp: 1766271528534 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda sha256: 3aed21ab28eddffdaf7f804f49be7a7d701e8f0e46c856d801270b470820a37b md5: aea31d2e5b1091feca96fcfe945c3cf9 @@ -4865,23 +4906,23 @@ packages: - build==1.2.2 ; python_full_version >= '3.11' and extra == 'dev' - twine==6.0.1 ; python_full_version >= '3.11' and extra == 'dev' requires_python: '>=3.5,<4.0' -- conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.6.3-py313h8060acc_0.conda - sha256: 4eb75a352c57d7b260d57db52dc27965ca3f62b47ba39090f7927942da7a2f48 - md5: 0cabb3f2ba71300370fcebe973d9ae38 +- conda: https://conda.anaconda.org/conda-forge/linux-64/multidict-6.7.0-py313h3dea7bd_0.conda + sha256: b967371e773b36c772976e2e22b526eb5322ba478be94727cff279d146c78181 + md5: d182804a222acc8f2c7e215f344d229f depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/multidict?source=hash-mapping - size: 97053 - timestamp: 1751310779863 -- conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.6.3-py313h797cdad_0.conda - sha256: 26fb67dce950f8c032371a1585cc0345afbeab694948305fd06c0194ad3d3030 - md5: 69410a46f8a20a511427a32536957385 + size: 99152 + timestamp: 1765460518836 +- conda: https://conda.anaconda.org/conda-forge/osx-64/multidict-6.7.0-py313h5d7b66b_0.conda + sha256: f2a73bc88f34c34ebd040933dee1c9879e520f8dfc9c49eae5dc4b76ae9ca3df + md5: fe4dfc1a4c6bc916cd723c7efe8d3138 depends: - __osx >=10.13 - python >=3.13,<3.14.0a0 @@ -4890,11 +4931,11 @@ packages: license_family: APACHE purls: - pkg:pypi/multidict?source=hash-mapping - size: 88308 - timestamp: 1751310809781 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.6.3-py313h6347b5a_0.conda - sha256: a828276798bd01b03656dfef796d5b44310818d3e7d6abfeac8aa8fa7c854bd5 - md5: c628386002e5e1353c1047fadaf00b60 + size: 89032 + timestamp: 1765460797124 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/multidict-6.7.0-py313h92dd972_0.conda + sha256: edca3b5b539e2455d96dadbf7515ebf65a40859d2d1c21898b747dcb04ab8809 + md5: 1e544f6a27a177c52e8d76b351433a3a depends: - __osx >=11.0 - python >=3.13,<3.14.0a0 @@ -4904,11 +4945,11 @@ packages: license_family: APACHE purls: - pkg:pypi/multidict?source=hash-mapping - size: 86789 - timestamp: 1751310932683 -- conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.6.3-py313hd650c13_0.conda - sha256: a4d3390498aecb4b8711745a1deb66e69aaa9cf318ce8426bef825f8dff510f5 - md5: a70222aca972874c001c477220c5c82f + size: 87170 + timestamp: 1765460748734 +- conda: https://conda.anaconda.org/conda-forge/win-64/multidict-6.7.0-py313hd650c13_0.conda + sha256: e26fdaeccace7d541c7d159649e04457f98239a59d5246232a6cf7bcae74dd88 + md5: 5cc04827dceed46083448a79dc052cd8 depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -4919,8 +4960,8 @@ packages: license_family: APACHE purls: - pkg:pypi/multidict?source=hash-mapping - size: 91284 - timestamp: 1751310828359 + size: 91235 + timestamp: 1765460724933 - pypi: https://files.pythonhosted.org/packages/22/31/ec5f46fd4c83185b806aa9c736e228cb780f13990a9cf4da0beb70025fcc/multivolumefile-0.2.3-py3-none-any.whl name: multivolumefile version: 0.2.3 @@ -4970,18 +5011,18 @@ packages: purls: [] size: 797030 timestamp: 1738196177597 -- conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - sha256: 3636eec0e60466a00069b47ce94b6d88b01419b6577d8e393da44bb5bc8d3468 - md5: 7ba3f09fceae6a120d664217e58fe686 +- conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.10.0-pyhd8ed1ab_0.conda + sha256: 4fa40e3e13fc6ea0a93f67dfc76c96190afd7ea4ffc1bac2612d954b42cdc3ee + md5: eb52d14a901e23c39e9e7b4a1a5c015f depends: - - python >=3.9 + - python >=3.10 - setuptools license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/nodeenv?source=hash-mapping - size: 34574 - timestamp: 1734112236147 + size: 40866 + timestamp: 1766261270149 - pypi: https://files.pythonhosted.org/packages/45/e1/210b2d8b31ce9119145433e6ea78046e30771de3fe353f313b2778142f34/numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl name: numpy version: 2.1.3 @@ -5016,9 +5057,9 @@ packages: - pkg:pypi/oauthlib?source=hash-mapping size: 102059 timestamp: 1750415349440 -- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.5.4-h26f9b46_0.conda - sha256: e807f3bad09bdf4075dbb4168619e14b0c0360bacb2e12ef18641a834c8c5549 - md5: 14edad12b59ccbfa3910d42c72adc2a0 +- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda + sha256: 44c877f8af015332a5d12f5ff0fb20ca32f896526a7d0cdb30c769df1144fb5c + md5: f61eb8cd60ff9057122a3d338b99c00f depends: - __glibc >=2.17,<3.0.a0 - ca-certificates @@ -5026,33 +5067,33 @@ packages: license: Apache-2.0 license_family: Apache purls: [] - size: 3119624 - timestamp: 1759324353651 -- conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.5.4-h230baf5_0.conda - sha256: 3ce8467773b2472b2919412fd936413f05a9b10c42e52c27bbddc923ef5da78a - md5: 075eaad78f96bbf5835952afbe44466e + size: 3164551 + timestamp: 1769555830639 +- conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.6.1-hb6871ef_1.conda + sha256: e02e5639b0e4d6d4fcf0f3b082642844fb5a37316f5b0a1126c6271347462e90 + md5: 30bb8d08b99b9a7600d39efb3559fff0 depends: - __osx >=10.13 - ca-certificates license: Apache-2.0 license_family: Apache purls: [] - size: 2747108 - timestamp: 1759326402264 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.5.4-h5503f6c_0.conda - sha256: f0512629f9589392c2fb9733d11e753d0eab8fc7602f96e4d7f3bd95c783eb07 - md5: 71118318f37f717eefe55841adb172fd + size: 2777136 + timestamp: 1769557662405 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda + sha256: 361f5c5e60052abc12bdd1b50d7a1a43e6a6653aab99a2263bf2288d709dcf67 + md5: f4f6ad63f98f64191c3e77c5f5f29d76 depends: - __osx >=11.0 - ca-certificates license: Apache-2.0 license_family: Apache purls: [] - size: 3067808 - timestamp: 1759324763146 -- conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.5.4-h725018a_0.conda - sha256: 5ddc1e39e2a8b72db2431620ad1124016f3df135f87ebde450d235c212a61994 - md5: f28ffa510fe055ab518cbd9d6ddfea23 + size: 3104268 + timestamp: 1769556384749 +- conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda + sha256: 53a5ad2e5553b8157a91bb8aa375f78c5958f77cb80e9d2ce59471ea8e5c0bd6 + md5: eb585509b815415bc964b2c7e11c7eb3 depends: - ca-certificates - ucrt >=10.0.20348.0 @@ -5061,492 +5102,494 @@ packages: license: Apache-2.0 license_family: Apache purls: [] - size: 9218823 - timestamp: 1759326176247 -- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-25.0-pyh29332c3_1.conda - sha256: 289861ed0c13a15d7bbb408796af4de72c2fe67e2bcb0de98f4c3fce259d7991 - md5: 58335b26c38bf4a20f399384c33cbcf9 + size: 9343023 + timestamp: 1769557547888 +- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda + sha256: c1fc0f953048f743385d31c468b4a678b3ad20caffdeaa94bed85ba63049fd58 + md5: b76541e68fea4d511b1ac46a28dcd2c6 depends: - python >=3.8 - python license: Apache-2.0 license_family: APACHE purls: - - pkg:pypi/packaging?source=hash-mapping - size: 62477 - timestamp: 1745345660407 -- pypi: https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl + - pkg:pypi/packaging?source=compressed-mapping + size: 72010 + timestamp: 1769093650580 +- pypi: https://files.pythonhosted.org/packages/6f/11/28a221815dcea4c0c9414dfc845e34a84a6a7dabc6da3194498ed5ba4361/pandas-3.0.0-cp313-cp313-macosx_11_0_arm64.whl name: pandas - version: 2.3.3 - sha256: 318d77e0e42a628c04dc56bcef4b40de67918f7041c2b061af1da41dcff670ac + version: 3.0.0 + sha256: bc9cba7b355cb4162442a88ce495e01cb605f17ac1e27d6596ac963504e0305f requires_dist: - - numpy>=1.22.4 ; python_full_version < '3.11' - - numpy>=1.23.2 ; python_full_version == '3.11.*' - - numpy>=1.26.0 ; python_full_version >= '3.12' + - numpy>=1.26.0 ; python_full_version < '3.14' + - numpy>=2.3.3 ; python_full_version >= '3.14' - python-dateutil>=2.8.2 - - pytz>=2020.1 - - tzdata>=2022.7 - - hypothesis>=6.46.1 ; extra == 'test' - - pytest>=7.3.2 ; extra == 'test' - - pytest-xdist>=2.2.0 ; extra == 'test' - - pyarrow>=10.0.1 ; extra == 'pyarrow' - - bottleneck>=1.3.6 ; extra == 'performance' - - numba>=0.56.4 ; extra == 'performance' - - numexpr>=2.8.4 ; extra == 'performance' - - scipy>=1.10.0 ; extra == 'computation' - - xarray>=2022.12.0 ; extra == 'computation' - - fsspec>=2022.11.0 ; extra == 'fss' - - s3fs>=2022.11.0 ; extra == 'aws' - - gcsfs>=2022.11.0 ; extra == 'gcp' - - pandas-gbq>=0.19.0 ; extra == 'gcp' + - tzdata ; sys_platform == 'win32' + - tzdata ; sys_platform == 'emscripten' + - hypothesis>=6.116.0 ; extra == 'test' + - pytest>=8.3.4 ; extra == 'test' + - pytest-xdist>=3.6.1 ; extra == 'test' + - pyarrow>=13.0.0 ; extra == 'pyarrow' + - bottleneck>=1.4.2 ; extra == 'performance' + - numba>=0.60.0 ; extra == 'performance' + - numexpr>=2.10.2 ; extra == 'performance' + - scipy>=1.14.1 ; extra == 'computation' + - xarray>=2024.10.0 ; extra == 'computation' + - fsspec>=2024.10.0 ; extra == 'fss' + - s3fs>=2024.10.0 ; extra == 'aws' + - gcsfs>=2024.10.0 ; extra == 'gcp' - odfpy>=1.4.1 ; extra == 'excel' - - openpyxl>=3.1.0 ; extra == 'excel' - - python-calamine>=0.1.7 ; extra == 'excel' + - openpyxl>=3.1.5 ; extra == 'excel' + - python-calamine>=0.3.0 ; extra == 'excel' - pyxlsb>=1.0.10 ; extra == 'excel' - xlrd>=2.0.1 ; extra == 'excel' - - xlsxwriter>=3.0.5 ; extra == 'excel' - - pyarrow>=10.0.1 ; extra == 'parquet' - - pyarrow>=10.0.1 ; extra == 'feather' - - tables>=3.8.0 ; extra == 'hdf5' - - pyreadstat>=1.2.0 ; extra == 'spss' - - sqlalchemy>=2.0.0 ; extra == 'postgresql' - - psycopg2>=2.9.6 ; extra == 'postgresql' - - adbc-driver-postgresql>=0.8.0 ; extra == 'postgresql' - - sqlalchemy>=2.0.0 ; extra == 'mysql' - - pymysql>=1.0.2 ; extra == 'mysql' - - sqlalchemy>=2.0.0 ; extra == 'sql-other' - - adbc-driver-postgresql>=0.8.0 ; extra == 'sql-other' - - adbc-driver-sqlite>=0.8.0 ; extra == 'sql-other' - - beautifulsoup4>=4.11.2 ; extra == 'html' + - xlsxwriter>=3.2.0 ; extra == 'excel' + - pyarrow>=13.0.0 ; extra == 'parquet' + - pyarrow>=13.0.0 ; extra == 'feather' + - pyiceberg>=0.8.1 ; extra == 'iceberg' + - tables>=3.10.1 ; extra == 'hdf5' + - pyreadstat>=1.2.8 ; extra == 'spss' + - sqlalchemy>=2.0.36 ; extra == 'postgresql' + - psycopg2>=2.9.10 ; extra == 'postgresql' + - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql' + - sqlalchemy>=2.0.36 ; extra == 'mysql' + - pymysql>=1.1.1 ; extra == 'mysql' + - sqlalchemy>=2.0.36 ; extra == 'sql-other' + - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other' + - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other' + - beautifulsoup4>=4.12.3 ; extra == 'html' - html5lib>=1.1 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'xml' - - matplotlib>=3.6.3 ; extra == 'plot' - - jinja2>=3.1.2 ; extra == 'output-formatting' + - lxml>=5.3.0 ; extra == 'html' + - lxml>=5.3.0 ; extra == 'xml' + - matplotlib>=3.9.3 ; extra == 'plot' + - jinja2>=3.1.5 ; extra == 'output-formatting' - tabulate>=0.9.0 ; extra == 'output-formatting' - pyqt5>=5.15.9 ; extra == 'clipboard' - - qtpy>=2.3.0 ; extra == 'clipboard' - - zstandard>=0.19.0 ; extra == 'compression' - - dataframe-api-compat>=0.1.7 ; extra == 'consortium-standard' - - adbc-driver-postgresql>=0.8.0 ; extra == 'all' - - adbc-driver-sqlite>=0.8.0 ; extra == 'all' - - beautifulsoup4>=4.11.2 ; extra == 'all' - - bottleneck>=1.3.6 ; extra == 'all' - - dataframe-api-compat>=0.1.7 ; extra == 'all' - - fastparquet>=2022.12.0 ; extra == 'all' - - fsspec>=2022.11.0 ; extra == 'all' - - gcsfs>=2022.11.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'clipboard' + - zstandard>=0.23.0 ; extra == 'compression' + - pytz>=2024.2 ; extra == 'timezone' + - adbc-driver-postgresql>=1.2.0 ; extra == 'all' + - adbc-driver-sqlite>=1.2.0 ; extra == 'all' + - beautifulsoup4>=4.12.3 ; extra == 'all' + - bottleneck>=1.4.2 ; extra == 'all' + - fastparquet>=2024.11.0 ; extra == 'all' + - fsspec>=2024.10.0 ; extra == 'all' + - gcsfs>=2024.10.0 ; extra == 'all' - html5lib>=1.1 ; extra == 'all' - - hypothesis>=6.46.1 ; extra == 'all' - - jinja2>=3.1.2 ; extra == 'all' - - lxml>=4.9.2 ; extra == 'all' - - matplotlib>=3.6.3 ; extra == 'all' - - numba>=0.56.4 ; extra == 'all' - - numexpr>=2.8.4 ; extra == 'all' + - hypothesis>=6.116.0 ; extra == 'all' + - jinja2>=3.1.5 ; extra == 'all' + - lxml>=5.3.0 ; extra == 'all' + - matplotlib>=3.9.3 ; extra == 'all' + - numba>=0.60.0 ; extra == 'all' + - numexpr>=2.10.2 ; extra == 'all' - odfpy>=1.4.1 ; extra == 'all' - - openpyxl>=3.1.0 ; extra == 'all' - - pandas-gbq>=0.19.0 ; extra == 'all' - - psycopg2>=2.9.6 ; extra == 'all' - - pyarrow>=10.0.1 ; extra == 'all' - - pymysql>=1.0.2 ; extra == 'all' + - openpyxl>=3.1.5 ; extra == 'all' + - psycopg2>=2.9.10 ; extra == 'all' + - pyarrow>=13.0.0 ; extra == 'all' + - pyiceberg>=0.8.1 ; extra == 'all' + - pymysql>=1.1.1 ; extra == 'all' - pyqt5>=5.15.9 ; extra == 'all' - - pyreadstat>=1.2.0 ; extra == 'all' - - pytest>=7.3.2 ; extra == 'all' - - pytest-xdist>=2.2.0 ; extra == 'all' - - python-calamine>=0.1.7 ; extra == 'all' + - pyreadstat>=1.2.8 ; extra == 'all' + - pytest>=8.3.4 ; extra == 'all' + - pytest-xdist>=3.6.1 ; extra == 'all' + - python-calamine>=0.3.0 ; extra == 'all' + - pytz>=2024.2 ; extra == 'all' - pyxlsb>=1.0.10 ; extra == 'all' - - qtpy>=2.3.0 ; extra == 'all' - - scipy>=1.10.0 ; extra == 'all' - - s3fs>=2022.11.0 ; extra == 'all' - - sqlalchemy>=2.0.0 ; extra == 'all' - - tables>=3.8.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'all' + - scipy>=1.14.1 ; extra == 'all' + - s3fs>=2024.10.0 ; extra == 'all' + - sqlalchemy>=2.0.36 ; extra == 'all' + - tables>=3.10.1 ; extra == 'all' - tabulate>=0.9.0 ; extra == 'all' - - xarray>=2022.12.0 ; extra == 'all' + - xarray>=2024.10.0 ; extra == 'all' - xlrd>=2.0.1 ; extra == 'all' - - xlsxwriter>=3.0.5 ; extra == 'all' - - zstandard>=0.19.0 ; extra == 'all' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl + - xlsxwriter>=3.2.0 ; extra == 'all' + - zstandard>=0.23.0 ; extra == 'all' + requires_python: '>=3.11' +- pypi: https://files.pythonhosted.org/packages/6f/fa/7f0ac4ca8877c57537aaff2a842f8760e630d8e824b730eb2e859ffe96ca/pandas-3.0.0-cp313-cp313-macosx_10_13_x86_64.whl name: pandas - version: 2.3.3 - sha256: bdcd9d1167f4885211e401b3036c0c8d9e274eee67ea8d0758a256d60704cfe8 + version: 3.0.0 + sha256: b78d646249b9a2bc191040988c7bb524c92fa8534fb0898a0741d7e6f2ffafa6 requires_dist: - - numpy>=1.22.4 ; python_full_version < '3.11' - - numpy>=1.23.2 ; python_full_version == '3.11.*' - - numpy>=1.26.0 ; python_full_version >= '3.12' + - numpy>=1.26.0 ; python_full_version < '3.14' + - numpy>=2.3.3 ; python_full_version >= '3.14' - python-dateutil>=2.8.2 - - pytz>=2020.1 - - tzdata>=2022.7 - - hypothesis>=6.46.1 ; extra == 'test' - - pytest>=7.3.2 ; extra == 'test' - - pytest-xdist>=2.2.0 ; extra == 'test' - - pyarrow>=10.0.1 ; extra == 'pyarrow' - - bottleneck>=1.3.6 ; extra == 'performance' - - numba>=0.56.4 ; extra == 'performance' - - numexpr>=2.8.4 ; extra == 'performance' - - scipy>=1.10.0 ; extra == 'computation' - - xarray>=2022.12.0 ; extra == 'computation' - - fsspec>=2022.11.0 ; extra == 'fss' - - s3fs>=2022.11.0 ; extra == 'aws' - - gcsfs>=2022.11.0 ; extra == 'gcp' - - pandas-gbq>=0.19.0 ; extra == 'gcp' + - tzdata ; sys_platform == 'win32' + - tzdata ; sys_platform == 'emscripten' + - hypothesis>=6.116.0 ; extra == 'test' + - pytest>=8.3.4 ; extra == 'test' + - pytest-xdist>=3.6.1 ; extra == 'test' + - pyarrow>=13.0.0 ; extra == 'pyarrow' + - bottleneck>=1.4.2 ; extra == 'performance' + - numba>=0.60.0 ; extra == 'performance' + - numexpr>=2.10.2 ; extra == 'performance' + - scipy>=1.14.1 ; extra == 'computation' + - xarray>=2024.10.0 ; extra == 'computation' + - fsspec>=2024.10.0 ; extra == 'fss' + - s3fs>=2024.10.0 ; extra == 'aws' + - gcsfs>=2024.10.0 ; extra == 'gcp' - odfpy>=1.4.1 ; extra == 'excel' - - openpyxl>=3.1.0 ; extra == 'excel' - - python-calamine>=0.1.7 ; extra == 'excel' + - openpyxl>=3.1.5 ; extra == 'excel' + - python-calamine>=0.3.0 ; extra == 'excel' - pyxlsb>=1.0.10 ; extra == 'excel' - xlrd>=2.0.1 ; extra == 'excel' - - xlsxwriter>=3.0.5 ; extra == 'excel' - - pyarrow>=10.0.1 ; extra == 'parquet' - - pyarrow>=10.0.1 ; extra == 'feather' - - tables>=3.8.0 ; extra == 'hdf5' - - pyreadstat>=1.2.0 ; extra == 'spss' - - sqlalchemy>=2.0.0 ; extra == 'postgresql' - - psycopg2>=2.9.6 ; extra == 'postgresql' - - adbc-driver-postgresql>=0.8.0 ; extra == 'postgresql' - - sqlalchemy>=2.0.0 ; extra == 'mysql' - - pymysql>=1.0.2 ; extra == 'mysql' - - sqlalchemy>=2.0.0 ; extra == 'sql-other' - - adbc-driver-postgresql>=0.8.0 ; extra == 'sql-other' - - adbc-driver-sqlite>=0.8.0 ; extra == 'sql-other' - - beautifulsoup4>=4.11.2 ; extra == 'html' + - xlsxwriter>=3.2.0 ; extra == 'excel' + - pyarrow>=13.0.0 ; extra == 'parquet' + - pyarrow>=13.0.0 ; extra == 'feather' + - pyiceberg>=0.8.1 ; extra == 'iceberg' + - tables>=3.10.1 ; extra == 'hdf5' + - pyreadstat>=1.2.8 ; extra == 'spss' + - sqlalchemy>=2.0.36 ; extra == 'postgresql' + - psycopg2>=2.9.10 ; extra == 'postgresql' + - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql' + - sqlalchemy>=2.0.36 ; extra == 'mysql' + - pymysql>=1.1.1 ; extra == 'mysql' + - sqlalchemy>=2.0.36 ; extra == 'sql-other' + - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other' + - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other' + - beautifulsoup4>=4.12.3 ; extra == 'html' - html5lib>=1.1 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'xml' - - matplotlib>=3.6.3 ; extra == 'plot' - - jinja2>=3.1.2 ; extra == 'output-formatting' + - lxml>=5.3.0 ; extra == 'html' + - lxml>=5.3.0 ; extra == 'xml' + - matplotlib>=3.9.3 ; extra == 'plot' + - jinja2>=3.1.5 ; extra == 'output-formatting' - tabulate>=0.9.0 ; extra == 'output-formatting' - pyqt5>=5.15.9 ; extra == 'clipboard' - - qtpy>=2.3.0 ; extra == 'clipboard' - - zstandard>=0.19.0 ; extra == 'compression' - - dataframe-api-compat>=0.1.7 ; extra == 'consortium-standard' - - adbc-driver-postgresql>=0.8.0 ; extra == 'all' - - adbc-driver-sqlite>=0.8.0 ; extra == 'all' - - beautifulsoup4>=4.11.2 ; extra == 'all' - - bottleneck>=1.3.6 ; extra == 'all' - - dataframe-api-compat>=0.1.7 ; extra == 'all' - - fastparquet>=2022.12.0 ; extra == 'all' - - fsspec>=2022.11.0 ; extra == 'all' - - gcsfs>=2022.11.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'clipboard' + - zstandard>=0.23.0 ; extra == 'compression' + - pytz>=2024.2 ; extra == 'timezone' + - adbc-driver-postgresql>=1.2.0 ; extra == 'all' + - adbc-driver-sqlite>=1.2.0 ; extra == 'all' + - beautifulsoup4>=4.12.3 ; extra == 'all' + - bottleneck>=1.4.2 ; extra == 'all' + - fastparquet>=2024.11.0 ; extra == 'all' + - fsspec>=2024.10.0 ; extra == 'all' + - gcsfs>=2024.10.0 ; extra == 'all' - html5lib>=1.1 ; extra == 'all' - - hypothesis>=6.46.1 ; extra == 'all' - - jinja2>=3.1.2 ; extra == 'all' - - lxml>=4.9.2 ; extra == 'all' - - matplotlib>=3.6.3 ; extra == 'all' - - numba>=0.56.4 ; extra == 'all' - - numexpr>=2.8.4 ; extra == 'all' + - hypothesis>=6.116.0 ; extra == 'all' + - jinja2>=3.1.5 ; extra == 'all' + - lxml>=5.3.0 ; extra == 'all' + - matplotlib>=3.9.3 ; extra == 'all' + - numba>=0.60.0 ; extra == 'all' + - numexpr>=2.10.2 ; extra == 'all' - odfpy>=1.4.1 ; extra == 'all' - - openpyxl>=3.1.0 ; extra == 'all' - - pandas-gbq>=0.19.0 ; extra == 'all' - - psycopg2>=2.9.6 ; extra == 'all' - - pyarrow>=10.0.1 ; extra == 'all' - - pymysql>=1.0.2 ; extra == 'all' + - openpyxl>=3.1.5 ; extra == 'all' + - psycopg2>=2.9.10 ; extra == 'all' + - pyarrow>=13.0.0 ; extra == 'all' + - pyiceberg>=0.8.1 ; extra == 'all' + - pymysql>=1.1.1 ; extra == 'all' - pyqt5>=5.15.9 ; extra == 'all' - - pyreadstat>=1.2.0 ; extra == 'all' - - pytest>=7.3.2 ; extra == 'all' - - pytest-xdist>=2.2.0 ; extra == 'all' - - python-calamine>=0.1.7 ; extra == 'all' + - pyreadstat>=1.2.8 ; extra == 'all' + - pytest>=8.3.4 ; extra == 'all' + - pytest-xdist>=3.6.1 ; extra == 'all' + - python-calamine>=0.3.0 ; extra == 'all' + - pytz>=2024.2 ; extra == 'all' - pyxlsb>=1.0.10 ; extra == 'all' - - qtpy>=2.3.0 ; extra == 'all' - - scipy>=1.10.0 ; extra == 'all' - - s3fs>=2022.11.0 ; extra == 'all' - - sqlalchemy>=2.0.0 ; extra == 'all' - - tables>=3.8.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'all' + - scipy>=1.14.1 ; extra == 'all' + - s3fs>=2024.10.0 ; extra == 'all' + - sqlalchemy>=2.0.36 ; extra == 'all' + - tables>=3.10.1 ; extra == 'all' - tabulate>=0.9.0 ; extra == 'all' - - xarray>=2022.12.0 ; extra == 'all' + - xarray>=2024.10.0 ; extra == 'all' - xlrd>=2.0.1 ; extra == 'all' - - xlsxwriter>=3.0.5 ; extra == 'all' - - zstandard>=0.19.0 ; extra == 'all' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl + - xlsxwriter>=3.2.0 ; extra == 'all' + - zstandard>=0.23.0 ; extra == 'all' + requires_python: '>=3.11' +- pypi: https://files.pythonhosted.org/packages/c9/8c/c6638d9f67e45e07656b3826405c5cc5f57f6fd07c8b2572ade328c86e22/pandas-3.0.0-cp313-cp313-win_amd64.whl name: pandas - version: 2.3.3 - sha256: f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee + version: 3.0.0 + sha256: 98212a38a709feb90ae658cb6227ea3657c22ba8157d4b8f913cd4c950de5e7e requires_dist: - - numpy>=1.22.4 ; python_full_version < '3.11' - - numpy>=1.23.2 ; python_full_version == '3.11.*' - - numpy>=1.26.0 ; python_full_version >= '3.12' + - numpy>=1.26.0 ; python_full_version < '3.14' + - numpy>=2.3.3 ; python_full_version >= '3.14' - python-dateutil>=2.8.2 - - pytz>=2020.1 - - tzdata>=2022.7 - - hypothesis>=6.46.1 ; extra == 'test' - - pytest>=7.3.2 ; extra == 'test' - - pytest-xdist>=2.2.0 ; extra == 'test' - - pyarrow>=10.0.1 ; extra == 'pyarrow' - - bottleneck>=1.3.6 ; extra == 'performance' - - numba>=0.56.4 ; extra == 'performance' - - numexpr>=2.8.4 ; extra == 'performance' - - scipy>=1.10.0 ; extra == 'computation' - - xarray>=2022.12.0 ; extra == 'computation' - - fsspec>=2022.11.0 ; extra == 'fss' - - s3fs>=2022.11.0 ; extra == 'aws' - - gcsfs>=2022.11.0 ; extra == 'gcp' - - pandas-gbq>=0.19.0 ; extra == 'gcp' + - tzdata ; sys_platform == 'win32' + - tzdata ; sys_platform == 'emscripten' + - hypothesis>=6.116.0 ; extra == 'test' + - pytest>=8.3.4 ; extra == 'test' + - pytest-xdist>=3.6.1 ; extra == 'test' + - pyarrow>=13.0.0 ; extra == 'pyarrow' + - bottleneck>=1.4.2 ; extra == 'performance' + - numba>=0.60.0 ; extra == 'performance' + - numexpr>=2.10.2 ; extra == 'performance' + - scipy>=1.14.1 ; extra == 'computation' + - xarray>=2024.10.0 ; extra == 'computation' + - fsspec>=2024.10.0 ; extra == 'fss' + - s3fs>=2024.10.0 ; extra == 'aws' + - gcsfs>=2024.10.0 ; extra == 'gcp' - odfpy>=1.4.1 ; extra == 'excel' - - openpyxl>=3.1.0 ; extra == 'excel' - - python-calamine>=0.1.7 ; extra == 'excel' + - openpyxl>=3.1.5 ; extra == 'excel' + - python-calamine>=0.3.0 ; extra == 'excel' - pyxlsb>=1.0.10 ; extra == 'excel' - xlrd>=2.0.1 ; extra == 'excel' - - xlsxwriter>=3.0.5 ; extra == 'excel' - - pyarrow>=10.0.1 ; extra == 'parquet' - - pyarrow>=10.0.1 ; extra == 'feather' - - tables>=3.8.0 ; extra == 'hdf5' - - pyreadstat>=1.2.0 ; extra == 'spss' - - sqlalchemy>=2.0.0 ; extra == 'postgresql' - - psycopg2>=2.9.6 ; extra == 'postgresql' - - adbc-driver-postgresql>=0.8.0 ; extra == 'postgresql' - - sqlalchemy>=2.0.0 ; extra == 'mysql' - - pymysql>=1.0.2 ; extra == 'mysql' - - sqlalchemy>=2.0.0 ; extra == 'sql-other' - - adbc-driver-postgresql>=0.8.0 ; extra == 'sql-other' - - adbc-driver-sqlite>=0.8.0 ; extra == 'sql-other' - - beautifulsoup4>=4.11.2 ; extra == 'html' + - xlsxwriter>=3.2.0 ; extra == 'excel' + - pyarrow>=13.0.0 ; extra == 'parquet' + - pyarrow>=13.0.0 ; extra == 'feather' + - pyiceberg>=0.8.1 ; extra == 'iceberg' + - tables>=3.10.1 ; extra == 'hdf5' + - pyreadstat>=1.2.8 ; extra == 'spss' + - sqlalchemy>=2.0.36 ; extra == 'postgresql' + - psycopg2>=2.9.10 ; extra == 'postgresql' + - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql' + - sqlalchemy>=2.0.36 ; extra == 'mysql' + - pymysql>=1.1.1 ; extra == 'mysql' + - sqlalchemy>=2.0.36 ; extra == 'sql-other' + - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other' + - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other' + - beautifulsoup4>=4.12.3 ; extra == 'html' - html5lib>=1.1 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'xml' - - matplotlib>=3.6.3 ; extra == 'plot' - - jinja2>=3.1.2 ; extra == 'output-formatting' + - lxml>=5.3.0 ; extra == 'html' + - lxml>=5.3.0 ; extra == 'xml' + - matplotlib>=3.9.3 ; extra == 'plot' + - jinja2>=3.1.5 ; extra == 'output-formatting' - tabulate>=0.9.0 ; extra == 'output-formatting' - pyqt5>=5.15.9 ; extra == 'clipboard' - - qtpy>=2.3.0 ; extra == 'clipboard' - - zstandard>=0.19.0 ; extra == 'compression' - - dataframe-api-compat>=0.1.7 ; extra == 'consortium-standard' - - adbc-driver-postgresql>=0.8.0 ; extra == 'all' - - adbc-driver-sqlite>=0.8.0 ; extra == 'all' - - beautifulsoup4>=4.11.2 ; extra == 'all' - - bottleneck>=1.3.6 ; extra == 'all' - - dataframe-api-compat>=0.1.7 ; extra == 'all' - - fastparquet>=2022.12.0 ; extra == 'all' - - fsspec>=2022.11.0 ; extra == 'all' - - gcsfs>=2022.11.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'clipboard' + - zstandard>=0.23.0 ; extra == 'compression' + - pytz>=2024.2 ; extra == 'timezone' + - adbc-driver-postgresql>=1.2.0 ; extra == 'all' + - adbc-driver-sqlite>=1.2.0 ; extra == 'all' + - beautifulsoup4>=4.12.3 ; extra == 'all' + - bottleneck>=1.4.2 ; extra == 'all' + - fastparquet>=2024.11.0 ; extra == 'all' + - fsspec>=2024.10.0 ; extra == 'all' + - gcsfs>=2024.10.0 ; extra == 'all' - html5lib>=1.1 ; extra == 'all' - - hypothesis>=6.46.1 ; extra == 'all' - - jinja2>=3.1.2 ; extra == 'all' - - lxml>=4.9.2 ; extra == 'all' - - matplotlib>=3.6.3 ; extra == 'all' - - numba>=0.56.4 ; extra == 'all' - - numexpr>=2.8.4 ; extra == 'all' + - hypothesis>=6.116.0 ; extra == 'all' + - jinja2>=3.1.5 ; extra == 'all' + - lxml>=5.3.0 ; extra == 'all' + - matplotlib>=3.9.3 ; extra == 'all' + - numba>=0.60.0 ; extra == 'all' + - numexpr>=2.10.2 ; extra == 'all' - odfpy>=1.4.1 ; extra == 'all' - - openpyxl>=3.1.0 ; extra == 'all' - - pandas-gbq>=0.19.0 ; extra == 'all' - - psycopg2>=2.9.6 ; extra == 'all' - - pyarrow>=10.0.1 ; extra == 'all' - - pymysql>=1.0.2 ; extra == 'all' + - openpyxl>=3.1.5 ; extra == 'all' + - psycopg2>=2.9.10 ; extra == 'all' + - pyarrow>=13.0.0 ; extra == 'all' + - pyiceberg>=0.8.1 ; extra == 'all' + - pymysql>=1.1.1 ; extra == 'all' - pyqt5>=5.15.9 ; extra == 'all' - - pyreadstat>=1.2.0 ; extra == 'all' - - pytest>=7.3.2 ; extra == 'all' - - pytest-xdist>=2.2.0 ; extra == 'all' - - python-calamine>=0.1.7 ; extra == 'all' + - pyreadstat>=1.2.8 ; extra == 'all' + - pytest>=8.3.4 ; extra == 'all' + - pytest-xdist>=3.6.1 ; extra == 'all' + - python-calamine>=0.3.0 ; extra == 'all' + - pytz>=2024.2 ; extra == 'all' - pyxlsb>=1.0.10 ; extra == 'all' - - qtpy>=2.3.0 ; extra == 'all' - - scipy>=1.10.0 ; extra == 'all' - - s3fs>=2022.11.0 ; extra == 'all' - - sqlalchemy>=2.0.0 ; extra == 'all' - - tables>=3.8.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'all' + - scipy>=1.14.1 ; extra == 'all' + - s3fs>=2024.10.0 ; extra == 'all' + - sqlalchemy>=2.0.36 ; extra == 'all' + - tables>=3.10.1 ; extra == 'all' - tabulate>=0.9.0 ; extra == 'all' - - xarray>=2022.12.0 ; extra == 'all' + - xarray>=2024.10.0 ; extra == 'all' - xlrd>=2.0.1 ; extra == 'all' - - xlsxwriter>=3.0.5 ; extra == 'all' - - zstandard>=0.19.0 ; extra == 'all' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl + - xlsxwriter>=3.2.0 ; extra == 'all' + - zstandard>=0.23.0 ; extra == 'all' + requires_python: '>=3.11' +- pypi: https://files.pythonhosted.org/packages/f7/a3/51e02ebc2a14974170d51e2410dfdab58870ea9bcd37cda15bd553d24dc4/pandas-3.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl name: pandas - version: 2.3.3 - sha256: 56851a737e3470de7fa88e6131f41281ed440d29a9268dcbf0002da5ac366713 + version: 3.0.0 + sha256: 95683af6175d884ee89471842acfca29172a85031fccdabc35e50c0984470a0e requires_dist: - - numpy>=1.22.4 ; python_full_version < '3.11' - - numpy>=1.23.2 ; python_full_version == '3.11.*' - - numpy>=1.26.0 ; python_full_version >= '3.12' + - numpy>=1.26.0 ; python_full_version < '3.14' + - numpy>=2.3.3 ; python_full_version >= '3.14' - python-dateutil>=2.8.2 - - pytz>=2020.1 - - tzdata>=2022.7 - - hypothesis>=6.46.1 ; extra == 'test' - - pytest>=7.3.2 ; extra == 'test' - - pytest-xdist>=2.2.0 ; extra == 'test' - - pyarrow>=10.0.1 ; extra == 'pyarrow' - - bottleneck>=1.3.6 ; extra == 'performance' - - numba>=0.56.4 ; extra == 'performance' - - numexpr>=2.8.4 ; extra == 'performance' - - scipy>=1.10.0 ; extra == 'computation' - - xarray>=2022.12.0 ; extra == 'computation' - - fsspec>=2022.11.0 ; extra == 'fss' - - s3fs>=2022.11.0 ; extra == 'aws' - - gcsfs>=2022.11.0 ; extra == 'gcp' - - pandas-gbq>=0.19.0 ; extra == 'gcp' + - tzdata ; sys_platform == 'win32' + - tzdata ; sys_platform == 'emscripten' + - hypothesis>=6.116.0 ; extra == 'test' + - pytest>=8.3.4 ; extra == 'test' + - pytest-xdist>=3.6.1 ; extra == 'test' + - pyarrow>=13.0.0 ; extra == 'pyarrow' + - bottleneck>=1.4.2 ; extra == 'performance' + - numba>=0.60.0 ; extra == 'performance' + - numexpr>=2.10.2 ; extra == 'performance' + - scipy>=1.14.1 ; extra == 'computation' + - xarray>=2024.10.0 ; extra == 'computation' + - fsspec>=2024.10.0 ; extra == 'fss' + - s3fs>=2024.10.0 ; extra == 'aws' + - gcsfs>=2024.10.0 ; extra == 'gcp' - odfpy>=1.4.1 ; extra == 'excel' - - openpyxl>=3.1.0 ; extra == 'excel' - - python-calamine>=0.1.7 ; extra == 'excel' + - openpyxl>=3.1.5 ; extra == 'excel' + - python-calamine>=0.3.0 ; extra == 'excel' - pyxlsb>=1.0.10 ; extra == 'excel' - xlrd>=2.0.1 ; extra == 'excel' - - xlsxwriter>=3.0.5 ; extra == 'excel' - - pyarrow>=10.0.1 ; extra == 'parquet' - - pyarrow>=10.0.1 ; extra == 'feather' - - tables>=3.8.0 ; extra == 'hdf5' - - pyreadstat>=1.2.0 ; extra == 'spss' - - sqlalchemy>=2.0.0 ; extra == 'postgresql' - - psycopg2>=2.9.6 ; extra == 'postgresql' - - adbc-driver-postgresql>=0.8.0 ; extra == 'postgresql' - - sqlalchemy>=2.0.0 ; extra == 'mysql' - - pymysql>=1.0.2 ; extra == 'mysql' - - sqlalchemy>=2.0.0 ; extra == 'sql-other' - - adbc-driver-postgresql>=0.8.0 ; extra == 'sql-other' - - adbc-driver-sqlite>=0.8.0 ; extra == 'sql-other' - - beautifulsoup4>=4.11.2 ; extra == 'html' + - xlsxwriter>=3.2.0 ; extra == 'excel' + - pyarrow>=13.0.0 ; extra == 'parquet' + - pyarrow>=13.0.0 ; extra == 'feather' + - pyiceberg>=0.8.1 ; extra == 'iceberg' + - tables>=3.10.1 ; extra == 'hdf5' + - pyreadstat>=1.2.8 ; extra == 'spss' + - sqlalchemy>=2.0.36 ; extra == 'postgresql' + - psycopg2>=2.9.10 ; extra == 'postgresql' + - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql' + - sqlalchemy>=2.0.36 ; extra == 'mysql' + - pymysql>=1.1.1 ; extra == 'mysql' + - sqlalchemy>=2.0.36 ; extra == 'sql-other' + - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other' + - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other' + - beautifulsoup4>=4.12.3 ; extra == 'html' - html5lib>=1.1 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'html' - - lxml>=4.9.2 ; extra == 'xml' - - matplotlib>=3.6.3 ; extra == 'plot' - - jinja2>=3.1.2 ; extra == 'output-formatting' + - lxml>=5.3.0 ; extra == 'html' + - lxml>=5.3.0 ; extra == 'xml' + - matplotlib>=3.9.3 ; extra == 'plot' + - jinja2>=3.1.5 ; extra == 'output-formatting' - tabulate>=0.9.0 ; extra == 'output-formatting' - pyqt5>=5.15.9 ; extra == 'clipboard' - - qtpy>=2.3.0 ; extra == 'clipboard' - - zstandard>=0.19.0 ; extra == 'compression' - - dataframe-api-compat>=0.1.7 ; extra == 'consortium-standard' - - adbc-driver-postgresql>=0.8.0 ; extra == 'all' - - adbc-driver-sqlite>=0.8.0 ; extra == 'all' - - beautifulsoup4>=4.11.2 ; extra == 'all' - - bottleneck>=1.3.6 ; extra == 'all' - - dataframe-api-compat>=0.1.7 ; extra == 'all' - - fastparquet>=2022.12.0 ; extra == 'all' - - fsspec>=2022.11.0 ; extra == 'all' - - gcsfs>=2022.11.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'clipboard' + - zstandard>=0.23.0 ; extra == 'compression' + - pytz>=2024.2 ; extra == 'timezone' + - adbc-driver-postgresql>=1.2.0 ; extra == 'all' + - adbc-driver-sqlite>=1.2.0 ; extra == 'all' + - beautifulsoup4>=4.12.3 ; extra == 'all' + - bottleneck>=1.4.2 ; extra == 'all' + - fastparquet>=2024.11.0 ; extra == 'all' + - fsspec>=2024.10.0 ; extra == 'all' + - gcsfs>=2024.10.0 ; extra == 'all' - html5lib>=1.1 ; extra == 'all' - - hypothesis>=6.46.1 ; extra == 'all' - - jinja2>=3.1.2 ; extra == 'all' - - lxml>=4.9.2 ; extra == 'all' - - matplotlib>=3.6.3 ; extra == 'all' - - numba>=0.56.4 ; extra == 'all' - - numexpr>=2.8.4 ; extra == 'all' + - hypothesis>=6.116.0 ; extra == 'all' + - jinja2>=3.1.5 ; extra == 'all' + - lxml>=5.3.0 ; extra == 'all' + - matplotlib>=3.9.3 ; extra == 'all' + - numba>=0.60.0 ; extra == 'all' + - numexpr>=2.10.2 ; extra == 'all' - odfpy>=1.4.1 ; extra == 'all' - - openpyxl>=3.1.0 ; extra == 'all' - - pandas-gbq>=0.19.0 ; extra == 'all' - - psycopg2>=2.9.6 ; extra == 'all' - - pyarrow>=10.0.1 ; extra == 'all' - - pymysql>=1.0.2 ; extra == 'all' + - openpyxl>=3.1.5 ; extra == 'all' + - psycopg2>=2.9.10 ; extra == 'all' + - pyarrow>=13.0.0 ; extra == 'all' + - pyiceberg>=0.8.1 ; extra == 'all' + - pymysql>=1.1.1 ; extra == 'all' - pyqt5>=5.15.9 ; extra == 'all' - - pyreadstat>=1.2.0 ; extra == 'all' - - pytest>=7.3.2 ; extra == 'all' - - pytest-xdist>=2.2.0 ; extra == 'all' - - python-calamine>=0.1.7 ; extra == 'all' + - pyreadstat>=1.2.8 ; extra == 'all' + - pytest>=8.3.4 ; extra == 'all' + - pytest-xdist>=3.6.1 ; extra == 'all' + - python-calamine>=0.3.0 ; extra == 'all' + - pytz>=2024.2 ; extra == 'all' - pyxlsb>=1.0.10 ; extra == 'all' - - qtpy>=2.3.0 ; extra == 'all' - - scipy>=1.10.0 ; extra == 'all' - - s3fs>=2022.11.0 ; extra == 'all' - - sqlalchemy>=2.0.0 ; extra == 'all' - - tables>=3.8.0 ; extra == 'all' + - qtpy>=2.4.2 ; extra == 'all' + - scipy>=1.14.1 ; extra == 'all' + - s3fs>=2024.10.0 ; extra == 'all' + - sqlalchemy>=2.0.36 ; extra == 'all' + - tables>=3.10.1 ; extra == 'all' - tabulate>=0.9.0 ; extra == 'all' - - xarray>=2022.12.0 ; extra == 'all' + - xarray>=2024.10.0 ; extra == 'all' - xlrd>=2.0.1 ; extra == 'all' - - xlsxwriter>=3.0.5 ; extra == 'all' - - zstandard>=0.19.0 ; extra == 'all' - requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.0-pyhcf101f3_0.conda - sha256: 7efd51b48d908de2d75cbb3c4a2e80dd9454e1c5bb8191b261af3136f7fa5888 - md5: 5c7a868f8241e64e1cf5fdf4962f23e2 + - xlsxwriter>=3.2.0 ; extra == 'all' + - zstandard>=0.23.0 ; extra == 'all' + requires_python: '>=3.11' +- conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.5.1-pyhcf101f3_0.conda + sha256: 04c64fb78c520e5c396b6e07bc9082735a5cc28175dbe23138201d0a9441800b + md5: 1bd2e65c8c7ef24f4639ae6e850dacc2 depends: - python >=3.10 - python license: MIT + license_family: MIT purls: - - pkg:pypi/platformdirs?source=compressed-mapping - size: 23625 - timestamp: 1759953252315 -- conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhd8ed1ab_0.conda - sha256: a8eb555eef5063bbb7ba06a379fa7ea714f57d9741fe0efdb9442dbbc2cccbcc - md5: 7da7ccd349dbf6487a7778579d2bb971 + - pkg:pypi/platformdirs?source=hash-mapping + size: 23922 + timestamp: 1764950726246 +- conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda + sha256: e14aafa63efa0528ca99ba568eaf506eb55a0371d12e6250aaaa61718d2eb62e + md5: d7585b6550ad04c8c5e21097ada2888e depends: - python >=3.9 + - python license: MIT license_family: MIT purls: - - pkg:pypi/pluggy?source=hash-mapping - size: 24246 - timestamp: 1747339794916 -- conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.3.0-pyha770c72_0.conda - sha256: 66b6d429ab2201abaa7282af06b17f7631dcaafbc5aff112922b48544514b80a - md5: bc6c44af2a9e6067dd7e949ef10cdfba + - pkg:pypi/pluggy?source=compressed-mapping + size: 25877 + timestamp: 1764896838868 +- conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-4.5.1-pyha770c72_0.conda + sha256: 5b81b7516d4baf43d0c185896b245fa7384b25dc5615e7baa504b7fa4e07b706 + md5: 7f3ac694319c7eaf81a0325d6405e974 depends: - cfgv >=2.0.0 - identify >=1.0.0 - nodeenv >=0.11.1 - - python >=3.9 + - python >=3.10 - pyyaml >=5.1 - virtualenv >=20.10.0 license: MIT license_family: MIT purls: - pkg:pypi/pre-commit?source=hash-mapping - size: 195839 - timestamp: 1754831350570 -- conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.0-hb72c0af_0.conda - sha256: f1c5e1cc0de088fd3458009be68095f561fa74b5ca6293dcca266f1854d859df - md5: 438e75abf4d8c9c1d9e483b6c3f36282 + size: 200827 + timestamp: 1765937577534 +- conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.7.1-he0df7b0_3.conda + sha256: c94d3d8ef40d1ea018860d66c416003bc03adede7d212efc9218bb64041fe2f7 + md5: 031e33ae075b336c0ce92b14efa886c5 depends: + - sqlite + - libtiff + - libcurl - __glibc >=2.17,<3.0.a0 - - libcurl >=8.14.1,<9.0a0 - libgcc >=14 - - libsqlite >=3.50.4,<4.0a0 - libstdcxx >=14 - - libtiff >=4.7.0,<4.8.0a0 - - sqlite + - libtiff >=4.7.1,<4.8.0a0 + - libcurl >=8.18.0,<9.0a0 + - libsqlite >=3.51.2,<4.0a0 constrains: - proj4 ==999999999999 license: MIT - license_family: MIT purls: [] - size: 3259440 - timestamp: 1757929968903 -- conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.0-h3124640_0.conda - sha256: f8d45ec8e2a6ea58181a399a58f5e2f6ab6d25f772ba63ac08091e887498ab83 - md5: c952a9e5ecd52f6dfdb1b4e43e033893 + size: 3593669 + timestamp: 1770890751115 +- conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.7.1-h4aacef1_3.conda + sha256: 848b0393f363ab49169d9a7d4dccef15cb4b34cbdbc6365240dd7e70bd602173 + md5: 86a72148f2ace31569279a41c903f1be depends: - - __osx >=10.13 - - libcurl >=8.14.1,<9.0a0 - - libcxx >=19 - - libsqlite >=3.50.4,<4.0a0 - - libtiff >=4.7.0,<4.8.0a0 - sqlite + - libtiff + - libcurl + - libcxx >=19 + - __osx >=10.13 + - libcurl >=8.18.0,<9.0a0 + - libtiff >=4.7.1,<4.8.0a0 + - libsqlite >=3.51.2,<4.0a0 constrains: - proj4 ==999999999999 license: MIT - license_family: MIT purls: [] - size: 2918228 - timestamp: 1757930204492 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.0-hf83150c_0.conda - sha256: 350695d177ebc924ec1269fbb1c529734ee18584d19aa04061e7978c2a8a9fea - md5: 2022111c3d1d4ce1aaedb5fff3a247cf + size: 3235372 + timestamp: 1770890768263 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.7.1-hfb14a63_3.conda + sha256: 14484430a32a13cb9c03ebf3084a4ffb1feb417aa4c23907844fba219924058f + md5: 8f33a4a2b856de0e8f006c489beca62a depends: + - sqlite + - libtiff + - libcurl - __osx >=11.0 - - libcurl >=8.14.1,<9.0a0 - libcxx >=19 - - libsqlite >=3.50.4,<4.0a0 - - libtiff >=4.7.0,<4.8.0a0 - - sqlite + - libsqlite >=3.51.2,<4.0a0 + - libcurl >=8.18.0,<9.0a0 + - libtiff >=4.7.1,<4.8.0a0 constrains: - proj4 ==999999999999 license: MIT - license_family: MIT purls: [] - size: 2792592 - timestamp: 1757930357072 -- conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.0-h9080b7b_0.conda - sha256: 5f1b172b160bf2f1aea02752b52707f503a2522bcd560dd08205795082d96571 - md5: 0e7974e38102314107afaec3c37183a0 + size: 3098262 + timestamp: 1770890778843 +- conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.7.1-hd30e2cd_3.conda + sha256: 8ff06eae963bdc7580ccb246df911614e9a5a23683b26326df76b1b6f3258e94 + md5: f2b0478a02d35bac5b872d4d63b96be3 depends: - - libcurl >=8.14.1,<9.0a0 - - libsqlite >=3.50.4,<4.0a0 - - libtiff >=4.7.0,<4.8.0a0 - sqlite - - ucrt >=10.0.20348.0 + - libtiff + - libcurl - vc >=14.3,<15 - vc14_runtime >=14.44.35208 + - ucrt >=10.0.20348.0 + - libsqlite >=3.51.2,<4.0a0 + - libtiff >=4.7.1,<4.8.0a0 + - libcurl >=8.18.0,<9.0a0 constrains: - proj4 ==999999999999 license: MIT - license_family: MIT purls: [] - size: 2769241 - timestamp: 1757930535432 + size: 3084268 + timestamp: 1770890802564 - conda: https://conda.anaconda.org/conda-forge/linux-64/propcache-0.3.1-py313h8060acc_0.conda sha256: 49ec7b35291bff20ef8af0cf0a7dc1c27acf473bfbc121ccb816935b8bf33934 md5: b62867739241368f43f164889b45701b @@ -5603,103 +5646,103 @@ packages: - pkg:pypi/propcache?source=hash-mapping size: 50309 timestamp: 1744525393617 -- conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.26.1-pyhd8ed1ab_0.conda - sha256: 88217ba299be4a56c0534ccdef676390b76ca10b07ac26d16940d9a944d6212c - md5: 6fcfcf4432cd80d05ee9c6e20830bd36 +- conda: https://conda.anaconda.org/conda-forge/noarch/proto-plus-1.27.1-pyhd8ed1ab_0.conda + sha256: 0d91d1687ed442f9b8ffd6792cf3127529a088e020fac7915e0c40cc23be3037 + md5: c9b8e02d974817913ab94dae12c7340b depends: - protobuf >=3.19.0,<7.0.0 - - python >=3.9 + - python >=3.10 license: Apache-2.0 license_family: APACHE purls: - pkg:pypi/proto-plus?source=hash-mapping - size: 42466 - timestamp: 1741676252602 -- conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.31.1-py313h8c92afc_1.conda - sha256: f48b957cd8eeb56c5941d2fbdc2a7e2149ea4e34e37ecd91f72fa2b58b50a7b8 - md5: 25c02e049d36b8bc358dc9e2a81f174c + size: 43555 + timestamp: 1770104240191 +- conda: https://conda.anaconda.org/conda-forge/linux-64/protobuf-6.33.5-py313hf481762_0.conda + sha256: 0a10c3a3f2ba55d8b085e359a2ef9460dfdc8c4776f0a20407b2d2ded4c07e65 + md5: 0e3b4df10d26fa4b9effa4ee449825bc depends: - __glibc >=2.17,<3.0.a0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libgcc >=14 - libstdcxx >=14 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: - - libprotobuf 6.31.1 + - libprotobuf 6.33.5 license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/protobuf?source=hash-mapping - size: 485256 - timestamp: 1759564972768 -- conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.31.1-py313hc85ccdc_1.conda - sha256: 1c08e3c455b33a5d575a5a6d3bc801ef0c2c5ba5280bcd2f1c47d4b065d16582 - md5: 92045147ea45517d1781e7c78d9784e2 + size: 487571 + timestamp: 1769755517770 +- conda: https://conda.anaconda.org/conda-forge/osx-64/protobuf-6.33.5-py313hc1d2497_0.conda + sha256: 21f090bbd692a0eee958dc33122da9e6ddcc4407df79e7e5a669dc33463dafa5 + md5: 894ad63f567586dcdea465418fa773bc depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 constrains: - - libprotobuf 6.31.1 + - libprotobuf 6.33.5 license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/protobuf?source=hash-mapping - size: 469645 - timestamp: 1759565181776 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.31.1-py313he4076bf_1.conda - sha256: f700f8395160af8c60f933b42f6af620c34f10d41f36b03173b9d5d93cfd95fb - md5: eae9f4f765d6a31f476553d54bf742b7 + size: 474126 + timestamp: 1769755853869 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/protobuf-6.33.5-py313h0fe2d26_0.conda + sha256: 481ef0aa036c02d975ce12e67a982b6f9f4c7abc591b75c6a69014ee31f4e1de + md5: c5802f32474825f1f779c9bbf26a2d89 depends: - __osx >=11.0 - libabseil * cxx17* - - libabseil >=20250512.1,<20250513.0a0 + - libabseil >=20260107.0,<20260108.0a0 - libcxx >=19 - libzlib >=1.3.1,<2.0a0 - python >=3.13,<3.14.0a0 - python >=3.13,<3.14.0a0 *_cp313 - python_abi 3.13.* *_cp313 constrains: - - libprotobuf 6.31.1 + - libprotobuf 6.33.5 license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/protobuf?source=hash-mapping - size: 468045 - timestamp: 1759565795415 -- conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.31.1-py313h16c7a9f_1.conda - sha256: 4a19c9d1a6de18d437e492fbfbdac12c85882c248ea842d9ad44e0b1ae33bd1f - md5: 3180aa198709e8c5f0c6e6112fdf0b69 + size: 474976 + timestamp: 1769755576151 +- conda: https://conda.anaconda.org/conda-forge/win-64/protobuf-6.33.5-py313h16c7a9f_0.conda + sha256: dca220cd8a398fbf293ad44fcb2d7416ab9200b81a2e2099743ebb5ecca4d9ec + md5: 8105a89b0b22aa69553f6fc8030a66bd depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 - ucrt >=10.0.20348.0 - - vc >=14.2 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 constrains: - - libprotobuf 6.31.1 + - libprotobuf 6.33.5 license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/protobuf?source=hash-mapping - size: 487160 - timestamp: 1759565705539 -- pypi: https://files.pythonhosted.org/packages/38/61/f76959fba841bf5b61123fbf4b650886dc4094c6858008b5bf73d9057216/psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl + size: 494774 + timestamp: 1769756204809 +- pypi: https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl name: psutil - version: 7.1.0 - sha256: 5d007560c8c372efdff9e4579c2846d71de737e4605f611437255e81efcca2c5 + version: 7.2.2 + sha256: 1a7b04c10f32cc88ab39cbf606e117fd74721c831c98a27dc04578deb0c16979 requires_dist: + - psleak ; extra == 'dev' - pytest ; extra == 'dev' - pytest-instafail ; extra == 'dev' - - pytest-subtests ; extra == 'dev' - pytest-xdist ; extra == 'dev' - setuptools ; extra == 'dev' - abi3audit ; extra == 'dev' @@ -5718,30 +5761,32 @@ packages: - sphinx-rtd-theme ; extra == 'dev' - toml-sort ; extra == 'dev' - twine ; extra == 'dev' + - validate-pyproject[all] ; extra == 'dev' - virtualenv ; extra == 'dev' - vulture ; extra == 'dev' - wheel ; extra == 'dev' - - pyreadline ; os_name == 'nt' and extra == 'dev' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' + - colorama ; os_name == 'nt' and extra == 'dev' + - pyreadline3 ; os_name == 'nt' and extra == 'dev' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - psleak ; extra == 'test' - pytest ; extra == 'test' - pytest-instafail ; extra == 'test' - - pytest-subtests ; extra == 'test' - pytest-xdist ; extra == 'test' - setuptools ; extra == 'test' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' requires_python: '>=3.6' -- pypi: https://files.pythonhosted.org/packages/46/62/ce4051019ee20ce0ed74432dd73a5bb087a6704284a470bb8adff69a0932/psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl +- pypi: https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl name: psutil - version: 7.1.0 - sha256: 76168cef4397494250e9f4e73eb3752b146de1dd950040b29186d0cce1d5ca13 + version: 7.2.2 + sha256: eb7e81434c8d223ec4a219b5fc1c47d0417b12be7ea866e24fb5ad6e84b3d988 requires_dist: + - psleak ; extra == 'dev' - pytest ; extra == 'dev' - pytest-instafail ; extra == 'dev' - - pytest-subtests ; extra == 'dev' - pytest-xdist ; extra == 'dev' - setuptools ; extra == 'dev' - abi3audit ; extra == 'dev' @@ -5760,30 +5805,32 @@ packages: - sphinx-rtd-theme ; extra == 'dev' - toml-sort ; extra == 'dev' - twine ; extra == 'dev' + - validate-pyproject[all] ; extra == 'dev' - virtualenv ; extra == 'dev' - vulture ; extra == 'dev' - wheel ; extra == 'dev' - - pyreadline ; os_name == 'nt' and extra == 'dev' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' + - colorama ; os_name == 'nt' and extra == 'dev' + - pyreadline3 ; os_name == 'nt' and extra == 'dev' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - psleak ; extra == 'test' - pytest ; extra == 'test' - pytest-instafail ; extra == 'test' - - pytest-subtests ; extra == 'test' - pytest-xdist ; extra == 'test' - setuptools ; extra == 'test' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' requires_python: '>=3.6' -- pypi: https://files.pythonhosted.org/packages/9d/de/04c8c61232f7244aa0a4b9a9fbd63a89d5aeaf94b2fc9d1d16e2faa5cbb0/psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl +- pypi: https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl name: psutil - version: 7.1.0 - sha256: 8c70e113920d51e89f212dd7be06219a9b88014e63a4cec69b684c327bc474e3 + version: 7.2.2 + sha256: 076a2d2f923fd4821644f5ba89f059523da90dc9014e85f8e45a5774ca5bc6f9 requires_dist: + - psleak ; extra == 'dev' - pytest ; extra == 'dev' - pytest-instafail ; extra == 'dev' - - pytest-subtests ; extra == 'dev' - pytest-xdist ; extra == 'dev' - setuptools ; extra == 'dev' - abi3audit ; extra == 'dev' @@ -5802,30 +5849,32 @@ packages: - sphinx-rtd-theme ; extra == 'dev' - toml-sort ; extra == 'dev' - twine ; extra == 'dev' + - validate-pyproject[all] ; extra == 'dev' - virtualenv ; extra == 'dev' - vulture ; extra == 'dev' - wheel ; extra == 'dev' - - pyreadline ; os_name == 'nt' and extra == 'dev' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' + - colorama ; os_name == 'nt' and extra == 'dev' + - pyreadline3 ; os_name == 'nt' and extra == 'dev' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - psleak ; extra == 'test' - pytest ; extra == 'test' - pytest-instafail ; extra == 'test' - - pytest-subtests ; extra == 'test' - pytest-xdist ; extra == 'test' - setuptools ; extra == 'test' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' requires_python: '>=3.6' -- pypi: https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl +- pypi: https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl name: psutil - version: 7.1.0 - sha256: 57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d + version: 7.2.2 + sha256: ed0cace939114f62738d808fdcecd4c869222507e266e574799e9c0faa17d486 requires_dist: + - psleak ; extra == 'dev' - pytest ; extra == 'dev' - pytest-instafail ; extra == 'dev' - - pytest-subtests ; extra == 'dev' - pytest-xdist ; extra == 'dev' - setuptools ; extra == 'dev' - abi3audit ; extra == 'dev' @@ -5844,54 +5893,55 @@ packages: - sphinx-rtd-theme ; extra == 'dev' - toml-sort ; extra == 'dev' - twine ; extra == 'dev' + - validate-pyproject[all] ; extra == 'dev' - virtualenv ; extra == 'dev' - vulture ; extra == 'dev' - wheel ; extra == 'dev' - - pyreadline ; os_name == 'nt' and extra == 'dev' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'dev' + - colorama ; os_name == 'nt' and extra == 'dev' + - pyreadline3 ; os_name == 'nt' and extra == 'dev' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'dev' + - psleak ; extra == 'test' - pytest ; extra == 'test' - pytest-instafail ; extra == 'test' - - pytest-subtests ; extra == 'test' - pytest-xdist ; extra == 'test' - setuptools ; extra == 'test' - - pywin32 ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wheel ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' - - wmi ; os_name == 'nt' and platform_python_implementation != 'PyPy' and extra == 'test' + - pywin32 ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wheel ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' + - wmi ; implementation_name != 'pypy' and os_name == 'nt' and extra == 'test' requires_python: '>=3.6' -- pypi: https://files.pythonhosted.org/packages/73/56/63f27ec4e263a5f7f11a0630515938263fd9ba8227bda94136486b58e45d/py7zr-1.0.0-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/f0/9c/762284710ead9076eeecd55fb60509c19cd1f4bea811df5f3603725b44cb/py7zr-1.1.0-py3-none-any.whl name: py7zr - version: 1.0.0 - sha256: 6f42d2ff34c808e9026ad11b721c13b41b0673cf2b4e8f8fb34f9d65ae143dd1 + version: 1.1.0 + sha256: 5921bc30fb72b5453aafe3b2183664c08ef508cde2655988d5e9bd6078353ef7 requires_dist: - texttable - pycryptodomex>=3.20.0 - - brotli>=1.1.0 ; platform_python_implementation == 'CPython' - - brotlicffi>=1.1.0.0 ; platform_python_implementation == 'PyPy' + - brotli>=1.2.0 ; platform_python_implementation == 'CPython' + - brotlicffi>=1.2.0.0 ; platform_python_implementation == 'PyPy' - psutil ; sys_platform != 'cygwin' - - pyzstd>=0.16.1 - - pyppmd>=1.1.0,<1.3.0 - - pybcj>=1.0.0,<1.1.0 + - backports-zstd>=1.0.0 ; python_full_version < '3.14' + - pyppmd>=1.3.1 + - pybcj>=1.0.6 - multivolumefile>=0.2.3 - - inflate64>=1.0.0,<1.1.0 - - libarchive-c ; extra == 'test-compat' + - inflate64>=1.0.4 - pytest ; extra == 'test' - pytest-benchmark ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-remotedata ; extra == 'test' - pytest-timeout ; extra == 'test' - py-cpuinfo ; extra == 'test' - - coverage[toml]>=5.2 ; extra == 'test' - - coveralls>=2.1.1 ; extra == 'test' + - coverage[toml]>=7.10.7 ; extra == 'test' + - coveralls>=4.0.2 ; extra == 'test' - requests ; extra == 'test' - pytest-httpserver ; extra == 'test' - - sphinx>=7.0.0 ; extra == 'docs' + - sphinx>=8.0.0 ; extra == 'docs' - sphinx-py3doc-enhanced-theme ; extra == 'docs' - sphinx-a4doc ; extra == 'docs' - docutils ; extra == 'docs' - - mypy>=1.10.0 ; extra == 'check' - - mypy-extensions>=1.0.0 ; extra == 'check' + - mypy>=1.17.0 ; extra == 'check' + - mypy-extensions>=1.1.0 ; extra == 'check' - lxml ; extra == 'check' - types-psutil ; extra == 'check' - check-manifest ; extra == 'check' @@ -5899,16 +5949,16 @@ packages: - flake8-black>=0.3.6 ; extra == 'check' - flake8-deprecated ; extra == 'check' - flake8-isort ; extra == 'check' - - isort>=5.13.2 ; extra == 'check' + - isort>=7.0.0 ; extra == 'check' - pygments ; extra == 'check' - readme-renderer ; extra == 'check' - twine ; extra == 'check' - - black>=24.8.0 ; extra == 'check' + - black>=25.1.0 ; extra == 'check' - pylint ; extra == 'check' - pytest ; extra == 'debug' - pytest-leaks ; extra == 'debug' - pytest-profiling ; extra == 'debug' - requires_python: '>=3.9' + requires_python: '>=3.10' - pypi: https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl name: pyarrow version: 21.0.0 @@ -5953,17 +6003,17 @@ packages: - pytz ; extra == 'test' - pandas ; extra == 'test' requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.1-pyhd8ed1ab_2.conda - sha256: d06051df66e9ab753683d7423fcef873d78bb0c33bd112c3d5be66d529eddf06 - md5: 09bb17ed307ad6ab2fd78d32372fdd4e +- conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-0.6.2-pyhd8ed1ab_0.conda + sha256: 2b6e22e97af814153c0a993ea66811de9db05b2a6946dcb97a3953af13c33a80 + md5: c203d401759f448f9e792974e055bcdc depends: - - python >=3.9 + - python >=3.10 license: BSD-2-Clause license_family: BSD purls: - - pkg:pypi/pyasn1?source=hash-mapping - size: 62230 - timestamp: 1733217699113 + - pkg:pypi/pyasn1?source=compressed-mapping + size: 63471 + timestamp: 1769186345593 - conda: https://conda.anaconda.org/conda-forge/noarch/pyasn1-modules-0.4.2-pyhd8ed1ab_0.conda sha256: 5495061f5d3d6b82b74d400273c586e7c1f1700183de1d2d1688e900071687cb md5: c689b62552f6b63f32f3322e463f3805 @@ -5976,10 +6026,10 @@ packages: - pkg:pypi/pyasn1-modules?source=hash-mapping size: 95990 timestamp: 1743436137965 -- pypi: https://files.pythonhosted.org/packages/0d/ab/e04befe57175c0ef6f00368263e17ef79dadfaf633057dcd13711ef06678/pybcj-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl +- pypi: https://files.pythonhosted.org/packages/47/e5/68bffbc87581ea96bb4aea623d8cd085786f36d5b912ed8d9bade3265110/pybcj-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl name: pybcj - version: 1.0.6 - sha256: 69a841ca0d3df978a2145488cec58460fa4604395321178ba421384cff26062f + version: 1.0.7 + sha256: 60baaf9f0da31438515a401145f920f75f2ec7d511165bbf57475467af72a3e6 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-cov ; extra == 'test' @@ -5987,7 +6037,7 @@ packages: - coverage[toml]>=5.2 ; extra == 'test' - mypy>=1.10.0 ; extra == 'check' - check-manifest ; extra == 'check' - - flake8<5 ; extra == 'check' + - flake8<8 ; extra == 'check' - flake8-black ; extra == 'check' - flake8-colors ; extra == 'check' - flake8-isort ; extra == 'check' @@ -5995,11 +6045,11 @@ packages: - flake8-typing-imports ; extra == 'check' - readme-renderer ; extra == 'check' - pygments ; extra == 'check' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/52/21/df6e5cb6c918d5321a4db241be78fd71d5d18561a4458eec5757b0b6a1b2/pybcj-1.0.6-cp313-cp313-win_amd64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/5c/71/a0d58633236783028c08e585b3c4f4715a4286970b4ec4a25acfe23794f1/pybcj-1.0.7-cp313-cp313-win_amd64.whl name: pybcj - version: 1.0.6 - sha256: caefc3109bf172ad37b52e21dc16c84cf495b2ea2890cc7256cdf0188914508d + version: 1.0.7 + sha256: ebcce9b419fe5d3109150a1fab0fc93a64d5cd812ca44c5ddb7d4f7128ea369f requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-cov ; extra == 'test' @@ -6007,7 +6057,7 @@ packages: - coverage[toml]>=5.2 ; extra == 'test' - mypy>=1.10.0 ; extra == 'check' - check-manifest ; extra == 'check' - - flake8<5 ; extra == 'check' + - flake8<8 ; extra == 'check' - flake8-black ; extra == 'check' - flake8-colors ; extra == 'check' - flake8-isort ; extra == 'check' @@ -6015,11 +6065,11 @@ packages: - flake8-typing-imports ; extra == 'check' - readme-renderer ; extra == 'check' - pygments ; extra == 'check' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/8d/b2/e658bf56f4d04a83b366128920fbda93024dee851f134660491b8cc97863/pybcj-1.0.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/86/43/2ce282501a39f32f27cef2a3ee11c621f9d5348da4441d2326f2fcc9b17e/pybcj-1.0.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl name: pybcj - version: 1.0.6 - sha256: 57757bc382f326bd93eb277a9edfc8dff6c22f480da467f0c5a5d63b9d092a41 + version: 1.0.7 + sha256: 029112255c22de66e0117bec932c8be341ed20c56dcf6a961c14689f7f0ce772 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-cov ; extra == 'test' @@ -6027,7 +6077,7 @@ packages: - coverage[toml]>=5.2 ; extra == 'test' - mypy>=1.10.0 ; extra == 'check' - check-manifest ; extra == 'check' - - flake8<5 ; extra == 'check' + - flake8<8 ; extra == 'check' - flake8-black ; extra == 'check' - flake8-colors ; extra == 'check' - flake8-isort ; extra == 'check' @@ -6035,11 +6085,11 @@ packages: - flake8-typing-imports ; extra == 'check' - readme-renderer ; extra == 'check' - pygments ; extra == 'check' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/c2/aa/25877ccb48f638c5cef205ed8185848e7daff53f152cdd6e014ceee86753/pybcj-1.0.6-cp313-cp313-macosx_11_0_arm64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/ed/ad/718d6daa0d5e15e2131301220eaefbf6bc8cd0c90791c5ac18c893be111a/pybcj-1.0.7-cp313-cp313-macosx_11_0_arm64.whl name: pybcj - version: 1.0.6 - sha256: 887521da03302c96048803490073bd0423ff408a3adca2543c6ee86bc0af7578 + version: 1.0.7 + sha256: b9c6e726618c3d43c730df5a4067fc19653b360f89c2f72f4323dae10d324552 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-cov ; extra == 'test' @@ -6047,7 +6097,7 @@ packages: - coverage[toml]>=5.2 ; extra == 'test' - mypy>=1.10.0 ; extra == 'check' - check-manifest ; extra == 'check' - - flake8<5 ; extra == 'check' + - flake8<8 ; extra == 'check' - flake8-black ; extra == 'check' - flake8-colors ; extra == 'check' - flake8-isort ; extra == 'check' @@ -6055,7 +6105,7 @@ packages: - flake8-typing-imports ; extra == 'check' - readme-renderer ; extra == 'check' - pygments ; extra == 'check' - requires_python: '>=3.9' + requires_python: '>=3.10' - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda sha256: 79db7928d13fab2d892592223d7570f5061c192f27b9febd1a418427b719acc6 md5: 12c566707c80111f9799308d9e265aef @@ -6099,93 +6149,93 @@ packages: - pkg:pypi/pygments?source=hash-mapping size: 889287 timestamp: 1750615908735 -- conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.10.1-pyhd8ed1ab_0.conda - sha256: 158d8911e873e2a339c27768933747bf9c2aec1caa038f1b7b38a011734a956f - md5: 84c5c40ea7c5bbc6243556e5daed20e7 +- conda: https://conda.anaconda.org/conda-forge/noarch/pyjwt-2.11.0-pyhd8ed1ab_0.conda + sha256: ac605d7fa239f78c508b47f2a0763236eef8d52b53852b84d784b598f92a1573 + md5: f9517d2fe1501919d7a236aba73409bb depends: - - python >=3.9 + - python >=3.10 constrains: - cryptography >=3.4.0 license: MIT license_family: MIT purls: - pkg:pypi/pyjwt?source=hash-mapping - size: 25093 - timestamp: 1732782523102 -- pypi: https://files.pythonhosted.org/packages/20/bc/34bd87641fc2ecc6d842d6d758bbaa8d58aea4d36aa6a1111cbc9d450e74/pyogrio-0.11.1-cp313-cp313-macosx_12_0_x86_64.whl + size: 30144 + timestamp: 1769858771741 +- pypi: https://files.pythonhosted.org/packages/46/35/b874f79d03e9f900012cf609f7fff97b77164f2e14ee5aac282f8a999c1b/pyogrio-0.12.1-cp313-cp313-manylinux_2_28_x86_64.whl name: pyogrio - version: 0.11.1 - sha256: 1cb82cfd3493f32396e9c3f9255e17885610f62a323870947f4e04dd59bc3595 + version: 0.12.1 + sha256: 0622bc1a186421547660271083079b38d42e6f868802936d8538c0b379f1ab6b requires_dist: - certifi - numpy - packaging - - cython ; extra == 'dev' + - cython>=3.1 ; extra == 'dev' - pytest ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-benchmark ; extra == 'benchmark' - geopandas ; extra == 'geopandas' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/2b/f3/7722bc81e9eee39b528c1cbc6289a26d2d3b1b187491ed8493457d6a3a0e/pyogrio-0.11.1-cp313-cp313-win_amd64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/66/ac/5559f8a35d58a16cbb2dd7602dd11936ff8796d8c9bf789f14da88764ec3/pyogrio-0.12.1-cp313-cp313-macosx_12_0_x86_64.whl name: pyogrio - version: 0.11.1 - sha256: d6d56862b89a05fccd7211171c88806b6ec9b5effb79bf807cce0a57c1f2a606 + version: 0.12.1 + sha256: b4c888fc08f388be4dd99dfca5e84a5cdc5994deeec0230cc45144d3460e2b21 requires_dist: - certifi - numpy - packaging - - cython ; extra == 'dev' + - cython>=3.1 ; extra == 'dev' - pytest ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-benchmark ; extra == 'benchmark' - geopandas ; extra == 'geopandas' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/89/a9/79eca15094f7806a3adcf0bb976ab4346b0fb1bd87956c1933df44546c14/pyogrio-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/be/56/f56e79f71b84aa9bea25fdde39fab3846841bd7926be96f623eb7253b7e1/pyogrio-0.12.1-cp313-cp313-macosx_12_0_arm64.whl name: pyogrio - version: 0.11.1 - sha256: e929452f6988c0365dd32ff2485d9488160a709fee28743abbbc18d663169ed0 + version: 0.12.1 + sha256: ec0e47a5a704e575092b2fd5c83fa0472a1d421e590f94093eb837bb0a11125d requires_dist: - certifi - numpy - packaging - - cython ; extra == 'dev' + - cython>=3.1 ; extra == 'dev' - pytest ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-benchmark ; extra == 'benchmark' - geopandas ; extra == 'geopandas' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/f2/68/86328e36d010ee565ce0c65cdf9b830afcb1fb5972f537fe1cc561a49247/pyogrio-0.11.1-cp313-cp313-macosx_12_0_arm64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl name: pyogrio - version: 0.11.1 - sha256: 3b368c597357ff262f3b46591ded86409462ee594ef42556708b090d121f873c + version: 0.12.1 + sha256: 207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613 requires_dist: - certifi - numpy - packaging - - cython ; extra == 'dev' + - cython>=3.1 ; extra == 'dev' - pytest ; extra == 'test' - pytest-cov ; extra == 'test' - pytest-benchmark ; extra == 'benchmark' - geopandas ; extra == 'geopandas' - requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.1.0-pyhd8ed1ab_0.conda - sha256: 0d7a8ebdfff0f579a64a95a94cf280ec2889d6c52829a9dbbd3ea9eef02c2f6f - md5: 63d6393b45f33dc0782d73f6d8ae36a0 + requires_python: '>=3.10' +- conda: https://conda.anaconda.org/conda-forge/noarch/pyopenssl-25.3.0-pyhd8ed1ab_0.conda + sha256: e3a1216bbc4622ac4dfd36c3f8fd3a90d800eebc9147fa3af7eab07d863516b3 + md5: ddf01a1d87103a152f725c7aeabffa29 depends: - - cryptography >=41.0.5,<46 - - python >=3.9 + - cryptography >=45.0.7,<47 + - python >=3.10 - typing-extensions >=4.9 - typing_extensions >=4.9 license: Apache-2.0 license_family: Apache purls: - pkg:pypi/pyopenssl?source=hash-mapping - size: 123256 - timestamp: 1747560884456 -- pypi: https://files.pythonhosted.org/packages/0b/ae/4b0a4fe34f91cce15aa086a3d374ee21f8261445fe935bc835d6d8ba75bb/pyppmd-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + size: 126393 + timestamp: 1760304658366 +- pypi: https://files.pythonhosted.org/packages/45/82/8c5d3f0f738a3cf5c209d1471efda105a16417c0aaa91a2ad39efb3d4efb/pyppmd-1.3.1-cp313-cp313-macosx_11_0_arm64.whl name: pyppmd - version: 1.2.0 - sha256: 38e3835a1951d18dd273000c870a4eb2804c20c400aa3c72231449f300cedf19 + version: 1.3.1 + sha256: e8d372d9fac382183e0371cf0c2d736b494b1857a1befe98d563342b1205265b requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-benchmark ; extra == 'test' @@ -6204,11 +6254,11 @@ packages: - sphinx-rtd-theme ; extra == 'docs' - atheris ; extra == 'fuzzer' - hypothesis ; extra == 'fuzzer' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/58/46/4554bc202b4ec0307de72aeb3b7ea6e8585f102d832b2d22ab0e8fc0c3ee/pyppmd-1.2.0-cp313-cp313-win_amd64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/64/fd/673d429df719affa1445611288aab6111c0bc87e51eb4677fe2421a1dd64/pyppmd-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl name: pyppmd - version: 1.2.0 - sha256: 625896f5da7038fe7145907b68b0b58f7c13b88ad6bbfdc1c20c05654c17fa6c + version: 1.3.1 + sha256: bd00522ddfcc292304577386b6c217758c0c10e1fb9ce7877ad7d3b7b821a808 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-benchmark ; extra == 'test' @@ -6227,11 +6277,11 @@ packages: - sphinx-rtd-theme ; extra == 'docs' - atheris ; extra == 'fuzzer' - hypothesis ; extra == 'fuzzer' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/da/aa/7f8198de419bff405aa77c444fbf9d300ce86cc4889e91101669439c616d/pyppmd-1.2.0-cp313-cp313-macosx_11_0_arm64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/6c/6d/311d8faca142f39b4d158c94ed7eb237a197d41dd7eb67f53442a7904e04/pyppmd-1.3.1-cp313-cp313-win_amd64.whl name: pyppmd - version: 1.2.0 - sha256: d437881763ffd0d19079402f50e7f4aad5895e3cd5312d095edef0b32dac3aef + version: 1.3.1 + sha256: df8d84ab72381058a964ba66e5e81ed52dbd0b5ad734a5ef8353452983506098 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-benchmark ; extra == 'test' @@ -6250,11 +6300,11 @@ packages: - sphinx-rtd-theme ; extra == 'docs' - atheris ; extra == 'fuzzer' - hypothesis ; extra == 'fuzzer' - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/f6/b8/fb8de2664cabc12621b6eed4bb9783b41336e72e0f76ebce42e3e9f58728/pyppmd-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/dd/02/caf6305224b9432ea7373670d101392f620c1ce741d6f95458b1fb9a16a4/pyppmd-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl name: pyppmd - version: 1.2.0 - sha256: 6dc00f0ce9f79e1c1c87d9998220a714ab8216873b6c996776b88ab23efe05ac + version: 1.3.1 + sha256: b8b5c813e462c91048b88e2adfbcc0c69f2c905f70097001d32066f86f675bd4 requires_dist: - pytest>=6.0 ; extra == 'test' - pytest-benchmark ; extra == 'test' @@ -6273,7 +6323,7 @@ packages: - sphinx-rtd-theme ; extra == 'docs' - atheris ; extra == 'fuzzer' - hypothesis ; extra == 'fuzzer' - requires_python: '>=3.9' + requires_python: '>=3.10' - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.7.2-py313h77f6078_2.conda sha256: a37cabb43cf5d73bacd0c20856374561dde9f0025c4a189593d961057ba4a17d md5: 42d11c7d1ac21ae2085f58353641e71c @@ -6368,26 +6418,27 @@ packages: - pkg:pypi/pysocks?source=hash-mapping size: 21085 timestamp: 1733217331982 -- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhd8ed1ab_0.conda - sha256: 41053d9893e379a3133bb9b557b98a3d2142fca474fb6b964ba5d97515f78e2d - md5: 1f987505580cb972cf28dc5f74a0f81b +- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.4.2-pyhcf101f3_1.conda + sha256: 39f41a52eb6f927caf5cd42a2ff98a09bb850ce9758b432869374b6253826962 + md5: da0c42269086f5170e2b296878ec13a6 depends: - - colorama >=0.4 - - exceptiongroup >=1 + - pygments >=2.7.2 + - python >=3.10 - iniconfig >=1 - packaging >=20 - pluggy >=1.5,<2 - - pygments >=2.7.2 - - python >=3.10 - tomli >=1 + - colorama >=0.4 + - exceptiongroup >=1 + - python constrains: - pytest-faulthandler >=2 license: MIT license_family: MIT purls: - - pkg:pypi/pytest?source=compressed-mapping - size: 276734 - timestamp: 1757011891753 + - pkg:pypi/pytest?source=hash-mapping + size: 294852 + timestamp: 1762354779909 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-6.3.0-pyhd8ed1ab_0.conda sha256: 5ba3e0955e473234fcc38cb4f0d893135710ec85ccb1dffdd73d9b213e99e8fb md5: 50d191b852fccb4bf9ab7b59b030c99d @@ -6403,94 +6454,94 @@ packages: - pkg:pypi/pytest-cov?source=hash-mapping size: 28806 timestamp: 1757200686993 -- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.7-h2b335a9_100_cp313.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.13.12-hc97d973_100_cp313.conda build_number: 100 - sha256: 16cc30a5854f31ca6c3688337d34e37a79cdc518a06375fe3482ea8e2d6b34c8 - md5: 724dcf9960e933838247971da07fe5cf + sha256: 8a08fe5b7cb5a28aa44e2994d18dbf77f443956990753a4ca8173153ffb6eb56 + md5: 4c875ed0e78c2d407ec55eadffb8cf3d depends: - __glibc >=2.17,<3.0.a0 - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-64 >=2.36.1 - - libexpat >=2.7.1,<3.0a0 - - libffi >=3.4.6,<3.5.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 - libgcc >=14 - - liblzma >=5.8.1,<6.0a0 + - liblzma >=5.8.2,<6.0a0 - libmpdec >=4.0.0,<5.0a0 - - libsqlite >=3.50.4,<4.0a0 - - libuuid >=2.38.1,<3.0a0 + - libsqlite >=3.51.2,<4.0a0 + - libuuid >=2.41.3,<3.0a0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - openssl >=3.5.2,<4.0a0 + - openssl >=3.5.5,<4.0a0 - python_abi 3.13.* *_cp313 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata license: Python-2.0 purls: [] - size: 33583088 - timestamp: 1756911465277 + size: 37364553 + timestamp: 1770272309861 python_site_packages_path: lib/python3.13/site-packages -- conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.7-h5eba815_100_cp313.conda +- conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.13.12-h894a449_100_cp313.conda build_number: 100 - sha256: 581e4db7462c383fbb64d295a99a3db73217f8c24781cbe7ab583ff9d0305968 - md5: 1759e1c9591755521bd50489756a599d + sha256: 9548dcf58cf6045aa4aa1f2f3fa6110115ca616a8d5fa142a24081d2b9d91291 + md5: 99b1fa1fe8a8ab58224969f4568aadca depends: - __osx >=10.13 - bzip2 >=1.0.8,<2.0a0 - - libexpat >=2.7.1,<3.0a0 - - libffi >=3.4.6,<3.5.0a0 - - liblzma >=5.8.1,<6.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 - libmpdec >=4.0.0,<5.0a0 - - libsqlite >=3.50.4,<4.0a0 + - libsqlite >=3.51.2,<4.0a0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - openssl >=3.5.2,<4.0a0 + - openssl >=3.5.5,<4.0a0 - python_abi 3.13.* *_cp313 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata license: Python-2.0 purls: [] - size: 12575616 - timestamp: 1756911460182 + size: 17570178 + timestamp: 1770272361922 python_site_packages_path: lib/python3.13/site-packages -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.7-h5c937ed_100_cp313.conda +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.13.12-h20e6be0_100_cp313.conda build_number: 100 - sha256: b9776cc330fa4836171a42e0e9d9d3da145d7702ba6ef9fad45e94f0f016eaef - md5: 445d057271904b0e21e14b1fa1d07ba5 + sha256: 9a4f16a64def0853f0a7b6a7beb40d498fd6b09bee10b90c3d6069b664156817 + md5: 179c0f5ae4f22bc3be567298ed0b17b9 depends: - __osx >=11.0 - bzip2 >=1.0.8,<2.0a0 - - libexpat >=2.7.1,<3.0a0 - - libffi >=3.4.6,<3.5.0a0 - - liblzma >=5.8.1,<6.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 - libmpdec >=4.0.0,<5.0a0 - - libsqlite >=3.50.4,<4.0a0 + - libsqlite >=3.51.2,<4.0a0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - openssl >=3.5.2,<4.0a0 + - openssl >=3.5.5,<4.0a0 - python_abi 3.13.* *_cp313 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata license: Python-2.0 purls: [] - size: 11926240 - timestamp: 1756909724811 + size: 12770674 + timestamp: 1770272314517 python_site_packages_path: lib/python3.13/site-packages -- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.7-hdf00ec1_100_cp313.conda +- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.13.12-h09917c8_100_cp313.conda build_number: 100 - sha256: b86b5b3a960de2fff0bb7e0932b50846b22b75659576a257b1872177aab444cd - md5: 7cd6ebd1a32d4a5d99f8f8300c2029d5 + sha256: da70aec20ff5a5ae18bbba9fdd1e18190b419605cafaafb3bdad8becf11ce94d + md5: 4440c24966d0aa0c8f1e1d5006dac2d6 depends: - bzip2 >=1.0.8,<2.0a0 - - libexpat >=2.7.1,<3.0a0 - - libffi >=3.4.6,<3.5.0a0 - - liblzma >=5.8.1,<6.0a0 + - libexpat >=2.7.3,<3.0a0 + - libffi >=3.5.2,<3.6.0a0 + - liblzma >=5.8.2,<6.0a0 - libmpdec >=4.0.0,<5.0a0 - - libsqlite >=3.50.4,<4.0a0 + - libsqlite >=3.51.2,<4.0a0 - libzlib >=1.3.1,<2.0a0 - - openssl >=3.5.2,<4.0a0 + - openssl >=3.5.5,<4.0a0 - python_abi 3.13.* *_cp313 - tk >=8.6.13,<8.7.0a0 - tzdata @@ -6499,8 +6550,8 @@ packages: - vc14_runtime >=14.44.35208 license: Python-2.0 purls: [] - size: 16386672 - timestamp: 1756909324921 + size: 16535316 + timestamp: 1770270322707 python_site_packages_path: Lib/site-packages - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda sha256: d6a17ece93bbd5139e02d2bd7dbfa80bee1a4261dced63f65f679121686bf664 @@ -6526,10 +6577,6 @@ packages: purls: [] size: 7002 timestamp: 1752805902938 -- pypi: https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl - name: pytz - version: '2025.2' - sha256: 5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 - conda: https://conda.anaconda.org/conda-forge/noarch/pyu2f-0.1.5-pyhd8ed1ab_1.conda sha256: 991caa5408aea018488a2c94e915c11792b9321b0ef64401f4829ebd0abfb3c0 md5: 644bd4ca9f68ef536b902685d773d697 @@ -6542,9 +6589,9 @@ packages: - pkg:pypi/pyu2f?source=hash-mapping size: 36786 timestamp: 1733738704089 -- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_0.conda - sha256: 40dcd6718dce5fbee8aabdd0519f23d456d8feb2e15ac352eaa88bbfd3a881af - md5: 4794ea0adaebd9f844414e594b142cb2 +- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py313h3dea7bd_1.conda + sha256: ef7df29b38ef04ec67a8888a4aa039973eaa377e8c4b59a7be0a1c50cd7e4ac6 + md5: f256753e840c3cd3766488c9437a8f8b depends: - __glibc >=2.17,<3.0.a0 - libgcc >=14 @@ -6555,11 +6602,11 @@ packages: license_family: MIT purls: - pkg:pypi/pyyaml?source=compressed-mapping - size: 207109 - timestamp: 1758892173548 -- conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h0f4d31d_0.conda - sha256: 8420815e10d455b012db39cb7dc0d86f0ac3a287d5a227892fa611fe3d467df9 - md5: e0c9e257970870212c449106964a5ace + size: 201616 + timestamp: 1770223543730 +- conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.3-py313h7c6a591_1.conda + sha256: ab5f6c27d24facd1832481ccd8f432c676472d57596a3feaa77880a1462cdb2a + md5: 0eaf6cf9939bb465ee62b17d04254f9e depends: - __osx >=10.13 - python >=3.13,<3.14.0a0 @@ -6568,12 +6615,12 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/pyyaml?source=hash-mapping - size: 193608 - timestamp: 1758892017635 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h7d74516_0.conda - sha256: f5be0d84f72a567b7333b9efa74a65bfa44a25658cf107ffa3fc65d3ae6660d7 - md5: 0e8e3235217b4483a7461b63dca5826b + - pkg:pypi/pyyaml?source=compressed-mapping + size: 192051 + timestamp: 1770223971430 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.3-py313h65a2061_1.conda + sha256: 950725516f67c9691d81bb8dde8419581c5332c5da3da10c9ba8cbb1698b825d + md5: 5d0c8b92128c93027632ca8f8dc1190f depends: - __osx >=11.0 - python >=3.13,<3.14.0a0 @@ -6583,12 +6630,12 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/pyyaml?source=hash-mapping - size: 191630 - timestamp: 1758892258120 -- conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_0.conda - sha256: 5d9fd32d318b9da615524589a372b33a6f3d07db2708de16570d70360bf638c2 - md5: c067122d76f8dcbe0848822942ba07be + - pkg:pypi/pyyaml?source=compressed-mapping + size: 188763 + timestamp: 1770224094408 +- conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.3-py313hd650c13_1.conda + sha256: dfaed50de8ee72a51096163b87631921688851001e38c78a841eba1ae8b35889 + md5: c1bdb8dd255c79fb9c428ad25cc6ee54 depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -6600,138 +6647,114 @@ packages: license_family: MIT purls: - pkg:pypi/pyyaml?source=compressed-mapping - size: 182043 - timestamp: 1758892011955 -- pypi: https://files.pythonhosted.org/packages/64/73/28bc86e284ca5e5ea082641748f2a583c9db8744dbf2c28d54e85e101114/pyzstd-0.18.0-cp313-cp313-macosx_11_0_arm64.whl - name: pyzstd - version: 0.18.0 - sha256: 8550efbfb5944343666d0e79d6a3687adcbeb4dbf17aa743146a25e72d12d47f - requires_dist: - - typing-extensions>=4.13.2 ; python_full_version < '3.13' - requires_python: '>=3.5' -- pypi: https://files.pythonhosted.org/packages/a5/8e/3f6f445ee23864988ae3cfd6cebd3fe79dd42dbaa50538275928082e3df8/pyzstd-0.18.0-cp313-cp313-win_amd64.whl - name: pyzstd - version: 0.18.0 - sha256: 98f43488f88b859291d6bdc51cc7793d1eab17aa9382b17d762944bbb8567c98 - requires_dist: - - typing-extensions>=4.13.2 ; python_full_version < '3.13' - requires_python: '>=3.5' -- pypi: https://files.pythonhosted.org/packages/de/16/8540b868a5b0fa9eaf743856f86088e3cac8477fbf2339e76c5c973622cc/pyzstd-0.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl - name: pyzstd - version: 0.18.0 - sha256: b42529770febd331e23c5e8a68e9899acb0cc0806ee4c970354806c0ceeec6c7 - requires_dist: - - typing-extensions>=4.13.2 ; python_full_version < '3.13' - requires_python: '>=3.5' -- pypi: https://files.pythonhosted.org/packages/f5/55/9e200f8ad193bb9d060cd724a8f876e40be918eece578c46c33cab336cf4/pyzstd-0.18.0-cp313-cp313-macosx_10_13_x86_64.whl - name: pyzstd - version: 0.18.0 - sha256: 65117997d1e10e9b41336c90c2c4877c8d27533f753272805ff39df15fd5298a - requires_dist: - - typing-extensions>=4.13.2 ; python_full_version < '3.13' - requires_python: '>=3.5' + size: 180992 + timestamp: 1770223457761 - pypi: https://files.pythonhosted.org/packages/62/fc/ab37559419ca36dd8dd317c3a98395ed4dcee2beeb28bf6059b972906727/rarfile-4.2-py3-none-any.whl name: rarfile version: '4.2' sha256: 8757e1e3757e32962e229cab2432efc1f15f210823cc96ccba0f6a39d17370c9 requires_python: '>=3.6' -- conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.08.12-h5301d42_1.conda - sha256: 9b9e736254d2794e557be60569f67e416a494d3a55c13b21398fd0346bcf2d8b - md5: 4637c13ff87424af0f6a981ab6f5ffa5 +- conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2025.11.05-h5301d42_1.conda + sha256: 3fc684b81631348540e9a42f6768b871dfeab532d3f47d5c341f1f83e2a2b2b2 + md5: 66a715bc01c77d43aca1f9fcb13dde3c depends: - - libre2-11 2025.08.12 h7b12aa8_1 + - libre2-11 2025.11.05 h0dc7533_1 license: BSD-3-Clause license_family: BSD purls: [] - size: 27303 - timestamp: 1757447492040 -- conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.08.12-h7df6414_1.conda - sha256: e04034a4fa2f3bd48ef55b0bab3d412e9af5477b164dbb94ca3f2e3e71c1e033 - md5: 04af05658ce04ad8244678976cb05e40 + size: 27469 + timestamp: 1768190052132 +- conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2025.11.05-h77e0585_1.conda + sha256: 1aeb9a9554cc719d454ad6158afbb0c249973fa4ee1d782d7e40cbec1de9b061 + md5: b2cc31f114e4487d24e5617e62a24017 depends: - - libre2-11 2025.08.12 h554ac88_1 + - libre2-11 2025.11.05 h6e8c311_1 license: BSD-3-Clause license_family: BSD purls: [] - size: 27388 - timestamp: 1757448040479 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.08.12-h64b956e_1.conda - sha256: 762dd52b3ae7325d640625e51c67e2add523b92a2802cc653b1af1135b754421 - md5: 8a3cabaa7498d1c7d0bd3b92693a7edd + size: 27447 + timestamp: 1768190352348 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2025.11.05-ha480c28_1.conda + sha256: 5bab972e8f2bff1b5b3574ffec8ecb89f7937578bd107584ed3fde507ff132f9 + md5: a1ff22f664b0affa3de712749ccfbf04 depends: - - libre2-11 2025.08.12 h91c62da_1 + - libre2-11 2025.11.05 h4c27e2a_1 license: BSD-3-Clause license_family: BSD purls: [] - size: 27466 - timestamp: 1757447874115 -- conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.08.12-ha104f34_1.conda - sha256: fc1d5995526797872c14c32f7d295e80d80083858650c57a352f76c6f78d0af5 - md5: e8c86798a0f7b4b61f9e652c0d0a37ae + size: 27445 + timestamp: 1768190259003 +- conda: https://conda.anaconda.org/conda-forge/win-64/re2-2025.11.05-ha104f34_1.conda + sha256: 345b1ed8288d81510101f886aaf547e3294370e5dab340c4c3fcb0b25e5d99e0 + md5: 6807f05dcf3f1736ad6cc9525b8b8725 depends: - - libre2-11 2025.08.12 h0eb2380_1 + - libre2-11 2025.11.05 h04e5de1_1 license: BSD-3-Clause license_family: BSD purls: [] - size: 217364 - timestamp: 1757448079316 -- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda - sha256: 2d6d0c026902561ed77cd646b5021aef2d4db22e57a5b0178dfc669231e06d2c - md5: 283b96675859b20a825f8fa30f311446 + size: 220305 + timestamp: 1768190225351 +- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda + sha256: 12ffde5a6f958e285aa22c191ca01bbd3d6e710aa852e00618fa6ddc59149002 + md5: d7d95fc8287ea7bf33e0e7116d2b95ec depends: - - libgcc >=13 + - __glibc >=2.17,<3.0.a0 + - libgcc >=14 - ncurses >=6.5,<7.0a0 license: GPL-3.0-only license_family: GPL purls: [] - size: 282480 - timestamp: 1740379431762 -- conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda - sha256: 53017e80453c4c1d97aaf78369040418dea14cf8f46a2fa999f31bd70b36c877 - md5: 342570f8e02f2f022147a7f841475784 + size: 345073 + timestamp: 1765813471974 +- conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.3-h68b038d_0.conda + sha256: 4614af680aa0920e82b953fece85a03007e0719c3399f13d7de64176874b80d5 + md5: eefd65452dfe7cce476a519bece46704 depends: + - __osx >=10.13 - ncurses >=6.5,<7.0a0 license: GPL-3.0-only license_family: GPL purls: [] - size: 256712 - timestamp: 1740379577668 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda - sha256: 7db04684d3904f6151eff8673270922d31da1eea7fa73254d01c437f49702e34 - md5: 63ef3f6e6d6d5c589e64f11263dc5676 + size: 317819 + timestamp: 1765813692798 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda + sha256: a77010528efb4b548ac2a4484eaf7e1c3907f2aec86123ed9c5212ae44502477 + md5: f8381319127120ce51e081dce4865cf4 depends: + - __osx >=11.0 - ncurses >=6.5,<7.0a0 license: GPL-3.0-only license_family: GPL purls: [] - size: 252359 - timestamp: 1740379663071 -- pypi: https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl + size: 313930 + timestamp: 1765813902568 +- pypi: https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl name: referencing - version: 0.36.2 - sha256: e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 + version: 0.37.0 + sha256: 381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 requires_dist: - attrs>=22.2.0 - rpds-py>=0.7.0 - typing-extensions>=4.4.0 ; python_full_version < '3.13' - requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhd8ed1ab_0.conda - sha256: 8dc54e94721e9ab545d7234aa5192b74102263d3e704e6d0c8aa7008f2da2a7b - md5: db0c6b99149880c8ba515cf4abe93ee4 + requires_python: '>=3.10' +- conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.5-pyhcf101f3_1.conda + sha256: 7813c38b79ae549504b2c57b3f33394cea4f2ad083f0994d2045c2e24cb538c5 + md5: c65df89a0b2e321045a9e01d1337b182 depends: + - python >=3.10 - certifi >=2017.4.17 - charset-normalizer >=2,<4 - idna >=2.5,<4 - - python >=3.9 - urllib3 >=1.21.1,<3 + - python constrains: - chardet >=3.0.2,<6 license: Apache-2.0 license_family: APACHE purls: - - pkg:pypi/requests?source=hash-mapping - size: 59263 - timestamp: 1755614348400 + - pkg:pypi/requests?source=compressed-mapping + size: 63602 + timestamp: 1766926974520 - conda: https://conda.anaconda.org/conda-forge/noarch/requests-oauthlib-2.0.0-pyhd8ed1ab_1.conda sha256: 75ef0072ae6691f5ca9709fe6a2570b98177b49d0231a6749ac4e610da934cab md5: a283b764d8b155f81e904675ef5e1f4b @@ -6771,26 +6794,26 @@ packages: name: rfc3987 version: 1.3.8 sha256: 10702b1e51e5658843460b189b185c0366d2cf4cff716f13111b0ea9fd2dce53 -- pypi: https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +- pypi: https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl name: rpds-py - version: 0.27.1 - sha256: 2efe4eb1d01b7f5f1939f4ef30ecea6c6b3521eec451fb93191bf84b2a522418 - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl + version: 0.30.0 + sha256: 9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6 + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl name: rpds-py - version: 0.27.1 - sha256: 1441811a96eadca93c517d08df75de45e5ffe68aa3089924f963c782c4b898cf - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl + version: 0.30.0 + sha256: f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2 + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl name: rpds-py - version: 0.27.1 - sha256: e4b9fcfbc021633863a37e92571d6f91851fa656f0180246e84cbd8b3f6b329b - requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl + version: 0.30.0 + sha256: 806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15 + requires_python: '>=3.10' +- pypi: https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl name: rpds-py - version: 0.27.1 - sha256: f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 - requires_python: '>=3.9' + version: 0.30.0 + sha256: e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8 + requires_python: '>=3.10' - conda: https://conda.anaconda.org/conda-forge/noarch/rsa-4.9.1-pyhd8ed1ab_0.conda sha256: e32e94e7693d4bc9305b36b8a4ef61034e0428f58850ebee4675978e3c2e5acf md5: 58958bb50f986ac0c46f73b6e290d5fe @@ -6896,17 +6919,17 @@ packages: - sphinx ; extra == 'doc' - sphinx-rtd-theme ; extra == 'doc' requires_python: '>=2.7' -- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - sha256: 972560fcf9657058e3e1f97186cc94389144b46dbdf58c807ce62e83f977e863 - md5: 4de79c071274a53dcaf2a8c749d1499e +- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda + sha256: fd7201e38e38bf7f25818d624ca8da97b8998957ca9ae3fb7fdc9c17e6b25fcd + md5: 1d00d46c634177fc8ede8b99d6089239 depends: - - python >=3.9 + - python >=3.10 license: MIT license_family: MIT purls: - - pkg:pypi/setuptools?source=hash-mapping - size: 748788 - timestamp: 1748804951958 + - pkg:pypi/setuptools?source=compressed-mapping + size: 637506 + timestamp: 1770634745653 - pypi: https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl name: shapely version: 2.1.2 @@ -6984,147 +7007,146 @@ packages: version: 3.27.0 sha256: 60016acdd8eba5398b298541e3472152b75040e3e31465559d0ef19b08b76ce7 requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.50.4-hbc0de68_0.conda - sha256: ea12e0714d70a536abe5968df612c57a966aa93c5a152cc4a1974046248d72a4 - md5: 8376bd3854542be0c8c7cd07525d31c6 +- conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.51.2-h04a0ce9_0.conda + sha256: ccce47d8fe3a817eac5b95f34ca0fcb12423b0c7c5eee249ffb32ac8013e9692 + md5: bb88d9335d09e54c7e6b5529d1856917 depends: - __glibc >=2.17,<3.0.a0 + - icu >=78.2,<79.0a0 - libgcc >=14 - - libsqlite 3.50.4 h0c1763c_0 + - libsqlite 3.51.2 hf4e2dac_0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 license: blessing purls: [] - size: 166233 - timestamp: 1753948493149 -- conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.50.4-h64b5abc_0.conda - sha256: d80b611bab9442aa6c745563e48a13781ef2abddb512892db899af344cf970de - md5: 86f1188b2d041e950810593c2df753ec + size: 183298 + timestamp: 1768147986603 +- conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.51.2-h5af3ad2_0.conda + sha256: 89fde12f2a5e58edb9bd1497558a77df9c090878971559bcf0c8513e0966795e + md5: 9eef7504045dd9eb1be950b2f934d542 depends: - __osx >=10.13 - - libsqlite 3.50.4 h39a8b3b_0 + - libsqlite 3.51.2 hb99441e_0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 license: blessing purls: [] - size: 158188 - timestamp: 1753948575496 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.50.4-hb5dd463_0.conda - sha256: 3b25888b1fa1aac88571127a8a8e16d25a522f94114cb339d0f7a613a911cbe2 - md5: 1da3d5a9ab6f1dbc8fd5b57fd65e0d3d + size: 174119 + timestamp: 1768148271396 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.51.2-h77b7338_0.conda + sha256: a13c798ad921da0c84c441c390ace3b53e5c40fe6b11d00e07641d985021c4d1 + md5: 93796186d49d0b09243fb5a8f83e53b6 depends: - __osx >=11.0 - - icu >=75.1,<76.0a0 - - libsqlite 3.50.4 h4237e3c_0 + - icu >=78.2,<79.0a0 + - libsqlite 3.51.2 h1ae2325_0 - libzlib >=1.3.1,<2.0a0 - ncurses >=6.5,<7.0a0 - - readline >=8.2,<9.0a0 + - readline >=8.3,<9.0a0 license: blessing purls: [] - size: 149389 - timestamp: 1753948618445 -- conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.50.4-hdb435a2_0.conda - sha256: 47717c9f78987a287984e89053cb8096457abd6b0fbf4cb39e63120797e2c993 - md5: b81e913bfad2759829f976fd926443af + size: 165840 + timestamp: 1768148351309 +- conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.51.2-hdb435a2_0.conda + sha256: 8194c1326f052852dd827f5277ba381228a968e841d410eb18c622cf851b11ba + md5: bc9265bd9f30f9ded263cb762a4fc847 depends: - - libsqlite 3.50.4 hf5d6505_0 + - libsqlite 3.51.2 hf5d6505_0 - ucrt >=10.0.20348.0 - vc >=14.3,<15 - vc14_runtime >=14.44.35208 license: blessing purls: [] - size: 400981 - timestamp: 1753948927232 + size: 400812 + timestamp: 1768148302390 - pypi: https://files.pythonhosted.org/packages/24/99/4772b8e00a136f3e01236de33b0efda31ee7077203ba5967fcc76da94d65/texttable-1.7.0-py2.py3-none-any.whl name: texttable version: 1.7.0 sha256: 72227d592c82b3d7f672731ae73e4d1f88cd8e2ef5b075a7a7f01a23a3743917 -- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd72426e_102.conda - sha256: a84ff687119e6d8752346d1d408d5cf360dee0badd487a472aa8ddedfdc219e1 - md5: a0116df4f4ed05c303811a837d5b39d8 +- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda + sha256: cafeec44494f842ffeca27e9c8b0c27ed714f93ac77ddadc6aaf726b5554ebac + md5: cffd3bdd58090148f4cfcd831f4b26ab depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 + - libgcc >=14 - libzlib >=1.3.1,<2.0a0 + constrains: + - xorg-libx11 >=1.8.12,<2.0a0 license: TCL license_family: BSD purls: [] - size: 3285204 - timestamp: 1748387766691 -- conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_2.conda - sha256: b24468006a96b71a5f4372205ea7ec4b399b0f2a543541e86f883de54cd623fc - md5: 9864891a6946c2fe037c02fca7392ab4 + size: 3301196 + timestamp: 1769460227866 +- conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h7142dee_3.conda + sha256: 7f0d9c320288532873e2d8486c331ec6d87919c9028208d3f6ac91dc8f99a67b + md5: 6e6efb7463f8cef69dbcb4c2205bf60e depends: - __osx >=10.13 - libzlib >=1.3.1,<2.0a0 license: TCL license_family: BSD purls: [] - size: 3259809 - timestamp: 1748387843735 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_2.conda - sha256: cb86c522576fa95c6db4c878849af0bccfd3264daf0cc40dd18e7f4a7bfced0e - md5: 7362396c170252e7b7b0c8fb37fe9c78 + size: 3282953 + timestamp: 1769460532442 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda + sha256: 799cab4b6cde62f91f750149995d149bc9db525ec12595e8a1d91b9317f038b3 + md5: a9d86bc62f39b94c4661716624eb21b0 depends: - __osx >=11.0 - libzlib >=1.3.1,<2.0a0 license: TCL license_family: BSD purls: [] - size: 3125538 - timestamp: 1748388189063 -- conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_2.conda - sha256: e3614b0eb4abcc70d98eae159db59d9b4059ed743ef402081151a948dce95896 - md5: ebd0e761de9aa879a51d22cc721bd095 + size: 3127137 + timestamp: 1769460817696 +- conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda + sha256: 0e79810fae28f3b69fe7391b0d43f5474d6bd91d451d5f2bde02f55ae481d5e3 + md5: 0481bfd9814bf525bd4b3ee4b51494c4 depends: - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: TCL license_family: BSD purls: [] - size: 3466348 - timestamp: 1748388121356 -- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_1.conda - sha256: 34f3a83384ac3ac30aefd1309e69498d8a4aa0bf2d1f21c645f79b180e378938 - md5: b0dd904de08b7db706167240bf37b164 + size: 3526350 + timestamp: 1769460339384 +- conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhcf101f3_3.conda + sha256: fd30e43699cb22ab32ff3134d3acf12d6010b5bbaa63293c37076b50009b91f8 + md5: d0fc809fa4c4d85e959ce4ab6e1de800 depends: - - python >=3.9 + - python >=3.10 + - python license: MIT license_family: MIT purls: - pkg:pypi/toml?source=hash-mapping - size: 22132 - timestamp: 1734091907682 -- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.2.1-pyhe01879c_2.conda - sha256: 040a5a05c487647c089ad5e05ad5aff5942830db2a4e656f1e300d73436436f1 - md5: 30a0a26c8abccf4b7991d590fe17c699 + size: 24017 + timestamp: 1764486833072 +- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.0-pyhcf101f3_0.conda + sha256: 62940c563de45790ba0f076b9f2085a842a65662268b02dd136a8e9b1eaf47a8 + md5: 72e780e9aa2d0a3295f59b1874e3768b depends: - - python >=3.9 + - python >=3.10 - python license: MIT license_family: MIT purls: - pkg:pypi/tomli?source=compressed-mapping - size: 21238 - timestamp: 1753796677376 -- pypi: https://files.pythonhosted.org/packages/da/af/5d24b8d49ef358468ecfdff5c556adf37f4fd28e336b96f923661a808329/types_python_dateutil-2.9.0.20251008-py3-none-any.whl - name: types-python-dateutil - version: 2.9.0.20251008 - sha256: b9a5232c8921cf7661b29c163ccc56055c418ab2c6eabe8f917cbcc73a4c4157 - requires_python: '>=3.9' -- conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_0.conda - sha256: 8d02b1e178294d80397dd0421d556f6523f39c7884d82025ab85f012ab30c767 - md5: 3c9919ecee97547fa14fea57e2a9bb54 + size: 21453 + timestamp: 1768146676791 +- conda: https://conda.anaconda.org/conda-forge/noarch/types-pyyaml-6.0.12.20250915-pyhd8ed1ab_1.conda + sha256: ba565f80b5dc5d88f34587b391f21807efd54099516f11beae5cb29a7925fd3d + md5: 0fcb42ddc8e8ba6f906274108e6d891d depends: - python >=3.10 license: Apache-2.0 AND MIT purls: - pkg:pypi/types-pyyaml?source=hash-mapping - size: 21996 - timestamp: 1757934724384 + size: 22060 + timestamp: 1762942278334 - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.15.0-h396c80c_0.conda sha256: 7c2df5721c742c2a47b2c8f960e718c930031663ac1174da67c1ed5999f7938c md5: edd329d7d3a4ab45dcf905899a7a6115 @@ -7147,18 +7169,18 @@ packages: - pkg:pypi/typing-extensions?source=hash-mapping size: 51692 timestamp: 1756220668932 -- pypi: https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl name: tzdata - version: '2025.2' - sha256: 1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 + version: '2025.3' + sha256: 06a47e5700f3081aab02b2e513160914ff0694bce9947d6b76ebd6bf57cfc5d1 requires_python: '>=2' -- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025b-h78e105d_0.conda - sha256: 5aaa366385d716557e365f0a4e9c3fca43ba196872abbbe3d56bb610d131e192 - md5: 4222072737ccff51314b5ece9c7d6f5a +- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda + sha256: 1d30098909076af33a35017eed6f2953af1c769e273a0626a04722ac4acaba3c + md5: ad659d0a2b3e47e38d829aa8cad2d610 license: LicenseRef-Public-Domain purls: [] - size: 122968 - timestamp: 1742727099393 + size: 119135 + timestamp: 1767016325805 - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda sha256: 3005729dce6f3d3f5ec91dfc49fc75a0095f9cd23bab49efb899657297ac91a5 md5: 71b24316859acd00bdb8b38f5e2ce328 @@ -7169,69 +7191,69 @@ packages: purls: [] size: 694692 timestamp: 1756385147981 -- conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda - sha256: 4edcb6a933bb8c03099ab2136118d5e5c25285e3fd2b0ff0fa781916c53a1fb7 - md5: 5bcffe10a500755da4a71cc0fb62a420 +- conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.1.0-py313h7037e92_0.conda + sha256: 7f2e4f38e57c17858c644259a1be868d6e98780239fd93bfa057cb5cfc24a928 + md5: cb423e0853b3dde2b3738db4dedf5ba2 depends: - __glibc >=2.17,<3.0.a0 - cffi - - libgcc >=13 - - libstdcxx >=13 - - python >=3.13.0rc1,<3.14.0a0 + - libgcc >=14 + - libstdcxx >=14 + - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 license: MIT license_family: MIT purls: - pkg:pypi/ukkonen?source=hash-mapping - size: 13916 - timestamp: 1725784177558 -- conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py313h0c4e38b_5.conda - sha256: 6abf14f984a1fc3641908cb7e96ba8f2ce56e6f81069852b384e1755f8f5225e - md5: 6185cafe9e489071688304666923c2ad + size: 14910 + timestamp: 1769438729201 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.1.0-py313h252b9d7_0.conda + sha256: 201d026c60bbbdd7c9bf9b3c61f807711ba24a9899a1b7f8a978b507d44d7efa + md5: e6ab56e180655e23353afea13caebc44 depends: - __osx >=10.13 - cffi - - libcxx >=17 - - python >=3.13.0rc1,<3.14.0a0 + - libcxx >=19 + - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 license: MIT license_family: MIT purls: - pkg:pypi/ukkonen?source=hash-mapping - size: 13126 - timestamp: 1725784265187 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py313hf9c7212_5.conda - sha256: 482eac475928c031948790647ae10c2cb1d4a779c2e8f35f5fd1925561b13203 - md5: 8ddba23e26957f0afe5fc9236c73124a + size: 14202 + timestamp: 1769439075795 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.1.0-py313h5c29297_0.conda + sha256: d28d0242d3fa23784630c775d5b628ce25e2d45f5d3f1cfcdc3815bc954073fa + md5: 43b1eb729bd1cd9ea595548eb8100b65 depends: - __osx >=11.0 - cffi - - libcxx >=17 - - python >=3.13.0rc1,<3.14.0a0 - - python >=3.13.0rc1,<3.14.0a0 *_cp313 + - libcxx >=19 + - python >=3.13,<3.14.0a0 + - python >=3.13,<3.14.0a0 *_cp313 - python_abi 3.13.* *_cp313 license: MIT license_family: MIT purls: - pkg:pypi/ukkonen?source=hash-mapping - size: 13689 - timestamp: 1725784235751 -- conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py313h1ec8472_5.conda - sha256: 4f57f2eccd5584421f1b4d8c96c167c1008cba660d7fab5bdec1de212a0e0ff0 - md5: 97337494471e4265a203327f9a194234 + size: 14773 + timestamp: 1769439197815 +- conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.1.0-py313hf069bd2_0.conda + sha256: 09f3bb587199361774612f4e70226d8688eda264b452ec401e1ce904633dde43 + md5: bfa075d1cd7bf341b8189af9616ce537 depends: - cffi - - python >=3.13.0rc1,<3.14.0a0 + - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: MIT license_family: MIT purls: - pkg:pypi/ukkonen?source=hash-mapping - size: 17210 - timestamp: 1725784604368 + size: 18441 + timestamp: 1769438882754 - conda: https://conda.anaconda.org/conda-forge/noarch/unrar-0.4-pyhd8ed1ab_2.conda sha256: 2d493c50f430aae9010ac87aa44cd3b20cf9b4221765777c918710efec5d9d0b md5: f65cc621a1b6343a4e9fed6a4f01efef @@ -7270,24 +7292,24 @@ packages: - flake8-use-fstring ; extra == 'dev' - pep8-naming ; extra == 'dev' requires_python: '>=3.7' -- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.5.0-pyhd8ed1ab_0.conda - sha256: 4fb9789154bd666ca74e428d973df81087a697dbb987775bc3198d2215f240f8 - md5: 436c165519e140cb08d246a4472a9d6a +- conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.6.3-pyhd8ed1ab_0.conda + sha256: af641ca7ab0c64525a96fd9ad3081b0f5bcf5d1cbb091afb3f6ed5a9eee6111a + md5: 9272daa869e03efe68833e3dc7a02130 depends: - - brotli-python >=1.0.9 + - backports.zstd >=1.0.0 + - brotli-python >=1.2.0 - h2 >=4,<5 - pysocks >=1.5.6,<2.0,!=1.5.7 - - python >=3.9 - - zstandard >=0.18.0 + - python >=3.10 license: MIT license_family: MIT purls: - pkg:pypi/urllib3?source=hash-mapping - size: 101735 - timestamp: 1750271478254 -- conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_31.conda - sha256: cb357591d069a1e6cb74199a8a43a7e3611f72a6caed9faa49dbb3d7a0a98e0b - md5: 28f4ca1e0337d0f27afb8602663c5723 + size: 103172 + timestamp: 1767817860341 +- conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda + sha256: 9dc40c2610a6e6727d635c62cced5ef30b7b30123f5ef67d6139e23d21744b3a + md5: 1e610f2416b6acdd231c5f573d754a0f depends: - vc14_runtime >=14.44.35208 track_features: @@ -7295,33 +7317,33 @@ packages: license: BSD-3-Clause license_family: BSD purls: [] - size: 18249 - timestamp: 1753739241465 -- conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_31.conda - sha256: af4b4b354b87a9a8d05b8064ff1ea0b47083274f7c30b4eb96bc2312c9b5f08f - md5: 603e41da40a765fd47995faa021da946 + size: 19356 + timestamp: 1767320221521 +- conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.44.35208-h818238b_34.conda + sha256: 02732f953292cce179de9b633e74928037fa3741eb5ef91c3f8bae4f761d32a5 + md5: 37eb311485d2d8b2c419449582046a42 depends: - ucrt >=10.0.20348.0 - - vcomp14 14.44.35208 h818238b_31 + - vcomp14 14.44.35208 h818238b_34 constrains: - - vs2015_runtime 14.44.35208.* *_31 + - vs2015_runtime 14.44.35208.* *_34 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary purls: [] - size: 682424 - timestamp: 1753739239305 -- conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_31.conda - sha256: 67b317b64f47635415776718d25170a9a6f9a1218c0f5a6202bfd687e07b6ea4 - md5: a6b1d5c1fc3cb89f88f7179ee6a9afe3 + size: 683233 + timestamp: 1767320219644 +- conda: https://conda.anaconda.org/conda-forge/win-64/vcomp14-14.44.35208-h818238b_34.conda + sha256: 878d5d10318b119bd98ed3ed874bd467acbe21996e1d81597a1dbf8030ea0ce6 + md5: 242d9f25d2ae60c76b38a5e42858e51d depends: - ucrt >=10.0.20348.0 constrains: - - vs2015_runtime 14.44.35208.* *_31 + - vs2015_runtime 14.44.35208.* *_34 license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime license_family: Proprietary purls: [] - size: 113963 - timestamp: 1753739198723 + size: 115235 + timestamp: 1767320173250 - pypi: https://files.pythonhosted.org/packages/95/f1/7b40045bfb8de925f0f510b36e269b474766711a5d4b78b47d97c9695e8d/vecorel_cli-0.2.12-py3-none-any.whl name: vecorel-cli version: 0.2.12 @@ -7345,35 +7367,36 @@ packages: - flatdict>=4.0,<5.0 - loguru==0.7.3 requires_python: '>=3.10,<3.14' -- conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.35.0-pyhd8ed1ab_0.conda - sha256: af3c8d1fdde55d40ee472f9552202c39c4edb5da3edcc493318f7cb934dbe0d2 - md5: b09fcf854d306e6298fd02a03f0786a0 +- conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.36.1-pyhd8ed1ab_0.conda + sha256: fa0a21fdcd0a8e6cf64cc8cd349ed6ceb373f09854fd3c4365f0bc4586dccf9a + md5: 6b0259cea8ffa6b66b35bae0ca01c447 depends: - distlib >=0.3.7,<1 - - filelock >=3.12.2,<4 + - filelock >=3.20.1,<4 - platformdirs >=3.9.1,<5 - python >=3.10 - typing_extensions >=4.13.2 license: MIT + license_family: MIT purls: - - pkg:pypi/virtualenv?source=compressed-mapping - size: 4382494 - timestamp: 1759962761484 -- conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_31.conda - sha256: 8b20152d00e1153ccb1ed377a160110482f286a6d85a82b57ffcd60517d523a7 - md5: d75abcfbc522ccd98082a8c603fce34c + - pkg:pypi/virtualenv?source=hash-mapping + size: 4404318 + timestamp: 1768069793682 +- conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.44.35208-h38c0c73_34.conda + sha256: 63ff4ec6e5833f768d402f5e95e03497ce211ded5b6f492e660e2bfc726ad24d + md5: f276d1de4553e8fca1dfb6988551ebb4 depends: - vc14_runtime >=14.44.35208 license: BSD-3-Clause license_family: BSD purls: [] - size: 18249 - timestamp: 1753739241918 -- pypi: https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl + size: 19347 + timestamp: 1767320221943 +- pypi: https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl name: webcolors - version: 24.11.1 - sha256: 515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 - requires_python: '>=3.9' + version: 25.10.0 + sha256: 032c727334856fc0b968f63daa252a1ac93d33db2f5267756623c210e57a4f1d + requires_python: '>=3.10' - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl name: win32-setctime version: 1.2.0 @@ -7495,13 +7518,13 @@ packages: purls: [] size: 63944 timestamp: 1753484092156 -- conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.20.1-py313h8060acc_0.conda - sha256: 4254322f6ed246ee3ddd6d4d80173ef44f8f82f3c2d31d9d23ce33849247ad94 - md5: b3659ec61a97eb6f64aeca04effb999d +- conda: https://conda.anaconda.org/conda-forge/linux-64/yarl-1.22.0-py313h3dea7bd_0.conda + sha256: 8ce0586516e494f1ea231bdb8dda1d3aac759f34dd49419f11d1db6480b38f9e + md5: e9415b0f7b43d2e32a3f24fd889c9e70 depends: - __glibc >=2.17,<3.0.a0 - idna >=2.0 - - libgcc >=13 + - libgcc >=14 - multidict >=4.0 - propcache >=0.2.1 - python >=3.13,<3.14.0a0 @@ -7510,11 +7533,11 @@ packages: license_family: Apache purls: - pkg:pypi/yarl?source=hash-mapping - size: 149483 - timestamp: 1749554958820 -- conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.20.1-py313h717bdf5_0.conda - sha256: ef9b93aef8a63dbc9c264b2ef7169200325c03b7c5ba71969d1b99d7f94d1cec - md5: 484fad6d5e455d642d18c331444b3f8c + size: 150462 + timestamp: 1761337228350 +- conda: https://conda.anaconda.org/conda-forge/osx-64/yarl-1.22.0-py313h0f4d31d_0.conda + sha256: f7f635d59f5cfa53a64032c29f10c9f637467c6e02b4b0407301de469c77b06b + md5: 06dd2b86a96a57edc0f592f909b268ae depends: - __osx >=10.13 - idna >=2.0 @@ -7526,11 +7549,11 @@ packages: license_family: Apache purls: - pkg:pypi/yarl?source=hash-mapping - size: 144490 - timestamp: 1749555095769 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.20.1-py313ha9b7d5b_0.conda - sha256: da9ca171d142bd8466aba2aacc6681eb883848c40eae58fb4f72309993de78d8 - md5: d45df777542ee921d750d659003ecc46 + size: 145217 + timestamp: 1761337423989 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/yarl-1.22.0-py313h7d74516_0.conda + sha256: 34d3912ba9068a6e20dbec361ff308ad27634ca003294dd573d879f7670fcb38 + md5: e49ee2a431e4f895b52a2c385b61aed5 depends: - __osx >=11.0 - idna >=2.0 @@ -7543,11 +7566,11 @@ packages: license_family: Apache purls: - pkg:pypi/yarl?source=hash-mapping - size: 145184 - timestamp: 1749555089490 -- conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.20.1-py313hb4c8b1a_0.conda - sha256: c7173defe45cb7863d2c5a415a2a16b4afc9e0f6d4ac7b61879e24b095b01f64 - md5: 288f95c67d49237abbaab05d2f0ef9dd + size: 145632 + timestamp: 1761337208054 +- conda: https://conda.anaconda.org/conda-forge/win-64/yarl-1.22.0-py313hd650c13_0.conda + sha256: c8aeb8ba2bf017e7da16ff5aaedc87e31d60948d0a67cadd8f796bf82211b7ca + md5: a296d7bc284ee121cd14fcc129cafffc depends: - idna >=2.0 - multidict >=4.0 @@ -7555,130 +7578,57 @@ packages: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 license: Apache-2.0 license_family: Apache purls: - pkg:pypi/yarl?source=hash-mapping - size: 141646 - timestamp: 1749555312104 -- conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.25.0-py313h54dd161_0.conda - sha256: 9d79d176afe50361cc3fd4366bedff20852dbea1e5b03f358b55f12aca22d60d - md5: 1fe43bd1fc86e22ad3eb0edec637f8a2 - depends: - - python - - cffi >=1.11 - - zstd >=1.5.7,<1.5.8.0a0 - - libgcc >=14 - - __glibc >=2.17,<3.0.a0 - - zstd >=1.5.7,<1.6.0a0 - - python_abi 3.13.* *_cp313 - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/zstandard?source=hash-mapping - size: 471152 - timestamp: 1757930114245 -- conda: https://conda.anaconda.org/conda-forge/osx-64/zstandard-0.25.0-py313hcb05632_0.conda - sha256: 1df6717571a177a135622399708878c84620be5bd9a72dc67814486595ecb509 - md5: 7fbc3b11a6c969de321061575594eba7 - depends: - - python - - cffi >=1.11 - - zstd >=1.5.7,<1.5.8.0a0 - - __osx >=10.13 - - zstd >=1.5.7,<1.6.0a0 - - python_abi 3.13.* *_cp313 - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/zstandard?source=hash-mapping - size: 469089 - timestamp: 1757930140546 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstandard-0.25.0-py313h9734d34_0.conda - sha256: 8a1bf8a66c05f724e8a56cb1918eae70bcb467a7c5d43818e37e04d86332c513 - md5: ce17795bf104a29a2c7ed0bba7a804cb - depends: - - python - - cffi >=1.11 - - zstd >=1.5.7,<1.5.8.0a0 - - __osx >=11.0 - - python 3.13.* *_cp313 - - zstd >=1.5.7,<1.6.0a0 - - python_abi 3.13.* *_cp313 - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/zstandard?source=hash-mapping - size: 396477 - timestamp: 1757930170468 -- conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.25.0-py313h5fd188c_0.conda - sha256: d20a163a466621e41c3d06bc5dc3040603b8b0bfa09f493e2bfc0dbd5aa6e911 - md5: edfe43bb6e955d4d9b5e7470ea92dead - depends: - - python - - cffi >=1.11 - - zstd >=1.5.7,<1.5.8.0a0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - ucrt >=10.0.20348.0 - - vc >=14.3,<15 - - vc14_runtime >=14.44.35208 - - ucrt >=10.0.20348.0 - - python_abi 3.13.* *_cp313 - - zstd >=1.5.7,<1.6.0a0 - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/zstandard?source=hash-mapping - size: 380849 - timestamp: 1757930139118 -- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb8e6e7a_2.conda - sha256: a4166e3d8ff4e35932510aaff7aa90772f84b4d07e9f6f83c614cba7ceefe0eb - md5: 6432cb5d4ac0046c3ac0a8a0f95842f9 + size: 142329 + timestamp: 1761337622076 +- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda + sha256: 68f0206ca6e98fea941e5717cec780ed2873ffabc0e1ed34428c061e2c6268c7 + md5: 4a13eeac0b5c8e5b8ab496e6c4ddd829 depends: - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - - libstdcxx >=13 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 567578 - timestamp: 1742433379869 -- conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h8210216_2.conda - sha256: c171c43d0c47eed45085112cb00c8c7d4f0caa5a32d47f2daca727e45fb98dca - md5: cd60a4a5a8d6a476b30d8aa4bb49251a + size: 601375 + timestamp: 1764777111296 +- conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.7-h3eecb57_6.conda + sha256: 47101a4055a70a4876ffc87b750ab2287b67eca793f21c8224be5e1ee6394d3f + md5: 727109b184d680772e3122f40136d5ca depends: - __osx >=10.13 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 485754 - timestamp: 1742433356230 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-h6491c7d_2.conda - sha256: 0d02046f57f7a1a3feae3e9d1aa2113788311f3cf37a3244c71e61a93177ba67 - md5: e6f69c7bcccdefa417f056fa593b40f0 + size: 528148 + timestamp: 1764777156963 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda + sha256: 9485ba49e8f47d2b597dd399e88f4802e100851b27c21d7525625b0b4025a5d9 + md5: ab136e4c34e97f34fb621d2592a393d8 depends: - __osx >=11.0 - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 399979 - timestamp: 1742433432699 -- conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-hbeecb71_2.conda - sha256: bc64864377d809b904e877a98d0584f43836c9f2ef27d3d2a1421fa6eae7ca04 - md5: 21f56217d6125fb30c3c3f10c786d751 + size: 433413 + timestamp: 1764777166076 +- conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda + sha256: 368d8628424966fd8f9c8018326a9c779e06913dd39e646cf331226acc90e5b2 + md5: 053b84beec00b71ea8ff7a4f84b55207 depends: - - libzlib >=1.3.1,<2.0a0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - libzlib >=1.3.1,<2.0a0 license: BSD-3-Clause license_family: BSD purls: [] - size: 354697 - timestamp: 1742433568506 + size: 388453 + timestamp: 1764777142545 diff --git a/pyproject.toml b/pyproject.toml index 12e7ccc2..c5b2f470 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,6 @@ [build-system] -requires = ["setuptools>=61.0", "wheel"] +# upper bound due to https://github.com/pypa/setuptools/issues/5174 +requires = ["setuptools>=61.0,<82.0", "wheel"] build-backend = "setuptools.build_meta" [project] From b8c54a33a41319bb82592acf4d66ee3b320456d2 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Fri, 13 Feb 2026 14:42:23 +0100 Subject: [PATCH 21/23] Migrate CDL column in migration function --- fiboa_cli/datasets/us_usda_cropland.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fiboa_cli/datasets/us_usda_cropland.py b/fiboa_cli/datasets/us_usda_cropland.py index 1497ea2e..95d87254 100644 --- a/fiboa_cli/datasets/us_usda_cropland.py +++ b/fiboa_cli/datasets/us_usda_cropland.py @@ -36,7 +36,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): columns = { "geometry": "geometry", "CSBID": "id", - "CDL2023": "crop:code", + # "CDL2023": "crop:code", will be added in migrate "crop:name": "crop:name", "CNTY": "administrative_area_level_2", } From 5243dfb602a4093922e264bdc2511b18547a0036 Mon Sep 17 00:00:00 2001 From: Ivor Bosloper Date: Fri, 13 Feb 2026 15:06:02 +0100 Subject: [PATCH 22/23] Replace None to "" --- fiboa_cli/datasets/de_bb.py | 1 + fiboa_cli/datasets/hr.py | 4 +--- fiboa_cli/datasets/jecam.py | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/fiboa_cli/datasets/de_bb.py b/fiboa_cli/datasets/de_bb.py index 8b2eff82..4f793acb 100644 --- a/fiboa_cli/datasets/de_bb.py +++ b/fiboa_cli/datasets/de_bb.py @@ -28,3 +28,4 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "farmer_id": {"type": "string"}, } } + column_migrations = {"code": lambda col: col.fillna("").astype(str)} diff --git a/fiboa_cli/datasets/hr.py b/fiboa_cli/datasets/hr.py index d539e92a..2eac9f99 100644 --- a/fiboa_cli/datasets/hr.py +++ b/fiboa_cli/datasets/hr.py @@ -27,9 +27,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): license = "Prostorni podaci i servisi " index_as_id = True - column_migrations = { - "land_use_id": lambda col: col.astype(int) - } + column_migrations = {"land_use_id": lambda col: col.astype(int)} columns = { "id": "id", diff --git a/fiboa_cli/datasets/jecam.py b/fiboa_cli/datasets/jecam.py index 70b6cbfc..d67c92b4 100644 --- a/fiboa_cli/datasets/jecam.py +++ b/fiboa_cli/datasets/jecam.py @@ -66,7 +66,7 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: rows = read_data_csv("jecam_crop.csv") mapping = {row["crop_name"]: index + 1 for index, row in enumerate(rows)} - gdf["crop:code"] = gdf["CropType1"].map(mapping) + gdf["crop:code"] = gdf["CropType1"].map(mapping).fillna("").astype(str) gdf.loc[gdf["Area_ha"] == 0, "Area_ha"] = None gdf["Irrigated"] = gdf["Irrigated"].astype(bool) From 63f2503839f081e952608df2c32972664a2cc960 Mon Sep 17 00:00:00 2001 From: Matthias Mohr Date: Fri, 13 Feb 2026 15:08:44 +0100 Subject: [PATCH 23/23] Added comments --- fiboa_cli/datasets/de_bb.py | 3 +++ fiboa_cli/datasets/jecam.py | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/fiboa_cli/datasets/de_bb.py b/fiboa_cli/datasets/de_bb.py index 4f793acb..2294bcc0 100644 --- a/fiboa_cli/datasets/de_bb.py +++ b/fiboa_cli/datasets/de_bb.py @@ -28,4 +28,7 @@ class Converter(AdminConverterMixin, AddHCATMixin, FiboaBaseConverter): "farmer_id": {"type": "string"}, } } + # todo: The dataset has null values for crop code, but the crop extension + # requires a string. We set them to empty strings for now, + # but it should be reconsidered in the future. column_migrations = {"code": lambda col: col.fillna("").astype(str)} diff --git a/fiboa_cli/datasets/jecam.py b/fiboa_cli/datasets/jecam.py index d67c92b4..45693ae1 100644 --- a/fiboa_cli/datasets/jecam.py +++ b/fiboa_cli/datasets/jecam.py @@ -66,6 +66,10 @@ def migrate(self, gdf) -> gpd.GeoDataFrame: rows = read_data_csv("jecam_crop.csv") mapping = {row["crop_name"]: index + 1 for index, row in enumerate(rows)} + # todo: The dataset has null values for crop code, but the crop extension + # requires a string. We set them to empty strings for now, + # but it should be reconsidered in the future + # (i.e. the removal of .fillna("").astype(str) ) gdf["crop:code"] = gdf["CropType1"].map(mapping).fillna("").astype(str) gdf.loc[gdf["Area_ha"] == 0, "Area_ha"] = None