spai 2026.3.11.dev0__tar.gz → 2026.3.18.dev0__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.
Potentially problematic release.
This version of spai might be problematic. Click here for more details.
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/PKG-INFO +1 -1
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/pyproject.toml +1 -1
- spai-2026.3.18.dev0/spai/__init__.py +1 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/load.py +19 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/LocalStorage.py +1 -1
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/S3Storage.py +1 -0
- spai-2026.3.11.dev0/spai/__init__.py +0 -1
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/.gitignore +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/README.md +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/00_setup.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/00bis_download_satellite_imagery.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/01_satellite_data_access.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/02_geospatial_data_access.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/03_storage.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/04_infra_management.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/05_mails.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/99_new_data_access.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/03_xyz_api.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/03_xyz_api.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/05_nominatim_example.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/06_colorize.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/10_select_one_gdf_from_map.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/11_forest_monitoring_flow.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/12_forest_monitoring.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/13_ms_buildings_download.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/13_water_quality_flow.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/14_download_dem.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/14_water_quality.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/15_perform_analysis.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/00_download_satellite_imagery.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/01_process_satellite_imagery.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/02_analytics.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/04_download_satellite_imagery_advanced.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/21_storage.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/llanca 2.geojson +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/llanca.geojson +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/map.geojson +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/sample.pdf +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/samples/AOI_Vegetation_Growth.json +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/makefile +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/analytics/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/analytics/forest_monitoring.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/analytics/utils.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/analytics/water_quality.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/auth/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/auth/auth.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/auth/is_logged.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/auth/logout.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/auth/retrieve_credentials.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/cli.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/commands/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/commands/auth.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/commands/list.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/commands/stop.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/commands/workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/config/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/config/config.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/config/validate.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/config/vars.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/climate/README.md +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/climate/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/climate/area_of_interest.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/climate/reanalysis_land_era5.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/ecosystems/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/ecosystems/protected_areas.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/fire/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/fire/fwi/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/fire/fwi/fwi_nasa.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/hidrology/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/hidrology/waterbodies.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/hidrology/waterways.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/download.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/explore.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PCH4Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PCODownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PHCHODownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PNO2Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PO3Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PSO2Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHCloudMaskDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHDEM30Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHExplorer.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS1Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2L1CDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2L2ADownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS3OLCIDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS3SLSTRDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/STACDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEM30Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEM90Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEMDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSS2L2ADownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/decorators.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCAlosPalsarAnnualDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCESAWCDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCLandsat8Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisBurnedDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisSnow8Downloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisSnowDayDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCS1GRDDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCS1RTCDownloader.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/utils.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/sources/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/sources/osm.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/utilities/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/utilities/buildings.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/utilities/pipelines.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/utilities/power.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/utilities/roads.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/errors/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/errors/auth.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/utils.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/xyz/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/xyz/cache.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/xyz/errors.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/xyz/get_image_tile.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/image/xyz/image_utils.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/models/Config.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/models/StorageConfig.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/models/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/autocategorize1D.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/colorize_raster.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/convert_array_to_vector.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/mask_raster.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/normalised_difference.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/px_count.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/rasterio_mask.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/read_raster.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/save_table.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/processing/utils.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/delete_project.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/deploy_folder.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/deploy_template.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/download_template.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_logs.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_project_by_name.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_projects.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_service_by_name_type_project.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_services.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/init_project.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/install_requirements.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/README.md +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/analytics/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/analytics/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/analytics/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/xyz/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/xyz/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/xyz/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/notebooks/analytics/main.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/notebooks/analytics/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/analytics/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/analytics/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/downloader/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/downloader/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/spai.config.local.yaml +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/spai.config.yaml +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/spai.vars.json +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/uis/map/main.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/uis/map/requirements.txt +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/run_local.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/stop_service.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/repos/APIRepo.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/repos/AuthRepo.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/repos/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/BaseStorage.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/CloudStorage.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/Storage.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/create_s3.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/decorators.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/storage/minio.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/task_logging/task_logger.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/add_user_to_workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/change_user_role.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/create_workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/get_workspaces.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/remove_user_from_workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/remove_workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/workspaces/update_workspace.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/config/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/config/test_vars.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/task_logging/test_task_logger.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_autocategorize1D.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_mask_raster.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_normalised_difference.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_px_count.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_read_raster.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_save_table.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_pulses/__init__.py +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_pulses/results_forest_monitoring.ipynb +0 -0
- {spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_pulses/results_water_quality.ipynb +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2026.03.18.dev0"
|
|
@@ -7,10 +7,24 @@ from datetime import datetime
|
|
|
7
7
|
|
|
8
8
|
from . import DOWNLOADERS, AVAILABLE_COLLECTIONS, STATIC_COLLECTIONS
|
|
9
9
|
from .stac.STACDownloader import STACDownloader
|
|
10
|
+
from .stac.pc.PCDownloader import PCDownloader
|
|
10
11
|
from .utils import create_aoi_geodataframe
|
|
11
12
|
from .explore import explore_satellite_imagery
|
|
12
13
|
|
|
13
14
|
|
|
15
|
+
# when running for more than 45 mins, a script that downloads data from planetary computer will fail with a token error
|
|
16
|
+
# this function clears the token cache to avoid this error
|
|
17
|
+
def _refresh_planetary_computer_tokens():
|
|
18
|
+
try:
|
|
19
|
+
from planetary_computer.sas import TOKEN_CACHE
|
|
20
|
+
|
|
21
|
+
TOKEN_CACHE.clear()
|
|
22
|
+
|
|
23
|
+
print("Planetary Computer tokens refreshed", flush=True)
|
|
24
|
+
except ImportError:
|
|
25
|
+
pass
|
|
26
|
+
|
|
27
|
+
|
|
14
28
|
def load_satellite_imagery(
|
|
15
29
|
aoi: Any,
|
|
16
30
|
date: Optional[List[Union[str, datetime]]] = None,
|
|
@@ -71,6 +85,11 @@ def load_satellite_imagery(
|
|
|
71
85
|
print("Try introducing a date parameter to load a specific image.")
|
|
72
86
|
return
|
|
73
87
|
|
|
88
|
+
if issubclass(
|
|
89
|
+
DOWNLOADERS[collection], PCDownloader
|
|
90
|
+
): # not sure if should apply to other Downloaders as well
|
|
91
|
+
_refresh_planetary_computer_tokens()
|
|
92
|
+
|
|
74
93
|
downloader = DOWNLOADERS[collection](bbox, date, **kwargs)
|
|
75
94
|
data = downloader.load_stac()
|
|
76
95
|
|
|
@@ -156,7 +156,7 @@ class LocalStorage(BaseStorage):
|
|
|
156
156
|
def list(self, pattern="*", recursive=True):
|
|
157
157
|
base_path = Path(self.path)
|
|
158
158
|
paths = base_path.rglob(pattern) if recursive else base_path.glob(pattern)
|
|
159
|
-
|
|
159
|
+
|
|
160
160
|
object_names = set()
|
|
161
161
|
zarr_roots = set()
|
|
162
162
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2026.03.11.dev0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/10_select_one_gdf_from_map.ipynb
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/11_forest_monitoring_flow.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/13_ms_buildings_download.ipynb
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/development/13_water_quality_flow.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/00_download_satellite_imagery.ipynb
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/examples/legacy/01_process_satellite_imagery.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PCODownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PDownloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/S5P/SHS5PO3Downloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHCloudMaskDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHDEM30Downloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS1Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2L1CDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS2L2ADownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS3OLCIDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/sentinelhub/SHS3SLSTRDownloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEM30Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEM90Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSDEMDownloader.py
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/aws/AWSS2L2ADownloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCESAWCDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCLandsat8Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisBurnedDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisSnow8Downloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCModisSnowDayDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCS1GRDDownloader.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/data/satellite/stac/pc/PCS1RTCDownloader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/get_service_by_name_type_project.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/analytics/__init__.py
RENAMED
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/analytics/main.py
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/xyz/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/apis/xyz/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/analytics/main.py
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/scripts/downloader/main.py
RENAMED
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/spai.config.local.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/spai/project/project_template/uis/map/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_processing/test_normalised_difference.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{spai-2026.3.11.dev0 → spai-2026.3.18.dev0}/tests/test_pulses/results_forest_monitoring.ipynb
RENAMED
|
File without changes
|
|
File without changes
|