farmwise-api 0.1.0rc1__tar.gz
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.
- farmwise_api-0.1.0rc1/CITATION.cff +26 -0
- farmwise_api-0.1.0rc1/DATA_LICENSES.md +433 -0
- farmwise_api-0.1.0rc1/LICENSE +193 -0
- farmwise_api-0.1.0rc1/MANIFEST.in +47 -0
- farmwise_api-0.1.0rc1/PKG-INFO +604 -0
- farmwise_api-0.1.0rc1/README.md +526 -0
- farmwise_api-0.1.0rc1/SECURITY.md +81 -0
- farmwise_api-0.1.0rc1/farmwise_api/__init__.py +12 -0
- farmwise_api-0.1.0rc1/farmwise_api/_vendor/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/_vendor/hubeaupyutils/LICENSE +21 -0
- farmwise_api-0.1.0rc1/farmwise_api/_vendor/hubeaupyutils/__init__.py +37 -0
- farmwise_api-0.1.0rc1/farmwise_api/_vendor/hubeaupyutils/hubeau.py +582 -0
- farmwise_api-0.1.0rc1/farmwise_api/_vendor/hubeaupyutils/wrappers.py +292 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/CHMI_Meteo/CHMI_meteo.py +289 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/CHMI_Meteo/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/ESDAC/ESDAC_mappings/ESDAC_mappings.py +11 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/ESDAC/ESDAC_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/ESDAC/ESDAC_wrapper.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/ESDAC/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/EuroCropV2_read.py +90 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/mappings/EuroCropV2_mappings.py +6 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/utils/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/utils/extractors.py +101 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/EuroCropV2/utils/preparation.py +142 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/IFSGRID_read.py +67 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/mappings/IFSGRID_mappings.py +116 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/utils/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/utils/definitions.json +371 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/utils/extraction.py +138 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/IFSGRID/utils/preparation.py +116 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/UA_sw_quality/UA_sw_quality_mappings/UA_sw_quality_mapping.py +38 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/UA_sw_quality/UA_sw_quality_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/UA_sw_quality/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/UA_sw_quality/ukrainian_surface_water.py +142 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_land_cover.py +46 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_mappings/cds_land_cover_mapping.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_mappings/cds_single_levels_mapping.py +44 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_single_levels.py +220 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_utils/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/cds/cds_utils/cds_data_read.py +128 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/corine/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/corine/corine_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/corine/corine_mappings/corine_mapping.py +130 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/corine/corine_read.py +226 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/correctiv_read.py +97 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/mappings/correctiv_mappings.py +18 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/utils/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/utils/extractors.py +139 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/correctiv/utils/preparation.py +56 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/eea/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/eea/eea_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/eea/eea_mappings/eea_mappings.py +13 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/eea/eea_read.py +176 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/epa_ireland/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/epa_ireland/constants/EPA_coordinates.csv +89 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/epa_ireland/epa_gw.py +178 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/epa_ireland/epa_ireland_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/epa_ireland/epa_ireland_mappings/epa_ireland_mapping.py +12 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/geosphere/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/geosphere/geosphere.py +162 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/geosphere/geosphere_mapping/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/geosphere/geosphere_mapping/geosphere_mapping.py +12 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/constants/gios_coordinates.csv +217 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/gios_api_stations.py +50 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/gios_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/gios_mappings/gios_mapping.py +264 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/gios_scraper.py +224 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios/gios_utils.py +27 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios_gw/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios_gw/gios_gw.py +250 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios_gw/gios_gw_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios_gw/gios_gw_mappings/gios_gw_mapping.py +78 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/gios_gw/gios_gw_stations.py +98 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/constants/farmwise_gwquality_parameters.csv +37 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/constants/farmwise_gwquality_points_sel_for_hubeau.csv +1877 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/constants/farmwise_gwquantity_piezos_sel_for_hubeau.csv +2148 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/constants/farmwise_sw_quality_stations_sel_for_hubeau.csv +5141 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/get_piezo_stations.py +54 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_mappings/hubeau_mapping_piezo.py +11 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_mappings/hubeau_mapping_sw_quality.py +81 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_mappings/hubeau_mapping_wq.py +78 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_piezo_read_vbrgm.py +338 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_sw_quality_read.py +395 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_units.py +261 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/hubeau/hubeau_wq_read.py +383 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw/imgw_api_stations.py +65 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw/imgw_api_synop_daily.py +277 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw/imgw_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw/imgw_mappings/synop_mapping.py +73 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw_hydro/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw_hydro/imgw_api_hydro_daily.py +168 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw_hydro/imgw_hydro_stations_api.py +45 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw_hydro/imgw_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/imgw_hydro/imgw_mappings/imgw_hydro_mappings.py +25 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/irish_meteo/EPA_ireland_stations.csv +2084 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/irish_meteo/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/irish_meteo/irish_meteo_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/irish_meteo/irish_meteo_mappings/irish_meteo_mapping.py +9 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/irish_meteo/irish_ms_daily.py +159 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/DATA_SETUP.md +31 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/__init__.py +0 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/mappings/quadica_mappings.py +217 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/mappings/quadica_table.html +184 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/quadica_read.py +84 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/utils/__init__.py +0 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/utils/definition.py +19 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/utils/extractors.py +209 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/quadica/utils/preparation.py +110 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/soilgrids/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/soilgrids/soilgrids_call.py +113 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/soilgrids/soilgrids_mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/soilgrids/soilgrids_mappings/soilgrids_mapping.py +57 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/wetterdienst/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/wetterdienst/wetterdienst_dwd.py +255 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/wetterdienst/wetterdienst_mapping/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/API_readers/wetterdienst/wetterdienst_mapping/dwd_mapping.py +11 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/mappings/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/mappings/data_source_mapping.py +310 -0
- farmwise_api-0.1.0rc1/farmwise_api/adapters/mappings/units.py +29 -0
- farmwise_api-0.1.0rc1/farmwise_api/cli.py +50 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/harmonization.py +336 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/main_call.py +546 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/quality_assess.py +376 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/access_policy.py +55 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/cells_to_coordinates.py +85 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/coordinates_to_cells.py +81 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/country_bboxes.py +25 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/country_codes +1502 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/data_manifest.py +47 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/data_operators.py +8 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/fetch_data.py +56 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/generate_cells.py +86 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/imgw_utils.py +63 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/interpolate_data.py +259 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/map_ploter.py +764 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/merge_bboxes.py +6 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/name_to_coordinates.py +44 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/overlap_checks.py +88 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/paths.py +292 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/proj_env.py +140 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/utils/reproject_raster.py +35 -0
- farmwise_api-0.1.0rc1/farmwise_api/core/within_source_aggregation.py +151 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/api_utils.py +42 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/crud.py +36 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/db_users.py +62 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/email_utils.py +69 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/hashing_utils.py +11 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/jobs.py +128 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/logging_config.py +11 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/main.py +71 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/routers/__init__.py +1 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/routers/auth.py +49 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/routers/data_call.py +477 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/routers/frontpage.py +597 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/scheduler.py +16 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/schemas.py +184 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/security.py +106 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/services.py +20 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/sql_schemas.py +12 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/static/farmwise.png +0 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/static/farmwise_logo.png +0 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/static/style.css +34 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/static/upwr.png +0 -0
- farmwise_api-0.1.0rc1/farmwise_api/server/user_database.py +26 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/PKG-INFO +604 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/SOURCES.txt +258 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/dependency_links.txt +1 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/entry_points.txt +2 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/requires.txt +57 -0
- farmwise_api-0.1.0rc1/farmwise_api.egg-info/top_level.txt +1 -0
- farmwise_api-0.1.0rc1/pyproject.toml +201 -0
- farmwise_api-0.1.0rc1/setup.cfg +4 -0
- farmwise_api-0.1.0rc1/tests/test_access_policy.py +71 -0
- farmwise_api-0.1.0rc1/tests/test_adapter_aggregation_policy.py +15 -0
- farmwise_api-0.1.0rc1/tests/test_adapter_helpers.py +299 -0
- farmwise_api-0.1.0rc1/tests/test_adapter_pipelines.py +212 -0
- farmwise_api-0.1.0rc1/tests/test_api_utils.py +75 -0
- farmwise_api-0.1.0rc1/tests/test_auth_router.py +40 -0
- farmwise_api-0.1.0rc1/tests/test_bug_sweep_regressions.py +221 -0
- farmwise_api-0.1.0rc1/tests/test_categorical_handling.py +122 -0
- farmwise_api-0.1.0rc1/tests/test_cds_data_read.py +46 -0
- farmwise_api-0.1.0rc1/tests/test_cds_single_levels.py +129 -0
- farmwise_api-0.1.0rc1/tests/test_cells_to_coordinates.py +49 -0
- farmwise_api-0.1.0rc1/tests/test_chmi_meteo.py +174 -0
- farmwise_api-0.1.0rc1/tests/test_coordinates_to_cells.py +86 -0
- farmwise_api-0.1.0rc1/tests/test_corine_classes.py +95 -0
- farmwise_api-0.1.0rc1/tests/test_corine_read.py +89 -0
- farmwise_api-0.1.0rc1/tests/test_crud.py +58 -0
- farmwise_api-0.1.0rc1/tests/test_data_call.py +296 -0
- farmwise_api-0.1.0rc1/tests/test_data_call_router.py +191 -0
- farmwise_api-0.1.0rc1/tests/test_data_operators.py +50 -0
- farmwise_api-0.1.0rc1/tests/test_db_users.py +86 -0
- farmwise_api-0.1.0rc1/tests/test_eea.py +82 -0
- farmwise_api-0.1.0rc1/tests/test_eea_unit.py +106 -0
- farmwise_api-0.1.0rc1/tests/test_egdi_nodata.py +30 -0
- farmwise_api-0.1.0rc1/tests/test_email_utils.py +69 -0
- farmwise_api-0.1.0rc1/tests/test_entrypoints.py +17 -0
- farmwise_api-0.1.0rc1/tests/test_evaluation.py +402 -0
- farmwise_api-0.1.0rc1/tests/test_evaluation_design.py +555 -0
- farmwise_api-0.1.0rc1/tests/test_fetch_data.py +46 -0
- farmwise_api-0.1.0rc1/tests/test_generate_cells.py +57 -0
- farmwise_api-0.1.0rc1/tests/test_geosphere.py +179 -0
- farmwise_api-0.1.0rc1/tests/test_get_piezo_stations.py +48 -0
- farmwise_api-0.1.0rc1/tests/test_gios_api_stations.py +71 -0
- farmwise_api-0.1.0rc1/tests/test_gios_scraper.py +119 -0
- farmwise_api-0.1.0rc1/tests/test_groundwater_level_convention.py +80 -0
- farmwise_api-0.1.0rc1/tests/test_harmonization.py +253 -0
- farmwise_api-0.1.0rc1/tests/test_hashing_utils.py +16 -0
- farmwise_api-0.1.0rc1/tests/test_hubeau_piezo_read.py +80 -0
- farmwise_api-0.1.0rc1/tests/test_hubeau_quality.py +185 -0
- farmwise_api-0.1.0rc1/tests/test_hubeau_units.py +189 -0
- farmwise_api-0.1.0rc1/tests/test_imgw_api_hydro_daily.py +124 -0
- farmwise_api-0.1.0rc1/tests/test_imgw_api_synop_daily.py +124 -0
- farmwise_api-0.1.0rc1/tests/test_imgw_synop_archives.py +134 -0
- farmwise_api-0.1.0rc1/tests/test_imgw_utils.py +67 -0
- farmwise_api-0.1.0rc1/tests/test_interpolate_coverage.py +105 -0
- farmwise_api-0.1.0rc1/tests/test_interpolate_data.py +86 -0
- farmwise_api-0.1.0rc1/tests/test_irish_meteo.py +230 -0
- farmwise_api-0.1.0rc1/tests/test_main.py +68 -0
- farmwise_api-0.1.0rc1/tests/test_main_call.py +699 -0
- farmwise_api-0.1.0rc1/tests/test_map_ploter.py +107 -0
- farmwise_api-0.1.0rc1/tests/test_name_to_coordinates.py +51 -0
- farmwise_api-0.1.0rc1/tests/test_overlap_checks.py +24 -0
- farmwise_api-0.1.0rc1/tests/test_packaging.py +311 -0
- farmwise_api-0.1.0rc1/tests/test_partial_observation_rows.py +113 -0
- farmwise_api-0.1.0rc1/tests/test_paths.py +253 -0
- farmwise_api-0.1.0rc1/tests/test_proj_env.py +120 -0
- farmwise_api-0.1.0rc1/tests/test_quadica.py +200 -0
- farmwise_api-0.1.0rc1/tests/test_quality_assess.py +215 -0
- farmwise_api-0.1.0rc1/tests/test_registry.py +153 -0
- farmwise_api-0.1.0rc1/tests/test_registry_rendering.py +142 -0
- farmwise_api-0.1.0rc1/tests/test_reproject_raster.py +50 -0
- farmwise_api-0.1.0rc1/tests/test_scheduler.py +39 -0
- farmwise_api-0.1.0rc1/tests/test_schemas.py +132 -0
- farmwise_api-0.1.0rc1/tests/test_security.py +130 -0
- farmwise_api-0.1.0rc1/tests/test_server_workers.py +83 -0
- farmwise_api-0.1.0rc1/tests/test_services.py +27 -0
- farmwise_api-0.1.0rc1/tests/test_soilgrids_call.py +66 -0
- farmwise_api-0.1.0rc1/tests/test_sql_schemas.py +74 -0
- farmwise_api-0.1.0rc1/tests/test_station_builders.py +64 -0
- farmwise_api-0.1.0rc1/tests/test_water_adapters.py +399 -0
- farmwise_api-0.1.0rc1/tests/test_wetterdienst_dwd.py +293 -0
- farmwise_api-0.1.0rc1/tests/test_within_source_aggregation.py +109 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
message: >-
|
|
3
|
+
If you use FARMWISE-API in research, please cite the software using this
|
|
4
|
+
metadata.
|
|
5
|
+
title: FARMWISE-API
|
|
6
|
+
type: software
|
|
7
|
+
authors:
|
|
8
|
+
- names: "Kamil Smolak, Dominik Teodorczyk, Jakub Misiewicz, Marc Laurencelle, Wiesław Fiałkiewicz, Arkadiusz Głogowski"
|
|
9
|
+
email: "kamil.smolak@upwr.edu.pl"
|
|
10
|
+
version: 0.1.0rc1
|
|
11
|
+
repository-code: "https://github.com/SmolakK/FARMWISE-API"
|
|
12
|
+
url: "https://github.com/SmolakK/FARMWISE-API"
|
|
13
|
+
license: Apache-2.0
|
|
14
|
+
abstract: >-
|
|
15
|
+
FARMWISE-API is a Python library and FastAPI service for selecting,
|
|
16
|
+
retrieving, harmonising, and assessing European agricultural and
|
|
17
|
+
environmental data in a common S2-cell representation.
|
|
18
|
+
keywords:
|
|
19
|
+
- agriculture
|
|
20
|
+
- environmental data
|
|
21
|
+
- geospatial data
|
|
22
|
+
- S2 geometry
|
|
23
|
+
- data harmonisation
|
|
24
|
+
date-released: "2026-09-24"
|
|
25
|
+
# doi: "10.5281/zenodo.REPLACE_WITH_RECORD_ID"
|
|
26
|
+
# Citation will appear here
|
|
@@ -0,0 +1,433 @@
|
|
|
1
|
+
# FARMWISE data licensing and attribution register
|
|
2
|
+
|
|
3
|
+
Last reviewed: 2026-09-10
|
|
4
|
+
|
|
5
|
+
This register covers third-party datasets accessed, cached, transformed, or
|
|
6
|
+
redistributed by FARMWISE. The Apache License 2.0 in [`LICENSE`](LICENSE)
|
|
7
|
+
applies to FARMWISE source code only. It does not relicense third-party data.
|
|
8
|
+
|
|
9
|
+
An API response or downloadable export containing third-party observations is
|
|
10
|
+
also a redistribution of data, even when FARMWISE deletes its temporary copy
|
|
11
|
+
after the response. Every export must therefore retain the applicable source,
|
|
12
|
+
licence, access date, and modification notices listed below.
|
|
13
|
+
|
|
14
|
+
## Status definitions
|
|
15
|
+
|
|
16
|
+
- **Allowed**: redistribution is permitted when the stated conditions are met.
|
|
17
|
+
- **Conditional**: do not mirror or bundle the dataset until the listed issue
|
|
18
|
+
is resolved for the intended use.
|
|
19
|
+
- **Prohibited**: FARMWISE has not identified a licence granting redistribution.
|
|
20
|
+
- **Disabled**: the source is not dispatched and old cached copies must not be
|
|
21
|
+
published without their original licence metadata.
|
|
22
|
+
|
|
23
|
+
## Source register
|
|
24
|
+
|
|
25
|
+
### GeoSphere Austria daily station data
|
|
26
|
+
|
|
27
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.geosphere.geosphere`
|
|
28
|
+
- **Dataset/resource:** Station Data-v2 (1 d), resource `klima-v2-1d`
|
|
29
|
+
- **Local persistence:** response data is processed in memory; derived server
|
|
30
|
+
exports and quality reports may be persisted.
|
|
31
|
+
- **Provider:** GeoSphere Austria
|
|
32
|
+
- **Source:** <https://dataset.api.hub.geosphere.at/app/frontend/station/historical/klima-v2-1d>
|
|
33
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
34
|
+
- **Required attribution:** identify GeoSphere Austria and Station Data-v2
|
|
35
|
+
(1 d), link the source and CC BY 4.0, state the access date, and indicate
|
|
36
|
+
that FARMWISE filtered and aggregated station records into S2 cells.
|
|
37
|
+
- **Redistribution status:** **Allowed**.
|
|
38
|
+
|
|
39
|
+
### Deutscher Wetterdienst observations
|
|
40
|
+
|
|
41
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.wetterdienst.wetterdienst_dwd`
|
|
42
|
+
- **Dataset/resource:** DWD Climate Data Center/Open Data observations accessed
|
|
43
|
+
through Wetterdienst.
|
|
44
|
+
- **Local persistence:** Wetterdienst may maintain its own disk cache; derived
|
|
45
|
+
server exports and quality reports may be persisted.
|
|
46
|
+
- **Provider:** Deutscher Wetterdienst (DWD)
|
|
47
|
+
- **Source:** <https://opendata.dwd.de/climate_environment/CDC/>
|
|
48
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
49
|
+
- **Terms:** <https://www.dwd.de/DE/leistungen/opendata/faqs_opendata.html>
|
|
50
|
+
- **Required attribution:** identify Deutscher Wetterdienst and the source
|
|
51
|
+
service. For aggregated FARMWISE output, use a modification notice such as
|
|
52
|
+
`Datenbasis: Deutscher Wetterdienst, Einzelwerte gemittelt` and describe S2
|
|
53
|
+
and temporal aggregation.
|
|
54
|
+
- **Redistribution status:** **Allowed**.
|
|
55
|
+
|
|
56
|
+
### SoilGrids
|
|
57
|
+
|
|
58
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.soilgrids.soilgrids_call`
|
|
59
|
+
- **Dataset/resource:** SoilGrids 2.0 predicted soil-property maps.
|
|
60
|
+
- **Local resources:** `farmwise_api/adapters/API_readers/soilgrids/temp_storage/*.tif`
|
|
61
|
+
and per-request scratch GeoTIFFs.
|
|
62
|
+
- **Provider:** ISRIC — World Soil Information
|
|
63
|
+
- **Source:** <https://soilgrids.org/>
|
|
64
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
65
|
+
- **Terms and citation:** <https://docs.isric.org/globaldata/soilgrids/SoilGrids_faqs_04.html>
|
|
66
|
+
- **Required attribution:** cite SoilGrids 2.0 and Poggio et al. (2021), link
|
|
67
|
+
the licence and source, and indicate clipping/resampling/S2 aggregation.
|
|
68
|
+
- **Redistribution status:** **Allowed**.
|
|
69
|
+
|
|
70
|
+
### ERA5 single-level reanalysis
|
|
71
|
+
|
|
72
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.cds.cds_single_levels`
|
|
73
|
+
- **Dataset/resource:** `reanalysis-era5-single-levels`
|
|
74
|
+
- **Local persistence:** temporary NetCDF or ZIP-wrapped NetCDF files are
|
|
75
|
+
created per request and removed after processing.
|
|
76
|
+
- **Provider:** Copernicus Climate Change Service (C3S), implemented by ECMWF
|
|
77
|
+
- **Source:** <https://cds.climate.copernicus.eu/datasets/reanalysis-era5-single-levels>
|
|
78
|
+
- **DOI:** <https://doi.org/10.24381/cds.adbb2d47>
|
|
79
|
+
- **Licence:** CC-BY licence displayed by the dataset catalogue.
|
|
80
|
+
- **Access control:** retrieval is not anonymous. The retrieving user or
|
|
81
|
+
server operator must have an ECMWF/CDS account, sign in, manually accept the
|
|
82
|
+
ERA5 dataset terms, and configure their personal API token in `.cdsapirc` as
|
|
83
|
+
described by the [official CDS API setup](https://cds.climate.copernicus.eu/how-to-api).
|
|
84
|
+
A FARMWISE account does not satisfy these requirements.
|
|
85
|
+
- **Required attribution:** identify the Copernicus Climate Change Service,
|
|
86
|
+
cite the DOI and access date, link the applicable licence, and state that
|
|
87
|
+
FARMWISE converted units and aggregated hourly data to daily S2-cell output.
|
|
88
|
+
- **Credential handling:** never store a CDS token in the repository, package,
|
|
89
|
+
container image, application database, request payload, log, or export. In
|
|
90
|
+
server mode the current adapter uses the credentials of the operating-system
|
|
91
|
+
account running FARMWISE, not the authenticated FARMWISE API caller.
|
|
92
|
+
- **Redistribution status:** **Allowed** when the licence and attribution
|
|
93
|
+
conditions are met; authenticated upstream retrieval and prior acceptance
|
|
94
|
+
of the dataset terms are still required. A deployment requiring acceptance
|
|
95
|
+
by each end user must not dispatch ERA5 until secure per-user credential
|
|
96
|
+
delegation is implemented.
|
|
97
|
+
|
|
98
|
+
### CDS satellite land cover
|
|
99
|
+
|
|
100
|
+
- **Adapter/helper:** `farmwise_api.adapters.API_readers.cds.cds_land_cover` (not currently
|
|
101
|
+
registered for normal dispatch)
|
|
102
|
+
- **Dataset/resource:** `satellite-land-cover`
|
|
103
|
+
- **Local persistence:** ZIP and extracted products may be written to
|
|
104
|
+
`farmwise_api/adapters/API_readers/cds/temp_storage/`.
|
|
105
|
+
- **Source:** <https://cds.climate.copernicus.eu/datasets/satellite-land-cover>
|
|
106
|
+
- **DOI:** <https://doi.org/10.24381/cds.006f2c9a>
|
|
107
|
+
- **Licence:** the catalogue lists ESA CCI, CC-BY, and VITO licences. The
|
|
108
|
+
applicable notices depend on product version and input provider.
|
|
109
|
+
- **Required attribution:** preserve all licence and provider notices supplied
|
|
110
|
+
with the downloaded product, cite the DOI and access date, and state all
|
|
111
|
+
transformations.
|
|
112
|
+
- **Redistribution status:** **Conditional**. Do not mirror a downloaded
|
|
113
|
+
archive under a generic CC BY label; record the exact licences accompanying
|
|
114
|
+
that archive first.
|
|
115
|
+
|
|
116
|
+
### IMGW-PIB meteorological and hydrological observations
|
|
117
|
+
|
|
118
|
+
- **Adapters:** `farmwise_api.adapters.API_readers.imgw.imgw_api_synop_daily` and
|
|
119
|
+
`farmwise_api.adapters.API_readers.imgw_hydro.imgw_api_hydro_daily`
|
|
120
|
+
- **Local resources:** protected station-coordinate files are not bundled or
|
|
121
|
+
distributed. A permitted local user must supply them privately through
|
|
122
|
+
`FARMWISE_DATA_DIR`.
|
|
123
|
+
- **Provider:** Instytut Meteorologii i Gospodarki Wodnej — Państwowy Instytut
|
|
124
|
+
Badawczy (IMGW-PIB)
|
|
125
|
+
- **Source and terms:** <https://danepubliczne.imgw.pl/datastore>
|
|
126
|
+
- **Permitted purpose in FARMWISE:** local private/non-commercial use and
|
|
127
|
+
academic research or teaching by an eligible university or research
|
|
128
|
+
institution, subject to the current IMGW-PIB terms. The adapter is disabled
|
|
129
|
+
in all public server entry points. Academic evaluation additionally requires
|
|
130
|
+
the explicit acknowledgement `FARMWISE_ENABLE_RESEARCH_IMGW=1` (the legacy
|
|
131
|
+
`FARMWISE_ENABLE_PRIVATE_IMGW` name remains accepted).
|
|
132
|
+
- **Required attribution:** include the exact statement
|
|
133
|
+
`Źródłem pochodzenia danych jest Instytut Meteorologii i Gospodarki Wodnej – Państwowy Instytut Badawczy`.
|
|
134
|
+
For processed data also include
|
|
135
|
+
`Dane Instytutu Meteorologii i Gospodarki Wodnej – Państwowego Instytutu Badawczego zostały przetworzone`.
|
|
136
|
+
- **Redistribution status:** **Conditional**. Do not bundle or mirror IMGW
|
|
137
|
+
source datasets or station files in GitHub releases, PyPI, Zenodo, or
|
|
138
|
+
containers, and do not expose them through the public FARMWISE server.
|
|
139
|
+
Academic evaluation statistics and figures may be published when the
|
|
140
|
+
required source and processing notices are retained. Commercial or other
|
|
141
|
+
uses outside the stated terms require a separate agreement with IMGW-PIB and
|
|
142
|
+
a subsequent policy review.
|
|
143
|
+
|
|
144
|
+
### GIOŚ soil monitoring and groundwater monitoring
|
|
145
|
+
|
|
146
|
+
- **Adapters:** `farmwise_api.adapters.API_readers.gios.gios_scraper` and
|
|
147
|
+
`farmwise_api.adapters.API_readers.gios_gw.gios_gw`
|
|
148
|
+
- **Local resources:**
|
|
149
|
+
`farmwise_api/adapters/API_readers/gios/constants/gios_coordinates.csv` and
|
|
150
|
+
`farmwise_api/adapters/API_readers/gios_gw/constants/gios_gw_stations.csv`.
|
|
151
|
+
- **Provider:** Główny Inspektorat Ochrony Środowiska (GIOŚ)
|
|
152
|
+
- **Terms:** <https://www.gov.pl/web/gios/ponowne-wykorzystywanie-danych>
|
|
153
|
+
- **Required attribution:** use either `Źródło danych: Główny Inspektorat
|
|
154
|
+
Ochrony Środowiska` or `Źródło danych: GIOŚ`; state that FARMWISE filtered,
|
|
155
|
+
normalized, and aggregated the data.
|
|
156
|
+
- **Redistribution status:** **Allowed** for information published through
|
|
157
|
+
GIOŚ systems, subject to the stated attribution and any dataset-specific
|
|
158
|
+
conditions.
|
|
159
|
+
|
|
160
|
+
### CORINE Land Cover
|
|
161
|
+
|
|
162
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.corine.corine_read`
|
|
163
|
+
- **Dataset/resource:** CORINE Land Cover map services for requested reference
|
|
164
|
+
years.
|
|
165
|
+
- **Local persistence:** fetched raster images are processed per request;
|
|
166
|
+
derived server exports may be persisted.
|
|
167
|
+
- **Provider:** European Union's Copernicus Land Monitoring Service (CLMS)
|
|
168
|
+
- **Source:** <https://land.copernicus.eu/en/products/corine-land-cover>
|
|
169
|
+
- **Policy:** <https://land.copernicus.eu/en/data-policy>
|
|
170
|
+
- **Licence/policy:** full, open, and free access, including redistribution and
|
|
171
|
+
commercial use, subject to source and modification notices.
|
|
172
|
+
- **Required attribution for derived output:** `Generated using European
|
|
173
|
+
Union's Copernicus Land Monitoring Service information` followed by the
|
|
174
|
+
dataset URL/DOI and access date. Clearly state FARMWISE modifications and do
|
|
175
|
+
not imply EU endorsement.
|
|
176
|
+
- **Redistribution status:** **Allowed**.
|
|
177
|
+
|
|
178
|
+
### EGDI / GeoERA HOVER WP7 DRASTIC layers
|
|
179
|
+
|
|
180
|
+
- **Adapters:** `farmwise_api.adapters.API_readers.egdi.egdi_read_hc` and
|
|
181
|
+
`farmwise_api.adapters.API_readers.egdi.egdi_read_d10`
|
|
182
|
+
- **Local resources:** not bundled. A local user may place lawfully obtained
|
|
183
|
+
files under `egdi/data/` in `FARMWISE_DATA_DIR`.
|
|
184
|
+
- **Originator:** Federal Institute for Geosciences and Natural Resources
|
|
185
|
+
(BGR), distributed through EGDI
|
|
186
|
+
- **Metadata:** <https://metadata.europe-geology.eu/record/basic/60e6fc02-e01c-40c5-b878-73990a010833>
|
|
187
|
+
- **Declared conditions:** `Copyright (All Rights Reserved)`; public access has
|
|
188
|
+
no limitation, but no redistribution licence is granted.
|
|
189
|
+
- **Redistribution status:** **Prohibited** without written permission from
|
|
190
|
+
the rights holder. These files must not be included in GitHub, PyPI, Zenodo,
|
|
191
|
+
containers, releases, or public API downloads. Both EGDI adapters are
|
|
192
|
+
excluded from public packages and from runtime dispatch. Local users may
|
|
193
|
+
provide their own lawfully obtained files through `FARMWISE_DATA_DIR` only
|
|
194
|
+
when using a private source checkout.
|
|
195
|
+
|
|
196
|
+
### Hub'Eau water data
|
|
197
|
+
|
|
198
|
+
- **Adapters:** `farmwise_api.adapters.API_readers.hubeau.hubeau_wq_read`,
|
|
199
|
+
`farmwise_api.adapters.API_readers.hubeau.hubeau_piezo_read_vbrgm`, and
|
|
200
|
+
`farmwise_api.adapters.API_readers.hubeau.hubeau_sw_quality_read`
|
|
201
|
+
- **Local resources:** station and parameter selections under
|
|
202
|
+
`farmwise_api/adapters/API_readers/hubeau/constants/`.
|
|
203
|
+
- **Providers:** Office français de la biodiversité (OFB), BRGM, Service
|
|
204
|
+
Central Vigicrues, and the producers identified by individual records.
|
|
205
|
+
- **Source:** <https://hubeau.eaufrance.fr/>
|
|
206
|
+
- **Terms:** <https://hubeau.eaufrance.fr/page/conditions-generales>
|
|
207
|
+
- **Licence:** Licence Ouverte / Open Licence Etalab 2.0
|
|
208
|
+
- **Required attribution:** identify Hub'Eau and the record's original
|
|
209
|
+
producer(s), provide the source URL and access date, and indicate FARMWISE
|
|
210
|
+
filtering and S2 aggregation.
|
|
211
|
+
- **Redistribution status:** **Allowed**.
|
|
212
|
+
|
|
213
|
+
### Ukrainian surface-water monitoring
|
|
214
|
+
|
|
215
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.UA_sw_quality.ukrainian_surface_water`
|
|
216
|
+
- **Dataset/resource:** state monitoring observations for Ukrainian surface
|
|
217
|
+
waters.
|
|
218
|
+
- **Local persistence:** source CSVs are processed in memory; derived server
|
|
219
|
+
exports may be persisted.
|
|
220
|
+
- **Provider:** State Agency of Water Resources of Ukraine
|
|
221
|
+
- **Source:** <https://data.gov.ua/dataset/surface-water-monitoring>
|
|
222
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
223
|
+
- **Required attribution:** identify the State Agency of Water Resources of
|
|
224
|
+
Ukraine, link the dataset and licence, state the access date, and describe
|
|
225
|
+
FARMWISE cleaning, renaming, filtering, and S2 aggregation.
|
|
226
|
+
- **Redistribution status:** **Allowed**.
|
|
227
|
+
|
|
228
|
+
### EPA Ireland groundwater observations
|
|
229
|
+
|
|
230
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.epa_ireland.epa_gw`
|
|
231
|
+
- **Local resource:**
|
|
232
|
+
`farmwise_api/adapters/API_readers/epa_ireland/constants/EPA_coordinates.csv`.
|
|
233
|
+
- **Provider:** Environmental Protection Agency Ireland
|
|
234
|
+
- **Source:** station downloads referenced from EPA Hydronet; general EPA data
|
|
235
|
+
portal at <https://data.epa.ie/>.
|
|
236
|
+
- **Policy:** <https://gis.epa.ie/ContactUs/Policy>
|
|
237
|
+
- **Licence:** EPA-produced data is made available under CC BY 4.0.
|
|
238
|
+
- **Required attribution:** identify EPA Ireland, link the source and licence,
|
|
239
|
+
state the access date and FARMWISE modifications.
|
|
240
|
+
- **Special restriction:** Ordnance Survey Ireland base maps, aerial imagery,
|
|
241
|
+
and other third-party map content displayed by EPA services are not covered
|
|
242
|
+
by EPA's CC BY grant and must not be copied into FARMWISE exports.
|
|
243
|
+
- **Redistribution status:** **Allowed** for EPA-produced station data only.
|
|
244
|
+
|
|
245
|
+
### Met Éireann daily station observations
|
|
246
|
+
|
|
247
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.irish_meteo.irish_ms_daily`
|
|
248
|
+
- **Local resource:**
|
|
249
|
+
`farmwise_api/adapters/API_readers/irish_meteo/EPA_ireland_stations.csv`.
|
|
250
|
+
- **Provider:** Met Éireann
|
|
251
|
+
- **Source:** <https://cli.fusio.net/cli/climate_data/webdata/>
|
|
252
|
+
- **Published licence example and attribution terms:**
|
|
253
|
+
<https://data.gov.ie/dataset/latest-observations>
|
|
254
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
255
|
+
- **Required attribution:** retain all five statements required by Met Éireann:
|
|
256
|
+
copyright Met Éireann; source `www.met.ie`; CC BY 4.0 licence and link; the
|
|
257
|
+
Met Éireann no-liability disclaimer; and, where applicable, an indication
|
|
258
|
+
that FARMWISE modified the material.
|
|
259
|
+
- **Redistribution status:** **Allowed**.
|
|
260
|
+
|
|
261
|
+
### EuroCropV2
|
|
262
|
+
|
|
263
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.EuroCropV2.EuroCropV2_read`
|
|
264
|
+
- **Local resource:** `farmwise_api/adapters/API_readers/EuroCropV2/data/points.csv`.
|
|
265
|
+
- **Provider:** European Commission, Joint Research Centre (JRC), with the
|
|
266
|
+
contributors identified in the dataset catalogue.
|
|
267
|
+
- **Source:** <https://data.jrc.ec.europa.eu/dataset/b9fb9e67-78a9-4327-9d59-39a928d812d3>
|
|
268
|
+
- **DOI:** <https://doi.org/10.2905/JRC.FX0BVKR>
|
|
269
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
270
|
+
- **Copyright notice:** <https://jeodpp.jrc.ec.europa.eu/ftp/jrc-opendata/DRLL/EuroCropsV2/copyright.txt>
|
|
271
|
+
- **Required attribution:** cite `European Commission, Joint Research Centre
|
|
272
|
+
(2026): EuroCropsV2`, the DOI, source, and CC BY 4.0; state that parcel
|
|
273
|
+
geometry/attributes were converted or reformatted into FARMWISE point data.
|
|
274
|
+
- **Redistribution status:** **Allowed**, but the multi-gigabyte derived file
|
|
275
|
+
must be hosted as a separately licensed data artifact, not embedded in the
|
|
276
|
+
Git repository or PyPI wheel.
|
|
277
|
+
|
|
278
|
+
### CORRECTIV.Lokal groundwater data
|
|
279
|
+
|
|
280
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.correctiv.correctiv_read`
|
|
281
|
+
- **Local resource:** protected Parquet data is not bundled, mirrored, or
|
|
282
|
+
listed in the remote-data manifest.
|
|
283
|
+
- **Provider:** CORRECTIV (CORRECTIV.Lokal), compiling observations supplied
|
|
284
|
+
by the groundwater monitoring authorities of 13 German federal states.
|
|
285
|
+
- **Dataset/resource:** monthly minimum, mean and maximum groundwater levels
|
|
286
|
+
in metres above sea level for roughly 6,700 monitoring stations, 1990-2021,
|
|
287
|
+
with long-term trend classifications.
|
|
288
|
+
- **Source:** <https://github.com/correctiv/grundwasser-data>
|
|
289
|
+
- **Declared licence:** the repository declares GPL-3.0 and requires the
|
|
290
|
+
CORRECTIV.Lokal attribution rules to be followed. GPL-3.0 is a software
|
|
291
|
+
licence; it does not clearly grant redistribution of the compiled
|
|
292
|
+
observational dataset, which is why the rights status below is unchanged.
|
|
293
|
+
- **Rights status:** **protected**. A code licence in a repository must not be
|
|
294
|
+
treated as permission to redistribute the compiled research dataset or its
|
|
295
|
+
authority-supplied observations. CORRECTIV.Lokal also provides research
|
|
296
|
+
material under cooperation and naming conditions.
|
|
297
|
+
- **Redistribution status:** **Prohibited** without explicit written
|
|
298
|
+
permission covering this exact dataset and intended use. The adapter is
|
|
299
|
+
excluded from dispatch. Do not place the Parquet file or derived row-level
|
|
300
|
+
data in GitHub, PyPI, Zenodo, containers, caches shared between users,
|
|
301
|
+
evaluation outputs, API responses, or remote-download manifests.
|
|
302
|
+
|
|
303
|
+
### IFSGRID agricultural census data
|
|
304
|
+
|
|
305
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.IFSGRID.IFSGRID_read`
|
|
306
|
+
- **Local resources:** shapefile layers under
|
|
307
|
+
`farmwise_api/adapters/API_readers/IFSGRID/data/IFSGRID/data/` and
|
|
308
|
+
`farmwise_api/adapters/API_readers/IFSGRID/utils/definitions.json`.
|
|
309
|
+
- **Provider:** Eurostat and contributing national statistical authorities
|
|
310
|
+
- **Source/DOI:** <https://doi.org/10.5281/zenodo.14852709>
|
|
311
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
312
|
+
- **Required attribution:** cite Eurostat (2025), `Geospatial data from
|
|
313
|
+
agricultural census, IFSGRID`, the DOI and CC BY 4.0; indicate FARMWISE
|
|
314
|
+
filtering, field selection, and S2 aggregation.
|
|
315
|
+
- **Special restriction:** the official release excludes Germany because its
|
|
316
|
+
release was not approved. Do not add German agricultural census microdata or
|
|
317
|
+
inferred layers from a non-approved source.
|
|
318
|
+
- **Redistribution status:** **Allowed** for the official Zenodo release.
|
|
319
|
+
|
|
320
|
+
### EEA Environmental Zones 2018
|
|
321
|
+
|
|
322
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.eea.eea_read`
|
|
323
|
+
- **Local resource:**
|
|
324
|
+
`farmwise_api/adapters/API_readers/eea/eea_data/eea_r_3035_1_km_env-zones_p_2018_v01_r00.tif`.
|
|
325
|
+
- **Distributor:** European Environment Agency (EEA)
|
|
326
|
+
- **EEA source:** <https://www.eea.europa.eu/en/datahub/datahubitem-view/c8c4144a-8c0e-4686-9422-80dbf86bc0cb>
|
|
327
|
+
- **Underlying dataset:** Marc J. Metzger (2018), The Environmental
|
|
328
|
+
Stratification of Europe, University of Edinburgh,
|
|
329
|
+
<https://doi.org/10.7488/ds/2356>.
|
|
330
|
+
- **Licence/policy:** the EEA product is designated full and open; the
|
|
331
|
+
underlying EnS dataset is CC BY 4.0.
|
|
332
|
+
- **Required attribution:** identify EEA as distributor and cite Marc J.
|
|
333
|
+
Metzger/University of Edinburgh and the DOI; link CC BY 4.0 and state raster
|
|
334
|
+
conversion, reprojection, clipping, and S2 aggregation performed by
|
|
335
|
+
EEA/FARMWISE as applicable.
|
|
336
|
+
- **Redistribution status:** **Allowed**.
|
|
337
|
+
|
|
338
|
+
### QUADICA v1 water quality, discharge, and catchment drivers
|
|
339
|
+
|
|
340
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.quadica.quadica_read`
|
|
341
|
+
- **Dataset/resource:** QUADICA v1, HydroShare DOI
|
|
342
|
+
<https://doi.org/10.4211/hs.0ec5f43e43c349ff818a8d57699c0fe1>.
|
|
343
|
+
- **Local resources:** prepared CSV derivatives under
|
|
344
|
+
`FARMWISE_DATA_DIR/quadica/data/`; they are excluded from Git and pip
|
|
345
|
+
distributions.
|
|
346
|
+
- **Provider/authors:** Pia Ebeling, Rohini Kumar, Michael Weber, and Andreas
|
|
347
|
+
Musolff; Helmholtz Centre for Environmental Research (UFZ), distributed
|
|
348
|
+
through CUAHSI HydroShare.
|
|
349
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/).
|
|
350
|
+
- **Required attribution:** cite the HydroShare DOI and Ebeling et al. (2022),
|
|
351
|
+
<https://doi.org/10.5194/essd-14-3715-2022>; identify the access date and
|
|
352
|
+
state that coordinates were joined to source tables and that FARMWISE
|
|
353
|
+
filtered variables and aggregated stations into S2 cells.
|
|
354
|
+
- **Derivative-file condition:** the `*_with_coords.csv` files are not the
|
|
355
|
+
untouched HydroShare tables. Their provenance record must identify the
|
|
356
|
+
coordinate source and confirm that its licence permits redistribution.
|
|
357
|
+
- **Version boundary:** this entry covers QUADICA v1 only. QUADICA v2 must not
|
|
358
|
+
replace it without a separate schema and licensing review.
|
|
359
|
+
- **Redistribution status:** **Allowed** for QUADICA v1 and compliant
|
|
360
|
+
derivatives when CC BY attribution and all coordinate-source obligations are
|
|
361
|
+
retained.
|
|
362
|
+
|
|
363
|
+
### Czech Hydrometeorological Institute historical daily observations
|
|
364
|
+
|
|
365
|
+
- **Adapter:** `farmwise_api.adapters.API_readers.CHMI_Meteo.CHMI_meteo` (currently not
|
|
366
|
+
registered for normal dispatch)
|
|
367
|
+
- **Local resources:**
|
|
368
|
+
`farmwise_api/adapters/API_readers/CHMI_Meteo/json_files_list.txt`, runtime
|
|
369
|
+
`downloaded_json/`, and runtime `CHMI_merged_data.csv`.
|
|
370
|
+
- **Provider:** Český hydrometeorologický ústav (ČHMÚ/CHMI)
|
|
371
|
+
- **Source:** <https://opendata.chmi.cz/meteorology/climate/historical/data/daily/>
|
|
372
|
+
- **Metadata:** <https://geoportal.gov.cz/php/micka/record/basic/667bd7a6-4c94-4d23-833b-4f83fc0a8017c>
|
|
373
|
+
- **Licence:** [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)
|
|
374
|
+
- **Required attribution:** identify ČHMÚ, link the source and CC BY 4.0,
|
|
375
|
+
record the access date, and describe merging, filtering, renaming, and S2
|
|
376
|
+
aggregation.
|
|
377
|
+
- **Redistribution status:** **Allowed**.
|
|
378
|
+
|
|
379
|
+
## Generated FARMWISE artifacts
|
|
380
|
+
|
|
381
|
+
### Evaluation logs and figures
|
|
382
|
+
|
|
383
|
+
Files under `evaluation/logs/` and `evaluation/figures/` marked as synthetic
|
|
384
|
+
contain generated controls and may be distributed under the FARMWISE code or
|
|
385
|
+
documentation terms. Files generated from real source observations inherit
|
|
386
|
+
the attribution and licence obligations of every source represented in them.
|
|
387
|
+
Their accompanying manifest must distinguish synthetic and empirical output.
|
|
388
|
+
|
|
389
|
+
### Quality reports
|
|
390
|
+
|
|
391
|
+
Per-source JSON reports under the FARMWISE cache contain derived statistics,
|
|
392
|
+
not a licence-free replacement for the source data. A published report must
|
|
393
|
+
identify its source dataset(s), request period, processing date, and applicable
|
|
394
|
+
attribution. Reports must also be reviewed for user-identifying request data.
|
|
395
|
+
|
|
396
|
+
### Server exports
|
|
397
|
+
|
|
398
|
+
CSV, JSON, map, and ZIP responses produced by the server must carry a
|
|
399
|
+
machine-readable provenance record containing at least:
|
|
400
|
+
|
|
401
|
+
- adapter and dataset name;
|
|
402
|
+
- provider and source URL;
|
|
403
|
+
- licence identifier and URL;
|
|
404
|
+
- access/retrieval date;
|
|
405
|
+
- transformations performed by FARMWISE;
|
|
406
|
+
- required attribution and disclaimer text.
|
|
407
|
+
|
|
408
|
+
FARMWISE must not apply Apache-2.0 to the data portion of such exports.
|
|
409
|
+
|
|
410
|
+
## Non-data and sensitive files
|
|
411
|
+
|
|
412
|
+
`user_storage.db`, `farmwise_api/server/user_storage.db`, and any database under the
|
|
413
|
+
FARMWISE cache contain authentication/application state, not source data. They
|
|
414
|
+
must never be published, bundled, or uploaded to a data repository.
|
|
415
|
+
|
|
416
|
+
Logos, photographs, map tiles, and provider trademarks are outside this data
|
|
417
|
+
register unless explicitly listed. Permission to redistribute observations
|
|
418
|
+
does not automatically grant permission to reuse provider logos or third-party
|
|
419
|
+
base maps.
|
|
420
|
+
|
|
421
|
+
## Adding or updating a source
|
|
422
|
+
|
|
423
|
+
Before registering a new adapter or changing a dataset version:
|
|
424
|
+
|
|
425
|
+
1. Record the exact dataset page, provider, version, access date, and licence.
|
|
426
|
+
2. Save the required attribution and disclaimer text.
|
|
427
|
+
3. Confirm whether commercial use, adaptation, and redistribution are allowed.
|
|
428
|
+
4. Identify third-party inputs or jurisdiction-specific restrictions.
|
|
429
|
+
5. Document every persisted local path and whether it is bundled, cached, or
|
|
430
|
+
temporary.
|
|
431
|
+
6. Add provenance metadata to API exports and data manifests.
|
|
432
|
+
7. If the licence is absent or ambiguous, mark the source **Conditional** and
|
|
433
|
+
do not mirror or bundle it until written permission is obtained.
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
|
|
2
|
+
Apache License
|
|
3
|
+
Version 2.0, January 2004
|
|
4
|
+
http://www.apache.org/licenses/
|
|
5
|
+
|
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
7
|
+
|
|
8
|
+
1. Definitions.
|
|
9
|
+
|
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
12
|
+
|
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
14
|
+
the copyright owner that is granting the License.
|
|
15
|
+
|
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
17
|
+
other entities that control, are controlled by, or are under common
|
|
18
|
+
control with that entity. For the purposes of this definition,
|
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
20
|
+
direction or management of such entity, whether by contract or
|
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
23
|
+
|
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
25
|
+
exercising permissions granted by this License.
|
|
26
|
+
|
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
28
|
+
including but not limited to software source code, documentation
|
|
29
|
+
source, and configuration files.
|
|
30
|
+
|
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
|
32
|
+
transformation or translation of a Source form, including but
|
|
33
|
+
not limited to compiled object code, generated documentation,
|
|
34
|
+
and conversions to other media types.
|
|
35
|
+
|
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
37
|
+
Object form, made available under the License, as indicated by a
|
|
38
|
+
copyright notice that is included in or attached to the work
|
|
39
|
+
(an example is provided in the Appendix below).
|
|
40
|
+
|
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
47
|
+
the Work and Derivative Works thereof.
|
|
48
|
+
|
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
|
50
|
+
the original version of the Work and any modifications or additions
|
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
62
|
+
|
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
65
|
+
subsequently incorporated within the Work.
|
|
66
|
+
|
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
|
73
|
+
|
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
79
|
+
where such license applies only to those patent claims licensable
|
|
80
|
+
by such Contributor that are necessarily infringed by their
|
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
83
|
+
institute patent litigation against any entity (including a
|
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
86
|
+
or contributory patent infringement, then any patent licenses
|
|
87
|
+
granted to You under this License for that Work shall terminate
|
|
88
|
+
as of the date such litigation is filed.
|
|
89
|
+
|
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
92
|
+
modifications, and in Source or Object form, provided that You
|
|
93
|
+
meet the following conditions:
|
|
94
|
+
|
|
95
|
+
(a) You must give any other recipients of the Work or
|
|
96
|
+
Derivative Works a copy of this License; and
|
|
97
|
+
|
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
|
99
|
+
stating that You changed the files; and
|
|
100
|
+
|
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
|
103
|
+
attribution notices from the Source form of the Work,
|
|
104
|
+
excluding those notices that do not pertain to any part of
|
|
105
|
+
the Derivative Works; and
|
|
106
|
+
|
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
|
109
|
+
include a readable copy of the attribution notices contained
|
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
|
112
|
+
of the following places: within a NOTICE text file distributed
|
|
113
|
+
as part of the Derivative Works; within the Source form or
|
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
|
115
|
+
within a display generated by the Derivative Works, if and
|
|
116
|
+
wherever such third-party notices normally appear. The contents
|
|
117
|
+
of the NOTICE file are for informational purposes only and
|
|
118
|
+
do not modify the License. You may add Your own attribution
|
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
121
|
+
that such additional attribution notices cannot be construed
|
|
122
|
+
as modifying the License.
|
|
123
|
+
|
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
|
125
|
+
may provide additional or different license terms and conditions
|
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
129
|
+
the conditions stated in this License.
|
|
130
|
+
|
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
134
|
+
this License, without any additional terms or conditions.
|
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
136
|
+
the terms of any separate license agreement you may have executed
|
|
137
|
+
with Licensor regarding such Contributions.
|
|
138
|
+
|
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
141
|
+
except as required for reasonable and customary use in describing the
|
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
143
|
+
|
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
|
153
|
+
|
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
|
159
|
+
incidental, or consequential damages of any character arising as a
|
|
160
|
+
result of this License or out of the use or inability to use the
|
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
163
|
+
other commercial damages or losses), even if such Contributor
|
|
164
|
+
has been advised of the possibility of such damages.
|
|
165
|
+
|
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
169
|
+
or other liability obligations and/or rights consistent with this
|
|
170
|
+
License. However, in accepting such obligations, You may act only
|
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
175
|
+
of your accepting any such warranty or additional liability.
|
|
176
|
+
|
|
177
|
+
END OF TERMS AND CONDITIONS
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
Copyright [2026] [Kamil Smolak, Jakub Misiewicz, Arkadiusz Głogowski, Dominik Teodorczyk, Marc Laurencelle, Wiesław Fiałkiewicz]
|
|
181
|
+
|
|
182
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
183
|
+
you may not use this file except in compliance with the License.
|
|
184
|
+
You may obtain a copy of the License at
|
|
185
|
+
|
|
186
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
187
|
+
|
|
188
|
+
Unless required by applicable law or agreed to in writing, software
|
|
189
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
190
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
191
|
+
See the License for the specific language governing permissions and
|
|
192
|
+
limitations under the License.
|
|
193
|
+
|