eodag 3.9.1__py3-none-any.whl → 3.10.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1552,19 +1552,16 @@ MFG_GSA_63:
1552
1552
 
1553
1553
  HIRS_FDR_1_MULTI:
1554
1554
  abstract: |
1555
- This is Release 1 of the Fundamental Data Record (FDR) brightness
1556
- temperatures from the High Resolution Infrared Radiation Sounder (HIRS) on
1557
- board NOAA and Metop satellites. The data record covers more than 40 years
1558
- from 29 October 1978 to 31 December 2020. Release 1 provides recalibrated
1559
- Level 1c brightness temperatures based on the V4.0 calibration method
1560
- developed by Cao et al. (2007). This method was implemented into the
1561
- NWP-SAF software ATOVS and AVHRR processing Package (AAPP). This software
1562
- was consistently used to recalibrate and reprocess data from all HIRS
1563
- instruments on board TIROS-N, NOAA-06 to NOAA-19, Metop-A, and Metop-B. The
1564
- polygons, required for the data tailoring, show problems with non-continues
1565
- data. Some polygons of the HIRS data record are found to be incorrect.
1566
- However, this does not affect the correctness of the data itself. This is a
1567
- Fundamental Data Record (FDR).
1555
+ This is Release 2 of the Fundamental Data Record (FDR) brightness temperatures
1556
+ from the High Resolution Infrared Radiation Sounder (HIRS) on board NOAA and Metop
1557
+ satellites. The data record covers more than 40 years from 29 October 1978 to 31
1558
+ December 2022. Release 2 provides recalibrated Level 1c brightness temperatures
1559
+ based on the V4.0 calibration method developed by Cao et al. (2007). This method
1560
+ was implemented into the NWP-SAF software ATOVS and AVHRR processing Package (AAPP).
1561
+ This software was consistently used to recalibrate and reprocess data from all HIRS
1562
+ instruments on board TIROS-N, NOAA-06 to NOAA-19, Metop-A, and Metop-B. Input HIRS
1563
+ data were collected from NOAA/CLASS and ECMWF archives and merged to produce a
1564
+ longer time series of some of the satellites.
1568
1565
  instrument: HIRS
1569
1566
  platform: Metop,TIROS,NOAA
1570
1567
  platformSerialIdentifier: Metop,TIROS,NOAA
@@ -1572,7 +1569,7 @@ HIRS_FDR_1_MULTI:
1572
1569
  keywords: HIRS,L1C,HIRS,TIROS,Metop,NOAA,Sounder,FDR
1573
1570
  sensorType: Sounder
1574
1571
  license: other
1575
- title: HIRS Level 1C Fundamental Data Record Release 1 - Multimission - Global
1572
+ title: HIRS Level 1C Fundamental Data Record Release 2 - Multimission - Global
1576
1573
  missionStartDate: "1978-10-29T00:00:00Z"
1577
1574
  missionEndDate: "2020-12-31T23:59:59Z"
1578
1575
 
@@ -4687,28 +4684,6 @@ EEA_DAILY_SSM_1KM:
4687
4684
  title: "Surface Soil Moisture: continental Europe daily (raster 1km) - version 1, Apr 2019"
4688
4685
  missionStartDate: "2015-01-01T00:00:00Z"
4689
4686
 
4690
- EEA_DAILY_VI:
4691
- abstract: |
4692
- Vegetation Indices (VI) comprises four daily vegetation indices (PPI, NDVI, LAI and FAPAR) and quality information,
4693
- that are part of the Copernicus Land Monitoring Service (CLMS) HR-VPP product suite. The 10m resolution, daily updated
4694
- Plant Phenology Index (PPI), Normalized Difference Vegetation Index (NDVI), Leaf Area Index (LAI) and Fraction of Absorbed
4695
- Photosynthetically Active Radiation (fAPAR) are derived from Copernicus Sentinel-2 satellite observations. They are
4696
- provided together with a related quality indicator (QFLAG2) that flags clouds, shadows, snow, open water and other areas
4697
- where the VI retrieval is less reliable. These Vegetation Indices are made available as a set of raster files with 10 x 10m
4698
- resolution, in UTM/WGS84 projection corresponding to the Sentinel-2 tiling grid, for those tiles that cover the EEA38
4699
- countries and the United Kingdom and for the period from 2017 until today, with daily updates. The Vegetation Indices
4700
- are part of the pan-European High Resolution Vegetation Phenology and Productivity (HR-VPP) component of the Copernicus
4701
- Land Monitoring Service (CLMS).
4702
- instrument:
4703
- platform: Sentinel-2
4704
- platformSerialIdentifier: S2A,S2B,S2C
4705
- processingLevel:
4706
- keywords: Land,Plant-phenology-index,Phenology,Vegetation,Sentinel-2,S2A,S2B,S2C
4707
- sensorType: RADAR
4708
- license: other
4709
- title: Vegetation Indices, daily, UTM projection
4710
- missionStartDate:
4711
-
4712
4687
  EEA_HRL_TCF:
4713
4688
  abstract: |
4714
4689
  Tree Cover Fraction (TCF) is defined as the percentage of ground covered by tree canopy when viewed from above.
@@ -4726,6 +4701,76 @@ EEA_HRL_TCF:
4726
4701
  title: Tree Cover Fraction, UTM projection
4727
4702
  missionStartDate: "2017-01-01T00:00:00Z"
4728
4703
 
4704
+ CLMS_HRVPP_ST:
4705
+ abstract: |
4706
+ The Seasonal Trajectories product is a filtered time series of Plant Phenology Index (PPI), with regular time step, part of the Copernicus Land Monitoring Service (CLMS) HR-VPP product suite.
4707
+ Plant Phenology Index (PPI) is a physically based vegetation index that is optimized for monitoring vegetation phenology and has a linear relationship with green leaf area index.
4708
+ The Seasonal Trajectories (ST) products are derived from a function fitting of the time series of the PPI vegetation index and hence provide a filtered PPI time series, with regular 10-day time step, together with related quality information (QFLAG).
4709
+ The PPI Seasonal Trajectories are derived from the PPI vegetation index and hence based on Copernicus Sentinel-2 satellite observations.
4710
+ The ST products are made available as a set of raster files with 10m and 100m resolution, in ETRS89/LAEA projection corresponding to the High Resolution Layers tiling grid, for those tiles that cover the EEA38 countries and the United Kingdom, and for the period from 2017 until today, with yearly updates.
4711
+ These Seasonal Trajectories are part of the pan-European High Resolution Vegetation Phenology and Productivity (HR-VPP) component of the Copernicus Land Monitoring Service (CLMS).
4712
+ instrument:
4713
+ platform: Sentinel-2
4714
+ platformSerialIdentifier: S2A,S2B,S2C
4715
+ processingLevel:
4716
+ keywords: Land,Plant-phenology-index,Phenology,Vegetation,Sentinel-2,S2A,S2B,S2C
4717
+ sensorType:
4718
+ license: other
4719
+ title: Seasonal Trajectories, 10-daily, ST projection
4720
+ missionStartDate:
4721
+
4722
+ CLMS_HRVPP_ST_LAEA:
4723
+ abstract: |
4724
+ The Seasonal Trajectories product is a filtered time series of Plant Phenology Index (PPI), with regular time step, part of the Copernicus Land Monitoring Service (CLMS) HR-VPP product suite.
4725
+ Plant Phenology Index (PPI) is a physically based vegetation index that is optimized for monitoring vegetation phenology and has a linear relationship with green leaf area index.
4726
+ The Seasonal Trajectories (ST) products are derived from a function fitting of the time series of the PPI vegetation index and hence provide a filtered PPI time series, with regular 10-day time step, together with related quality information (QFLAG).
4727
+ The PPI Seasonal Trajectories are derived from the PPI vegetation index and hence based on Copernicus Sentinel-2 satellite observations.
4728
+ The ST products are made available as a set of raster files with 10m and 100m resolution, in ETRS89/LAEA projection corresponding to the High Resolution Layers tiling grid, for those tiles that cover the EEA38 countries and the United Kingdom, and for the period from 2017 until today, with yearly updates.
4729
+ These Seasonal Trajectories are part of the pan-European High Resolution Vegetation Phenology and Productivity (HR-VPP) component of the Copernicus Land Monitoring Service (CLMS).
4730
+ instrument:
4731
+ platform: Sentinel-2
4732
+ platformSerialIdentifier: S2A,S2B,S2C
4733
+ processingLevel:
4734
+ keywords: Land,Plant-phenology-index,Phenology,Vegetation,Sentinel-2,S2A,S2B,S2C
4735
+ sensorType:
4736
+ license: other
4737
+ title: Seasonal Trajectories, 10-daily, LAEA projection
4738
+ missionStartDate:
4739
+
4740
+ CLMS_HRVPP_VPP:
4741
+ abstract: |
4742
+ Vegetation Phenology and Productivity (VPP) comprise 13 parameters up to 2 seasons that characterize the vegetation growth cycle. It is part of the Copernicus Land Monitoring Service (CLMS) HR-VPP product suite.
4743
+ A set of 13 Vegetation Phenology and Productivity parameters are derived, for up to two growing seasons. These parameters include the start, end and length of the growing season, the dates when the vegetation index reaches its minimum and maximum values, the maximum value itself and its distance to the minimum (amplitude), the slopes of the green-up and green-down periods and the seasonal and total productivity.
4744
+ The Vegetation and Productivity parameters are extracted from the filtered PPI time-series, the HR-VPP Seasonal Trajectories, and hence based on Copernicus Sentinel-2 satellite observations.
4745
+ The VPP parameters are made available as a set of raster files with 10m and 100m resolution, in ETRS89/LAEA projection corresponding to the High Resolution Layers tiling grid, for those tiles that cover the EEA38 countries and the United Kingdom and for the period from 2017 until today, with yearly updates.
4746
+ This VPP product is part of the pan-European High Resolution Vegetation Phenology and Productivity (HR-VPP) component of the Copernicus Land Monitoring Service (CLMS).
4747
+ instrument:
4748
+ platform: Sentinel-2
4749
+ platformSerialIdentifier: S2A,S2B,S2C
4750
+ processingLevel:
4751
+ keywords: Land,Plant-phenology-index,Phenology,Vegetation,Sentinel-2,S2A,S2B,S2C
4752
+ sensorType:
4753
+ license: other
4754
+ title: Vegetation Phenology and Productivity, yearly, UTM projection
4755
+ missionStartDate:
4756
+
4757
+ CLMS_HRVPP_VPP_LAEA:
4758
+ abstract: |
4759
+ Vegetation Phenology and Productivity (VPP) comprise 13 parameters up to 2 seasons that characterize the vegetation growth cycle. It is part of the Copernicus Land Monitoring Service (CLMS) HR-VPP product suite.
4760
+ A set of 13 Vegetation Phenology and Productivity parameters are derived, for up to two growing seasons. These parameters include the start, end and length of the growing season, the dates when the vegetation index reaches its minimum and maximum values, the maximum value itself and its distance to the minimum (amplitude), the slopes of the green-up and green-down periods and the seasonal and total productivity.
4761
+ The Vegetation and Productivity parameters are extracted from the filtered PPI time-series, the HR-VPP Seasonal Trajectories, and hence based on Copernicus Sentinel-2 satellite observations.
4762
+ The VPP parameters are made available as a set of raster files with 10m and 100m resolution, in ETRS89/LAEA projection corresponding to the High Resolution Layers tiling grid, for those tiles that cover the EEA38 countries and the United Kingdom and for the period from 2017 until today, with yearly updates.
4763
+ This VPP product is part of the pan-European High Resolution Vegetation Phenology and Productivity (HR-VPP) component of the Copernicus Land Monitoring Service (CLMS).
4764
+ instrument:
4765
+ platform: Sentinel-2
4766
+ platformSerialIdentifier: S2A,S2B,S2C
4767
+ processingLevel:
4768
+ keywords: Land,Plant-phenology-index,Phenology,Vegetation,Sentinel-2,S2A,S2B,S2C
4769
+ sensorType:
4770
+ license: other
4771
+ title: Vegetation Phenology and Productivity, yearly, LAEA projection
4772
+ missionStartDate:
4773
+
4729
4774
  # MARK: AERIS --------------------------------------------------------------------------
4730
4775
  AERIS_IAGOS:
4731
4776
  abstract: |
@@ -1498,6 +1498,7 @@
1498
1498
  type: AwsAuth
1499
1499
  matching_url: s3://
1500
1500
  s3_endpoint: https://storage.googleapis.com
1501
+ support_presign_url: False
1501
1502
  matching_conf:
1502
1503
  s3_endpoint: https://storage.googleapis.com
1503
1504
  ---
@@ -2078,6 +2079,14 @@
2078
2079
  period: 1_5_c
2079
2080
  CMIP6_CLIMATE_PROJECTIONS:
2080
2081
  dataset: projections-cmip6
2082
+ experiment: historical
2083
+ variable: air_temperature
2084
+ model: access_cm2
2085
+ level: ["1"]
2086
+ year: ["1850"]
2087
+ month: ["01"]
2088
+ metadata_mapping:
2089
+ <<: *month_year
2081
2090
  GENERIC_PRODUCT_TYPE:
2082
2091
  dataset: '{productType}'
2083
2092
  ---
@@ -3424,25 +3433,6 @@
3424
3433
  productType: EO:ESA:DAT:SENTINEL-5P
3425
3434
  processingLevel: L2
3426
3435
  metadata_mapping_from_product: S5P_L1B_IR_ALL
3427
- EEA_DAILY_VI:
3428
- productType: EO:EEA:DAT:CLMS_HRVPP_VI
3429
- metadata_mapping:
3430
- id:
3431
- - '{{"uid": "{id}"}}'
3432
- - '$.id'
3433
- relativeOrbitNumber:
3434
- - '{{"relativeOrbitNumber": "{relativeOrbitNumber}"}}'
3435
- - '$.null'
3436
- version:
3437
- - '{{"productVersion": "{version}"}}'
3438
- - '$.null'
3439
- platformSerialIdentifier:
3440
- - '{{"platformSerialIdentifier": "{platformSerialIdentifier}"}}'
3441
- - '$.id.`sub(/^[^_]+_[^_]+_([^_]+)_.*/, \\1)`'
3442
- tileIdentifier:
3443
- - '{{"tileId": "{tileIdentifier}"}}'
3444
- - '$.null'
3445
- orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:EEA:DAT:CLMS_HRVPP_VI"}}'
3446
3436
  EEA_HRL_TCF:
3447
3437
  productType: EO:EEA:DAT:HRL:TCF
3448
3438
  metadata_mapping:
@@ -3532,6 +3522,34 @@
3532
3522
  metadata_mapping_from_product: CLMS_GLO_FCOVER_333M
3533
3523
  metadata_mapping:
3534
3524
  orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:CLMS:DAT:CLMS_GLOBAL_LAI_300M_V1_10DAILY_NETCDF"}}'
3525
+ CLMS_HRVPP_ST:
3526
+ _collection: EO:EEA:DAT:CLMS_HRVPP_ST
3527
+ metadata_mapping:
3528
+ id:
3529
+ - '{{"uid": "{id}"}}'
3530
+ - '$.id'
3531
+ orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:EEA:DAT:CLMS_HRVPP_ST"}}'
3532
+ CLMS_HRVPP_ST_LAEA:
3533
+ _collection: EO:EEA:DAT:CLMS_HRVPP_ST-LAEA
3534
+ metadata_mapping:
3535
+ id:
3536
+ - '{{"uid": "{id}"}}'
3537
+ - '$.id'
3538
+ orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:EEA:DAT:CLMS_HRVPP_ST-LAEA"}}'
3539
+ CLMS_HRVPP_VPP:
3540
+ _collection: EO:EEA:DAT:CLMS_HRVPP_VPP
3541
+ metadata_mapping:
3542
+ id:
3543
+ - '{{"uid": "{id}"}}'
3544
+ - '$.id'
3545
+ orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:EEA:DAT:CLMS_HRVPP_VPP"}}'
3546
+ CLMS_HRVPP_VPP_LAEA:
3547
+ _collection: EO:EEA:DAT:CLMS_HRVPP_VPP-LAEA
3548
+ metadata_mapping:
3549
+ id:
3550
+ - '{{"uid": "{id}"}}'
3551
+ - '$.id'
3552
+ orderLink: 'https://gateway.prod.wekeo2.eu/hda-broker/api/v1/dataaccess/download?{{"location": "{downloadLink}","product_id":"{id}", "dataset_id": "EO:EEA:DAT:CLMS_HRVPP_VPP-LAEA"}}'
3535
3553
  auth: !plugin
3536
3554
  type: TokenAuth
3537
3555
  matching_url: https://[-\w\.]+.wekeo2.eu
@@ -4295,7 +4313,7 @@
4295
4313
  quicklook: '$.Assets[?(@.Type="QUICKLOOK")].DownloadLink'
4296
4314
  thumbnail: '$.Assets[?(@.Type="QUICKLOOK")].DownloadLink'
4297
4315
  download: !plugin
4298
- type: CreodiasS3Download
4316
+ type: AwsDownload
4299
4317
  s3_endpoint: 'https://eodata.cloudferro.com'
4300
4318
  s3_bucket: 'eodata'
4301
4319
  ssl_verify: true
@@ -4303,6 +4321,7 @@
4303
4321
  type: AwsAuth
4304
4322
  auth_error_code: 403
4305
4323
  s3_endpoint: 'https://eodata.cloudferro.com'
4324
+ support_presign_url: False
4306
4325
  matching_conf:
4307
4326
  s3_endpoint: 'https://eodata.cloudferro.com'
4308
4327
  products:
@@ -5211,8 +5230,6 @@
5211
5230
  productType: EO.CLMS.DAT.GLO.NDVI_1KM_V2
5212
5231
  CLMS_GLO_NDVI_333M:
5213
5232
  productType: EO.CLMS.DAT.GLO.NDVI300_V1
5214
- EEA_DAILY_VI:
5215
- productType: EO.CLMS.DAT.SENTINEL-2.HRVPP.VI
5216
5233
  # Landsat data
5217
5234
  LANDSAT_C2L1:
5218
5235
  productType: EO.NASA.DAT.LANDSAT.C2_L1
@@ -5748,7 +5765,7 @@
5748
5765
  MSG_CTH_IODC:
5749
5766
  parentIdentifier: EO:EUM:DAT:MSG:CTH-IODC
5750
5767
  HIRS_FDR_1_MULTI:
5751
- parentIdentifier: EO:EUM:DAT:0647
5768
+ parentIdentifier: EO:EUM:DAT:0961
5752
5769
  MSG_OCA_CDR:
5753
5770
  parentIdentifier: EO:EUM:DAT:0617
5754
5771
  S6_RADIO_OCCULTATION:
@@ -5998,8 +6015,8 @@
5998
6015
  limit: 10000
5999
6016
  pagination:
6000
6017
  total_items_nb_key_path: '$.context.matched'
6001
- # 1000 is ok and 2000 fails
6002
- max_items_per_page: 1000
6018
+ # As of 2025/11/21 the geodes API documentation (https://geodes.cnes.fr/support/api/) states that pagination must be limited to 80.
6019
+ max_items_per_page: 80
6003
6020
  sort:
6004
6021
  sort_by_tpl: '{{"sortBy": [ {{"field": "{sort_param}", "direction": "{sort_order}" }} ] }}'
6005
6022
  sort_by_default:
@@ -6079,11 +6096,11 @@
6079
6096
  S2_MSI_L1C:
6080
6097
  productType: PEPS_S2_L1C
6081
6098
  S2_MSI_L2A_MAJA:
6082
- productType: MUSCATE_SENTINEL2_SENTINEL2_L2A
6099
+ productType: THEIA_REFLECTANCE_SENTINEL2_L2A
6083
6100
  S2_MSI_L2B_MAJA_SNOW:
6084
- productType: MUSCATE_Snow_SENTINEL2_L2B-SNOW
6101
+ productType: THEIA_SNOW_SENTINEL2_L2B
6085
6102
  S2_MSI_L2B_MAJA_WATER:
6086
- productType: MUSCATE_WaterQual_SENTINEL2_L2B-WATER
6103
+ productType: THEIA_WATERQUAL_SENTINEL2_L2B
6087
6104
  GENERIC_PRODUCT_TYPE:
6088
6105
  productType: '{productType}'
6089
6106
  download: !plugin
@@ -6123,8 +6140,8 @@
6123
6140
  limit: 10000
6124
6141
  pagination:
6125
6142
  total_items_nb_key_path: '$.context.matched'
6126
- # 1000 is ok and 2000 fails
6127
- max_items_per_page: 1000
6143
+ # As of 2025/11/21 the geodes API documentation (https://geodes.cnes.fr/support/api/) states that pagination must be limited to 80.
6144
+ max_items_per_page: 80
6128
6145
  sort:
6129
6146
  sort_by_tpl: '{{"sortBy": [ {{"field": "{sort_param}", "direction": "{sort_order}" }} ] }}'
6130
6147
  sort_by_default:
@@ -6204,11 +6221,11 @@
6204
6221
  S2_MSI_L1C:
6205
6222
  productType: PEPS_S2_L1C
6206
6223
  S2_MSI_L2A_MAJA:
6207
- productType: MUSCATE_SENTINEL2_SENTINEL2_L2A
6224
+ productType: THEIA_REFLECTANCE_SENTINEL2_L2A
6208
6225
  S2_MSI_L2B_MAJA_SNOW:
6209
- productType: MUSCATE_Snow_SENTINEL2_L2B-SNOW
6226
+ productType: THEIA_SNOW_SENTINEL2_L2B
6210
6227
  S2_MSI_L2B_MAJA_WATER:
6211
- productType: MUSCATE_WaterQual_SENTINEL2_L2B-WATER
6228
+ productType: THEIA_WATERQUAL_SENTINEL2_L2B
6212
6229
  GENERIC_PRODUCT_TYPE:
6213
6230
  productType: '{productType}'
6214
6231
  download: !plugin
eodag/types/queryables.py CHANGED
@@ -91,6 +91,7 @@ class Queryables(CommonQueryables):
91
91
  Union[str, dict[str, float], BaseGeometry],
92
92
  Field(
93
93
  None,
94
+ alias="geometry",
94
95
  description="Read EODAG documentation for all supported geometry format.",
95
96
  ),
96
97
  ]
eodag/utils/__init__.py CHANGED
@@ -77,7 +77,7 @@ from jsonpath_ng import jsonpath
77
77
  from jsonpath_ng.ext import parse
78
78
  from jsonpath_ng.jsonpath import Child, Fields, Index, Root, Slice
79
79
  from requests import HTTPError, Response
80
- from shapely.geometry import Polygon, shape
80
+ from shapely.geometry import Polygon, box, shape
81
81
  from shapely.geometry.base import GEOMETRY_TYPES, BaseGeometry
82
82
  from tqdm.auto import tqdm
83
83
 
@@ -132,6 +132,9 @@ DEFAULT_MAX_ITEMS_PER_PAGE = 50
132
132
  # default product-types start date
133
133
  DEFAULT_MISSION_START_DATE = "2015-01-01T00:00:00.000Z"
134
134
 
135
+ # default geometry / whole world bounding box
136
+ DEFAULT_SHAPELY_GEOMETRY = box(-180, -90, 180, 90)
137
+
135
138
  # default token expiration margin in seconds
136
139
  DEFAULT_TOKEN_EXPIRATION_MARGIN = 60
137
140
 
@@ -1052,7 +1055,7 @@ def nested_pairs2dict(pairs: Union[list[Any], Any]) -> Union[Any, dict[Any, Any]
1052
1055
 
1053
1056
  def get_geometry_from_various(
1054
1057
  locations_config: list[dict[str, Any]] = [], **query_args: Any
1055
- ) -> BaseGeometry:
1058
+ ) -> Optional[BaseGeometry]:
1056
1059
  """Creates a ``shapely.geometry`` using given query kwargs arguments
1057
1060
 
1058
1061
  :param locations_config: (optional) EODAG locations configuration
@@ -1137,6 +1140,45 @@ def get_geometry_from_various(
1137
1140
  return geom
1138
1141
 
1139
1142
 
1143
+ def get_geometry_from_ecmwf_feature(geom: dict[str, Any]) -> BaseGeometry:
1144
+ """
1145
+ Creates a ``shapely.geometry`` from ECMWF Polytope shape.
1146
+
1147
+ :param geom: ECMWF Polytope shape.
1148
+ :returns: A Shapely polygon.
1149
+ """
1150
+ if not isinstance(geom, dict):
1151
+ raise TypeError(
1152
+ "Geometry must be a dictionary, instead it's {}".format(type(geom))
1153
+ )
1154
+ if "type" not in geom or geom["type"] != "polygon":
1155
+ raise TypeError("Geometry type must be 'polygon'")
1156
+ if "shape" not in geom:
1157
+ raise TypeError("Missing shape in the geometry")
1158
+ if not isinstance(geom["shape"], list):
1159
+ raise TypeError("Geometry shape must be a list")
1160
+
1161
+ shape: list = geom["shape"]
1162
+ polygon_args = [(p[1], p[0]) for p in shape]
1163
+ return Polygon(polygon_args)
1164
+
1165
+
1166
+ def get_geometry_from_ecmwf_area(area: list[float]) -> Optional[BaseGeometry]:
1167
+ """
1168
+ Creates a ``shapely.geometry`` from bounding box in area format.
1169
+
1170
+ area format: [max_lat,min_lon,min_lat,max_lon]
1171
+
1172
+ :param area: bounding box in area format.
1173
+ :returns: A Shapely polygon.
1174
+ """
1175
+ if len(area) != 4:
1176
+ raise ValueError("The area must be a list of 4 values")
1177
+ max_lat, min_lon, min_lat, max_lon = area
1178
+ bbox = [min_lon, min_lat, max_lon, max_lat]
1179
+ return get_geometry_from_various(geometry=bbox)
1180
+
1181
+
1140
1182
  class MockResponse:
1141
1183
  """Fake requests response"""
1142
1184
 
eodag/utils/dates.py CHANGED
@@ -35,6 +35,18 @@ RFC3339_PATTERN = (
35
35
  r"(Z|([+-])(\d{2}):(\d{2}))?)?$"
36
36
  )
37
37
 
38
+ # yyyy-mm-dd
39
+ DATE_PATTERN = r"\d{4}-(0[1-9]|1[1,2])-(0[1-9]|[12][0-9]|3[01])"
40
+
41
+ # yyyymmdd
42
+ COMPACT_DATE_PATTERN = r"\d{4}(0[1-9]|1[1,2])(0[1-9]|[12][0-9]|3[01])"
43
+
44
+ # yyyy-mm-dd/yyyy-mm-dd, yyyy-mm-dd/to/yyyy-mm-dd
45
+ DATE_RANGE_PATTERN = DATE_PATTERN + r"(/to/|/)" + DATE_PATTERN
46
+
47
+ # yyyymmdd/yyyymmdd, yyyymmdd/to/yyyymmdd
48
+ COMPACT_DATE_RANGE_PATTERN = COMPACT_DATE_PATTERN + r"(/to/|/)" + COMPACT_DATE_PATTERN
49
+
38
50
 
39
51
  def get_timestamp(date_time: str) -> float:
40
52
  """Return the Unix timestamp of an ISO8601 date/datetime in seconds.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eodag
3
- Version: 3.9.1
3
+ Version: 3.10.1
4
4
  Summary: Earth Observation Data Access Gateway
5
5
  Home-page: https://github.com/CS-SI/eodag
6
6
  Author: CS GROUP - France
@@ -23,6 +23,7 @@ Classifier: Programming Language :: Python :: 3.10
23
23
  Classifier: Programming Language :: Python :: 3.11
24
24
  Classifier: Programming Language :: Python :: 3.12
25
25
  Classifier: Programming Language :: Python :: 3.13
26
+ Classifier: Programming Language :: Python :: 3.14
26
27
  Classifier: Programming Language :: Python :: Implementation :: CPython
27
28
  Classifier: Topic :: Internet :: WWW/HTTP :: Indexing/Search
28
29
  Classifier: Topic :: Scientific/Engineering :: GIS
@@ -115,6 +116,7 @@ Requires-Dist: types-requests; extra == "stubs"
115
116
  Requires-Dist: types-python-dateutil; extra == "stubs"
116
117
  Requires-Dist: types-PyYAML; extra == "stubs"
117
118
  Requires-Dist: types-setuptools; extra == "stubs"
119
+ Requires-Dist: types-shapely; extra == "stubs"
118
120
  Requires-Dist: types-tqdm; extra == "stubs"
119
121
  Requires-Dist: types-urllib3; extra == "stubs"
120
122
  Provides-Extra: docs
@@ -317,7 +319,7 @@ An eodag instance can be exposed through a STAC compliant REST api from the comm
317
319
 
318
320
  .. code-block:: bash
319
321
 
320
- docker run -p 5000:5000 --rm csspace/eodag-server:3.9.1
322
+ docker run -p 5000:5000 --rm csspace/eodag-server:3.10.1
321
323
 
322
324
  You can also browse over your STAC API server using `STAC Browser <https://github.com/radiantearth/stac-browser>`_.
323
325
  Simply run:
@@ -377,6 +379,15 @@ Start playing with the CLI:
377
379
 
378
380
  - To print log messages, add ``-v`` to eodag master command. e.g. ``eodag -v list``. The more ``v`` given (up to 3), the more verbose the tool is. For a full verbose output, do for example: ``eodag -vvv list``
379
381
 
382
+ Docker image
383
+ ------------
384
+
385
+ A Docker image is available via the `GitHub Container Registry <https://github.com/CS-SI/eodag/pkgs/container/eodag>`_:
386
+
387
+ .. code-block:: bash
388
+
389
+ docker pull ghcr.io/cs-si/eodag:v3.10.x
390
+
380
391
  Contribute
381
392
  ==========
382
393
 
@@ -4,12 +4,12 @@ eodag/config.py,sha256=-Ub-sAdJRhTQTrK23AZcYANtoZp-xQdB0M_FZorRLVg,48557
4
4
  eodag/crunch.py,sha256=fLVAPGVPw31N_DrnFk4gkCpQZLMY8oBhK6NUSYmdr24,1099
5
5
  eodag/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  eodag/api/__init__.py,sha256=ytr30NUVmEtmJTsp3QCwkCIhS1nF6UlFCv0vmySHN7g,735
7
- eodag/api/core.py,sha256=iBX19BZv2UJrFWZwDvZmG7StKVvlv0RsjmJAqqLTnpQ,109126
7
+ eodag/api/core.py,sha256=JHsK8p481Ak7SCYByqodGUqznF6y9Qks6NaLcFvK8UI,109445
8
8
  eodag/api/search_result.py,sha256=2Y2W3xDUyainwcyYBQljGRi6oyOqTTspgCgIlNG4kCc,14383
9
9
  eodag/api/product/__init__.py,sha256=k5iNHxXX6wDLsUo725W4U_Jz8CVbZTbfE8R9s1YQwKA,2508
10
10
  eodag/api/product/_assets.py,sha256=9bWIe_SYvsQO-q_lQFd7SxhUIWv7feze2-wnXOe8hhs,7570
11
- eodag/api/product/_product.py,sha256=UXCaWUtkAGWVCfF68zWCYDoEUUfxAdC0RGaNLZ3vUQ8,26794
12
- eodag/api/product/metadata_mapping.py,sha256=oACFPL14EdbIzD83Voi81-sFts_VD9N-3OsX5IN9hFg,79186
11
+ eodag/api/product/_product.py,sha256=JbBxl_J5kJH_8RK3H-lLOoPE9ajry8vc7uvKH20YK24,26708
12
+ eodag/api/product/metadata_mapping.py,sha256=FiRhb23hO1g00Jj7ck4VUnhWafcZ9r3Hy1i05kGuOAg,79313
13
13
  eodag/api/product/drivers/__init__.py,sha256=Sy9bGmDhWCAxvxRUf3QGijjQoQvzS1LSUMN34Usq6fM,3357
14
14
  eodag/api/product/drivers/base.py,sha256=iPAE5Jx3isxmHHFPP-jysdUylYbsbIq6UejU3qsMROE,4111
15
15
  eodag/api/product/drivers/generic.py,sha256=obwH8paf2TP7afnjfx4GxSZPSrTs3suTYJWQvebmigY,2207
@@ -23,44 +23,45 @@ eodag/plugins/apis/base.py,sha256=oCEKVtIbOjzNgM3lzaCCtO-DhU2PvGfKaATG6OxR-V8,28
23
23
  eodag/plugins/apis/ecmwf.py,sha256=TTlxTt93B3c1KxDkwjQiwgnZnjBVlFSro6pov3fgcCA,11455
24
24
  eodag/plugins/apis/usgs.py,sha256=M1JcIBIGxbSvDNomy3g-G0OcoegghpFleRiZ8xJDXIQ,19686
25
25
  eodag/plugins/authentication/__init__.py,sha256=_LVw42Bb1IhGAZH5xHRaS4b1iFoF9e27KDZOyoSoJHY,1039
26
- eodag/plugins/authentication/aws_auth.py,sha256=DvV0hfnSVYafxVCNI3qSRgj2gk7eH535gz8Jd65yTmo,11353
27
- eodag/plugins/authentication/base.py,sha256=_wkWJs09RRfMiIYsv-k-I_Rd04EZPXb5vA69hftlCNc,2987
26
+ eodag/plugins/authentication/aws_auth.py,sha256=A0sr5mVmCkAwCldlGSGFcZqnthusbcB52THthja77cw,12651
27
+ eodag/plugins/authentication/base.py,sha256=U04WwX3rUHD5BoqhcYonttVLwdAF00gQAzce3X1SYkc,3568
28
28
  eodag/plugins/authentication/generic.py,sha256=z-u4WMixeG4nKwc70cUGVBXt3IVheDPA6tQWs2iDH4Q,2673
29
29
  eodag/plugins/authentication/header.py,sha256=U_KnUqgZTLHXM5OKdGbH6jRqoQ0uIfOoxO6krUeAAcQ,4284
30
30
  eodag/plugins/authentication/keycloak.py,sha256=m5c6Os_T8UGfdXS9SemhuUBhwsC4foxmrVA6VXEXamU,7358
31
31
  eodag/plugins/authentication/oauth.py,sha256=KEnC6CKmntuZPKUtsgvh0L-_AO244f1FC6blYWHR_LQ,2113
32
32
  eodag/plugins/authentication/openid_connect.py,sha256=lj-9RPz2BADU-1ckawLmuSi3TSexABsDDPCHLp8Frsc,27084
33
33
  eodag/plugins/authentication/qsauth.py,sha256=bkepO_sFRIhYm3Dzecx3VJP0Ap37vUuJSRmEY8HrV1U,3947
34
- eodag/plugins/authentication/sas_auth.py,sha256=IKsaQMk5rfevMKJMoPVQ1cwzkBV89T54cbzOA34oNa8,5294
34
+ eodag/plugins/authentication/sas_auth.py,sha256=-ye_Bgarni91V7B7XWzMyJwekFhujyRbw1seTa1Xi8w,5777
35
35
  eodag/plugins/authentication/token.py,sha256=f2SossIJ_XlnBuOw_OprLNrF1p-uolL_KEX71_BhzKw,15798
36
36
  eodag/plugins/authentication/token_exchange.py,sha256=raFIN8UnO9MpqQukDJg4Pog-LJLzq8Bk54_6k9cCwFc,4963
37
37
  eodag/plugins/crunch/__init__.py,sha256=58D7kJhEpHJWobIKaNFPynfbSqAWgS90BiHzitqS5Ds,746
38
38
  eodag/plugins/crunch/base.py,sha256=XW4HISgR0UswiEZmE4t42HxnSxknZBtVpuK8XVLYHzU,1415
39
39
  eodag/plugins/crunch/filter_date.py,sha256=dTpUg43KkGU81K2-BO7pL0VbbQbZiwweE2RRWKtXpyw,4356
40
- eodag/plugins/crunch/filter_latest_intersect.py,sha256=EkOyHEXFMrLQ7ZlTbzNs9lXZVDsbYTwgkPPK4JAkalY,4426
40
+ eodag/plugins/crunch/filter_latest_intersect.py,sha256=Yeu1AtKsSW4O8HX2tP4IOttn0DrKJe5HWb5-8lrmFjI,4462
41
41
  eodag/plugins/crunch/filter_latest_tpl_name.py,sha256=pP4EDP73mQg1zvkVm1Uo4nGAgwhNsMWe7_ecOBDbA0E,3679
42
- eodag/plugins/crunch/filter_overlap.py,sha256=mkm5_ljgK_7QOOp-KgJjDjbVfss4gwRjIYUTMyKrw5o,7272
42
+ eodag/plugins/crunch/filter_overlap.py,sha256=tU3h15jyfePOQPgGvowHFm2ZuckEbAo6lgLQNaPiJ2Q,7142
43
43
  eodag/plugins/crunch/filter_property.py,sha256=2BKb7wxw1Yi2NTtnPCBtdZ-caJXxlVUUS2ps4LHXOMI,3187
44
44
  eodag/plugins/download/__init__.py,sha256=zqszaeNgYP0YHlZDkLMf6odcwNw0KrAahGpcA-l0kAw,740
45
- eodag/plugins/download/aws.py,sha256=ZTszeNNU_JZesnINVMpW_7lPCBc0_MA4Xi_7AqTZxjA,46713
45
+ eodag/plugins/download/aws.py,sha256=Zapv1l5V-g9qxFU59HT-kPmypKEBvHqiaar3_Oyzu7s,46707
46
46
  eodag/plugins/download/base.py,sha256=ub217oE_IarzfrSk8DFN6Sfj9aE3VcCENjVGt9xjzKA,30899
47
- eodag/plugins/download/creodias_s3.py,sha256=xN2cTENRWXalQfbmH2r0RAd84IS64Rf5iEqIC11dv5o,2798
47
+ eodag/plugins/download/creodias_s3.py,sha256=iSS2iqyvzW_SaxYvq2SeFshzHQKv94-NOgqLJsiyL-4,2998
48
48
  eodag/plugins/download/http.py,sha256=b5od-j28B0dYxIXoOSNz1OmVgPVqLPD-eO9vfrrUorM,58532
49
49
  eodag/plugins/download/s3rest.py,sha256=9gNoCf9UPr8XffuPrZeyf2B67IXoibmOIhSeiH1PIOA,15215
50
50
  eodag/plugins/search/__init__.py,sha256=dShNJxU5NzF27aW-PgYtpyKimCibTlgf38PFsf_Rqa8,2086
51
51
  eodag/plugins/search/base.py,sha256=LBS7K9zx86uzItuYFwWzznaByooYWFHnbQ5o4OrfNHM,20084
52
- eodag/plugins/search/build_search_result.py,sha256=1yyzOc1c5gpfQlmoJEIU3gVP0iT_XqzZSxV9oitG4KQ,57689
53
- eodag/plugins/search/cop_marine.py,sha256=-GrFQjVZb7SfS6BbI0wnGc2VuRcQu7aqtWg3EWjQhE0,20485
52
+ eodag/plugins/search/build_search_result.py,sha256=Dr3VRMTvAfzhgkJL5wD_K3ok5gXcSkjDR0vaQ7dIrhs,58777
53
+ eodag/plugins/search/cop_marine.py,sha256=LpbkGKa-SsHXLqBiRIgFy-AgwAZsxuJuaAFDd7hKHYo,20725
54
54
  eodag/plugins/search/creodias_s3.py,sha256=q-fzgKIp9hPgcxZ1fQz8N7veDdqZVZuVvygGOIA9zf0,3845
55
55
  eodag/plugins/search/csw.py,sha256=de8CNjz4bjEny27V0RXC7V8LRz0Ik3yqQVjTAc_JlyA,12548
56
56
  eodag/plugins/search/data_request_search.py,sha256=m38kpTXJT2fC8Mk894KlxKb14dz-nhAs_71-5kpnehU,27461
57
57
  eodag/plugins/search/qssearch.py,sha256=X4U9VYcHkCj_EGwXbQ9G6iRe97_u3cbatQ0ZSgG4sL4,94886
58
58
  eodag/plugins/search/stac_list_assets.py,sha256=OOCMyjD8XD-m39k0SyKMrRi4K8Ii5mOQsA6zSAeQDGI,3435
59
59
  eodag/plugins/search/static_stac_search.py,sha256=CPynjpNw0gXa6g6hA2zSkbwhfgU-9IBCmJtknuhnFKk,10515
60
- eodag/resources/ext_product_types.json,sha256=KKyH7o7b-sy-g_yFslOjUE3akhMt6owrEtXg7RHJvvA,2521551
60
+ eodag/resources/ext_collections.json,sha256=q_XP7evZIdYZJvjucMlDqMBERJnlggcqCeAUmJbw1gU,2586798
61
+ eodag/resources/ext_product_types.json,sha256=5AHQ6O8BqilEQBoXWDdb12FZHJW1CHEfHJPe-RmPKzI,2526068
61
62
  eodag/resources/locations_conf_template.yml,sha256=_eBv-QKHYMIKhY0b0kp4Ee33RsayxN8LWH3kDXxfFSk,986
62
- eodag/resources/product_types.yml,sha256=4qEeKi7rYGTBWmNAsqk40ml-tD4V0AMeiZxqkN7TYhM,422350
63
- eodag/resources/providers.yml,sha256=GQ40f4Ot8sp61Csqz2Z4jxYjc6mDCnw4Cju-RkmfBHQ,231795
63
+ eodag/resources/product_types.yml,sha256=Cj6DvEA3GIRmbWOfR6W4qac2OVs6l0SCMXqx1_2yw-8,427234
64
+ eodag/resources/providers.yml,sha256=0zEGBfyZSZLDg4WgaLnoxQgqvwRntff9QZPdn93uTUY,232731
64
65
  eodag/resources/stac.yml,sha256=QnrBulL2pHZrPH4pI7rQtKDxmgP2ZbBcufFqFJPCL7A,10473
65
66
  eodag/resources/stac_api.yml,sha256=2FdQL_qBTIUlu6KH836T4CXBKO9AvVxA_Ub3J1RP81A,68881
66
67
  eodag/resources/stac_provider.yml,sha256=0nldbieF2CGf6QyqjEa-R96V3H1pV-jJwzRmaS2VzaQ,6804
@@ -92,11 +93,11 @@ eodag/rest/utils/rfc3339.py,sha256=28I4IGoXq6NCnc5s5YVgOMMl_xfbGZqnX40qKDbglqo,2
92
93
  eodag/types/__init__.py,sha256=CCNBBM1NTq5UkN7s5zdl-uZdT8nOGX0z9Y8g7kwEyAw,16150
93
94
  eodag/types/bbox.py,sha256=jbfX58KOKIl0OoGZc93kAYhG_mEOjuBQGJtR2hl3-_Y,4354
94
95
  eodag/types/download_args.py,sha256=urSl5KbLRN1XetMa2XzxYltny8CCFmHpjxU3j3BEGO8,1565
95
- eodag/types/queryables.py,sha256=1Bb-n05YKSUq-rsVm-_2HoYaCBWp4SFHI4uWngpRmiw,10551
96
+ eodag/types/queryables.py,sha256=H4OHOvalH3j64_u6hV1ubikxjeCsLKUX-5KO4cJvQT0,10581
96
97
  eodag/types/search_args.py,sha256=EtG8nXnApBnYrFo5FVvsvvEqRlqTxJ0lrmIem9Wtg8c,5649
97
- eodag/utils/__init__.py,sha256=vLeA5MAskrfmMaB0j37ZpwlCqj2hjEEXEzt6nN5NtFU,54437
98
+ eodag/utils/__init__.py,sha256=ZU4Wmf3ldURFwWnpd7vJNj7rsyFjTm_hfnKVlIZZd8I,55875
98
99
  eodag/utils/cache.py,sha256=UNvnzhJnNBuKLdH_0KnhuTMlBvz4GS3nr2IH2Lj6Swc,2580
99
- eodag/utils/dates.py,sha256=dSKmWC3spQrpo0XLYAnUe32k3SPHQ9yih_K3nQ7z1fE,7470
100
+ eodag/utils/dates.py,sha256=nUIcGo1i9o2Lwv2A44vaAPh7V2ml_uEzw_6FdO9zOCQ,7876
100
101
  eodag/utils/env.py,sha256=_sgCzDmaJnMnCv1qk9xe9jBhBKqqXbEYmsyGYwYw4NI,1085
101
102
  eodag/utils/exceptions.py,sha256=64M6xNsWWThEspIrZvxPYCS47wBH4PL7YXXw8fcPCbo,4588
102
103
  eodag/utils/free_text_search.py,sha256=et6nn5qmzbUq0T9tup6M2kMCwn2CvQgwVq6M6XOKEpg,8057
@@ -107,9 +108,9 @@ eodag/utils/repr.py,sha256=o6NhScogBPI69m83GsHh3hXONb9-byPfuWgJ1U39Kfw,5463
107
108
  eodag/utils/requests.py,sha256=avNHKrOZ7Kp6lUA7u4kqupIth9MoirLzDsMrrmQDt4s,4560
108
109
  eodag/utils/s3.py,sha256=eESanPLVv-Luqo_o1WgUuO7YLqiXg_iEzHZ15fu-ugY,30063
109
110
  eodag/utils/stac_reader.py,sha256=8r6amio5EtwGF9iu9zHaGDz4oUPKKeXRuyTzPNakrO4,9406
110
- eodag-3.9.1.dist-info/licenses/LICENSE,sha256=4MAecetnRTQw5DlHtiikDSzKWO1xVLwzM5_DsPMYlnE,10172
111
- eodag-3.9.1.dist-info/METADATA,sha256=8JZeZPyrSd923sZ9SFK4k7B4vGYyKh9HxMYSgsYoROY,15520
112
- eodag-3.9.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
113
- eodag-3.9.1.dist-info/entry_points.txt,sha256=4b6l049qcMbT60_9GebzhtCOVWLGa66_-sesZWqzLQg,2519
114
- eodag-3.9.1.dist-info/top_level.txt,sha256=025IMTmVe5eDjIPP4KEFQKespOPMQdne4U4jOy8nftM,6
115
- eodag-3.9.1.dist-info/RECORD,,
111
+ eodag-3.10.1.dist-info/licenses/LICENSE,sha256=4MAecetnRTQw5DlHtiikDSzKWO1xVLwzM5_DsPMYlnE,10172
112
+ eodag-3.10.1.dist-info/METADATA,sha256=NKPU9iy7L5Y99awIn7rtGxlo24xLRA86ICfmcxGMo4A,15835
113
+ eodag-3.10.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
114
+ eodag-3.10.1.dist-info/entry_points.txt,sha256=4b6l049qcMbT60_9GebzhtCOVWLGa66_-sesZWqzLQg,2519
115
+ eodag-3.10.1.dist-info/top_level.txt,sha256=025IMTmVe5eDjIPP4KEFQKespOPMQdne4U4jOy8nftM,6
116
+ eodag-3.10.1.dist-info/RECORD,,
File without changes