eodag 3.9.1__py3-none-any.whl → 4.0.0a1__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.
Files changed (71) hide show
  1. eodag/api/core.py +378 -419
  2. eodag/api/product/__init__.py +3 -3
  3. eodag/api/product/_product.py +68 -40
  4. eodag/api/product/drivers/__init__.py +3 -5
  5. eodag/api/product/drivers/base.py +1 -18
  6. eodag/api/product/metadata_mapping.py +151 -215
  7. eodag/api/search_result.py +13 -7
  8. eodag/cli.py +72 -395
  9. eodag/config.py +46 -50
  10. eodag/plugins/apis/base.py +2 -2
  11. eodag/plugins/apis/ecmwf.py +20 -21
  12. eodag/plugins/apis/usgs.py +37 -33
  13. eodag/plugins/authentication/aws_auth.py +36 -1
  14. eodag/plugins/authentication/base.py +18 -3
  15. eodag/plugins/authentication/sas_auth.py +15 -0
  16. eodag/plugins/crunch/filter_date.py +3 -3
  17. eodag/plugins/crunch/filter_latest_intersect.py +2 -2
  18. eodag/plugins/crunch/filter_latest_tpl_name.py +1 -1
  19. eodag/plugins/download/aws.py +45 -41
  20. eodag/plugins/download/base.py +13 -14
  21. eodag/plugins/download/http.py +65 -65
  22. eodag/plugins/manager.py +28 -29
  23. eodag/plugins/search/__init__.py +3 -4
  24. eodag/plugins/search/base.py +128 -77
  25. eodag/plugins/search/build_search_result.py +105 -107
  26. eodag/plugins/search/cop_marine.py +44 -47
  27. eodag/plugins/search/csw.py +33 -33
  28. eodag/plugins/search/qssearch.py +335 -354
  29. eodag/plugins/search/stac_list_assets.py +1 -1
  30. eodag/plugins/search/static_stac_search.py +31 -31
  31. eodag/resources/{product_types.yml → collections.yml} +2353 -2429
  32. eodag/resources/ext_collections.json +1 -0
  33. eodag/resources/ext_product_types.json +1 -1
  34. eodag/resources/providers.yml +2432 -2714
  35. eodag/resources/stac_provider.yml +46 -90
  36. eodag/types/queryables.py +55 -91
  37. eodag/types/search_args.py +1 -1
  38. eodag/utils/__init__.py +94 -21
  39. eodag/utils/exceptions.py +6 -6
  40. eodag/utils/free_text_search.py +3 -3
  41. {eodag-3.9.1.dist-info → eodag-4.0.0a1.dist-info}/METADATA +11 -88
  42. eodag-4.0.0a1.dist-info/RECORD +92 -0
  43. {eodag-3.9.1.dist-info → eodag-4.0.0a1.dist-info}/entry_points.txt +0 -4
  44. eodag/plugins/authentication/oauth.py +0 -60
  45. eodag/plugins/download/creodias_s3.py +0 -64
  46. eodag/plugins/download/s3rest.py +0 -351
  47. eodag/plugins/search/data_request_search.py +0 -565
  48. eodag/resources/stac.yml +0 -294
  49. eodag/resources/stac_api.yml +0 -2105
  50. eodag/rest/__init__.py +0 -24
  51. eodag/rest/cache.py +0 -70
  52. eodag/rest/config.py +0 -67
  53. eodag/rest/constants.py +0 -26
  54. eodag/rest/core.py +0 -764
  55. eodag/rest/errors.py +0 -210
  56. eodag/rest/server.py +0 -604
  57. eodag/rest/server.wsgi +0 -6
  58. eodag/rest/stac.py +0 -1032
  59. eodag/rest/templates/README +0 -1
  60. eodag/rest/types/__init__.py +0 -18
  61. eodag/rest/types/collections_search.py +0 -44
  62. eodag/rest/types/eodag_search.py +0 -386
  63. eodag/rest/types/queryables.py +0 -174
  64. eodag/rest/types/stac_search.py +0 -272
  65. eodag/rest/utils/__init__.py +0 -207
  66. eodag/rest/utils/cql_evaluate.py +0 -119
  67. eodag/rest/utils/rfc3339.py +0 -64
  68. eodag-3.9.1.dist-info/RECORD +0 -115
  69. {eodag-3.9.1.dist-info → eodag-4.0.0a1.dist-info}/WHEEL +0 -0
  70. {eodag-3.9.1.dist-info → eodag-4.0.0a1.dist-info}/licenses/LICENSE +0 -0
  71. {eodag-3.9.1.dist-info → eodag-4.0.0a1.dist-info}/top_level.txt +0 -0
eodag/resources/stac.yml DELETED
@@ -1,294 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Copyright 2018, CS Systemes d'Information, https://www.csgroup.eu/
3
- #
4
- # This file is part of EODAG project
5
- # https://www.github.com/CS-SI/EODAG
6
- #
7
- # Licensed under the Apache License, Version 2.0 (the "License");
8
- # you may not use this file except in compliance with the License.
9
- # You may obtain a copy of the License at
10
- #
11
- # http://www.apache.org/licenses/LICENSE-2.0
12
- #
13
- # Unless required by applicable law or agreed to in writing, software
14
- # distributed under the License is distributed on an "AS IS" BASIS,
15
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
-
19
- stac_version: 1.0.0
20
- stac_api_version: 1.0.0
21
-
22
- # Capabilities ----------------------------------------------------------------
23
-
24
- # https://stacspec.org/STAC-api.html#operation/getLandingPage
25
- landing_page:
26
- type: "Catalog"
27
- links:
28
- - rel: self
29
- type: "application/json"
30
- href: "{catalog[root]}/"
31
- - rel: service-desc
32
- type: "application/vnd.oai.openapi+json;version=3.0"
33
- title: "OpenAPI service description"
34
- href: "{catalog[root]}/api"
35
- - rel: service-doc
36
- type: "text/html"
37
- title: "OpenAPI service documentation"
38
- href: "{catalog[root]}/api.html"
39
- - rel: conformance
40
- type: "application/json"
41
- title: "STAC/WFS3 conformance classes implemented by this server"
42
- href: "{catalog[root]}/conformance"
43
- - rel: data
44
- type: "application/json"
45
- href: "{catalog[root]}/collections"
46
- - rel: search
47
- type: "application/geo+json"
48
- title: "STAC search"
49
- href: "{catalog[root]}/search"
50
- method: GET
51
- - rel: search
52
- type: "application/geo+json"
53
- title: "STAC search"
54
- href: "{catalog[root]}/search"
55
- method: POST
56
- stac_version: "{stac_version}"
57
- conformsTo: "{conformance[conformsTo]}"
58
-
59
- # required by OGC API - Features
60
- # http://docs.opengeospatial.org/is/17-069r3/17-069r3.html#_declaration_of_conformance_classes
61
- conformance:
62
- conformsTo:
63
- - https://api.stacspec.org/v1.0.0/core
64
- - https://api.stacspec.org/v1.0.0/item-search
65
- - https://api.stacspec.org/v1.0.0/item-search#query
66
- - https://api.stacspec.org/v1.0.0/item-search#filter
67
- - https://api.stacspec.org/v1.0.0/item-search#sort
68
- - https://api.stacspec.org/v1.0.0/ogcapi-features
69
- - https://api.stacspec.org/v1.0.0/ogcapi-features#query
70
- - https://api.stacspec.org/v1.0.0/ogcapi-features#sort
71
- - https://api.stacspec.org/v1.0.0/collections
72
- - https://api.stacspec.org/v1.0.0/collection-search
73
- - https://api.stacspec.org/v1.0.0/collection-search#free-text
74
- - https://api.stacspec.org/v1.0.0/collection-search#advanced-free-text
75
- - http://www.opengis.net/spec/ogcapi-common-2/1.0/conf/simple-query
76
- - http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/core
77
- - http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/oas30
78
- - http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/geojson
79
- - http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/filter
80
- - http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/features-filter
81
- - http://www.opengis.net/spec/cql2/1.0/conf/cql2-text
82
- - http://www.opengis.net/spec/cql2/1.0/conf/cql2-json
83
- - http://www.opengis.net/spec/cql2/1.0/conf/basic-cql2
84
- - http://www.opengis.net/spec/cql2/1.0/conf/basic-spatial-operators
85
- - http://www.opengis.net/spec/cql2/1.0/conf/temporal-operators
86
- - http://www.opengis.net/spec/cql2/1.0/conf/advanced-comparison-operators
87
-
88
- # https://stacspec.org/STAC-api.html#operation/getCollections
89
- collections:
90
- collections:
91
- - "{collection}"
92
- links:
93
- - rel: root
94
- type: "application/json"
95
- href: "{collections[root]}/"
96
- - rel: parent
97
- type: "application/json"
98
- href: "{collections[root]}/"
99
- - rel: self
100
- type: "application/json"
101
- href: "{collections[url]}"
102
-
103
- # https://stacspec.org/STAC-api.html#operation/describeCollection
104
- collection:
105
- id: '$.product_type.ID'
106
- type: Collection
107
- title: '$.product_type.title'
108
- description: '$.product_type.abstract'
109
- links:
110
- - rel: self
111
- title: "{collection[id]}"
112
- href: "{collection[url]}"
113
- - rel: root
114
- href: "{collection[root]}/"
115
- - rel: items
116
- title: "items"
117
- href: "{collection[url]}/items"
118
- extent:
119
- spatial:
120
- bbox:
121
- - - -180
122
- - -90
123
- - 180
124
- - 90
125
- temporal:
126
- interval:
127
- - - '$.product_type.missionStartDate'
128
- - '$.product_type.missionEndDate'
129
- crs: http://www.opengis.net/def/crs/OGC/1.3/CRS84
130
- stac_version: "{stac_version}"
131
- keywords:
132
- - '$.product_type.instrument'
133
- - '$.product_type.platform'
134
- - '$.product_type.platformSerialIdentifier'
135
- - '$.product_type.processingLevel'
136
- - '$.product_type.sensorType'
137
- license: '$.product_type.license'
138
- providers: '$.providers'
139
- summaries:
140
- constellation:
141
- - '$.product_type.platform'
142
- platform:
143
- - '$.product_type.platformSerialIdentifier'
144
- intruments:
145
- - '$.product_type.instrument'
146
- processing:level:
147
- - '$.product_type.processingLevel'
148
-
149
- # Data ------------------------------------------------------------------------
150
-
151
- # https://stacspec.org/STAC-api.html#operation/getFeatures
152
- items:
153
- type: FeatureCollection
154
- stac_version: "{stac_version}"
155
- stac_extensions: []
156
- features:
157
- - "{item}"
158
- links:
159
- - rel: self
160
- title: "items"
161
- href: "{catalog[url]}/items"
162
- - rel: root
163
- href: "{catalog[root]}/"
164
- - rel: parent
165
- title: "{catalog[id]}"
166
- href: "{catalog[url]}"
167
- # time and date when the response was generated
168
- timeStamp: '$.timeStamp'
169
- # count request result
170
- numberMatched: '$.numberMatched'
171
- # len(features)
172
- numberReturned: '$.numberReturned'
173
-
174
- # https://stacspec.org/STAC-api.html#operation/getFeature
175
- item:
176
- stac_version: "{stac_version}"
177
- stac_extensions:
178
- id: '$.product.properties.id'
179
- bbox:
180
- - '{item[geometry].bounds[0]}'
181
- - '{item[geometry].bounds[1]}'
182
- - '{item[geometry].bounds[2]}'
183
- - '{item[geometry].bounds[3]}'
184
- geometry: '$.product.geometry'
185
- type: "Feature"
186
- collection: '$.product.product_type'
187
- properties:
188
- providers: '$.providers'
189
- datetime: '$.product.properties.startTimeFromAscendingNode'
190
- start_datetime: '$.product.properties.startTimeFromAscendingNode'
191
- end_datetime: '$.product.properties.completionTimeFromAscendingNode'
192
- created: '$.product.properties.creationDate'
193
- updated: '$.product.properties.modificationDate'
194
- description: '$.product.properties.abstract'
195
- license: '{catalog[license]}'
196
- constellation: '$.product.properties.platform'
197
- platform: '$.product.properties.platformSerialIdentifier'
198
- instruments: '{$.product.properties.instrument#replace_str(r"^(.*)$",r"""["\1"]""")}'
199
- gsd: '$.product.properties.resolution'
200
- published: '$.product.properties.publicationDate'
201
- eo:cloud_cover: '$.product.properties.cloudCover'
202
- eo:snow_cover: '$.product.properties.snowCover'
203
- processing:level: '$.product.properties.processingLevel'
204
- sat:orbit_state: '$.product.properties.orbitDirection'
205
- sat:relative_orbit: '$.product.properties.relativeOrbitNumber'
206
- sat:absolute_orbit : '$.product.properties.orbitNumber'
207
- sar:product_type: '$.product.properties.productType'
208
- sar:instrument_mode: '$.product.properties.sensorMode'
209
- sar:polarizations: '$.product.properties.polarizationChannels'
210
- sar:frequency_band: '$.product.properties.dopplerFrequency'
211
- sci:doi: '$.product.properties.doi'
212
- version: '$.product.properties.productVersion'
213
- view:sun_elevation: '$.product.properties.illuminationElevationAngle'
214
- view:sun_azimuth: '$.product.properties.illuminationAzimuthAngle'
215
- order:status: '{$.product.properties.storageStatus#get_group_name((?P<succeeded>ONLINE)|(?P<shipping>STAGING)|(?P<orderable>OFFLINE))}'
216
- links:
217
- - rel: self
218
- title: "{item[id]}"
219
- href: "{catalog[url]}/items/{item[id]}"
220
- - rel: root
221
- href: "{catalog[root]}/"
222
- - rel: parent
223
- title: "{catalog[id]}"
224
- href: "{catalog[url]}"
225
- - rel: collection
226
- title: "{item[collection]}"
227
- href: "{catalog[url]}"
228
-
229
- # product properties not needed in items
230
- metadata_ignore:
231
- - title
232
- - id
233
- - keyword
234
- - quicklook
235
- - downloadLink
236
- - custom
237
-
238
- # extensions mapping {prefix: schema_url,}
239
- stac_extensions:
240
- eo: 'https://stac-extensions.github.io/eo/v1.0.0/schema.json'
241
- order: 'https://stac-extensions.github.io/order/v1.1.0/schema.json'
242
- published: 'https://stac-extensions.github.io/timestamps/v1.0.0/schema.json'
243
- processing: 'https://stac-extensions.github.io/processing/v1.0.0/schema.json'
244
- sar: 'https://stac-extensions.github.io/sar/v1.0.0/schema.json'
245
- sat: 'https://stac-extensions.github.io/sat/v1.0.0/schema.json'
246
- storage: 'https://stac-extensions.github.io/storage/v1.0.0/schema.json'
247
- sci: 'https://stac-extensions.github.io/scientific/v1.0.0/schema.json'
248
- version: 'https://stac-extensions.github.io/version/v1.0.0/schema.json'
249
- view: 'https://stac-extensions.github.io/view/v1.0.0/schema.json'
250
- oseo: "{catalog[root]}/extensions/oseo/json-schema/schema.json"
251
-
252
- # Catalog --------------------------------------------------------------------
253
-
254
- catalog:
255
- parent_key: root
256
- model:
257
- type: Catalog
258
- id: "{catalog[id]}"
259
- title: "{catalog[title]}"
260
- description: "{catalog[description]}"
261
- links:
262
- - rel: self
263
- href: "{catalog[url]}"
264
- - rel: root
265
- href: "{catalog[root]}"
266
- stac_version: "{stac_version}"
267
- stac_extensions: "{catalog[stac_extensions]}"
268
-
269
- # Extensions ------------------------------------------------------------------
270
- extensions:
271
- oseo:
272
- $schema: "http://json-schema.org/draft-07/schema#"
273
- $id: "{extension[url]}#"
274
- title: OpenSearch for Earth Observation
275
- description: OpenSearch-EO STAC extension to a STAC Item https://www.ogc.org/standards/opensearch-eo
276
- allOf:
277
- - $ref: "#/definitions/oseo"
278
- - $ref: "https://schemas.stacspec.org/v{stac_version}/item-spec/json-schema/item.json"
279
- definitions:
280
- oseo:
281
- type: object
282
- required:
283
- - stac_extensions
284
- - properties
285
- properties:
286
- stac_extensions:
287
- type: array
288
- contains:
289
- enum:
290
- - oseo
291
- - "{extension[url]}"
292
- properties:
293
- type: object
294
- properties: "{extension[properties]}"