Skip to content

Latest commit

 

History

History
114 lines (91 loc) · 5.98 KB

File metadata and controls

114 lines (91 loc) · 5.98 KB

Release Notes

2025/09/12

  1. fixed several bugs
  2. re-architected the major functions for Layers and Metrics
  3. added s3 caching of tiled layers
  4. added s3_bucket parameter
  5. greatly improved boundary clipping for CTCM layers
  6. Bounds clipping for the CTCM layers collided with the standard clipping used by other CIF layers, so created TreeCanopyHeightCTCM as a workaround.
  7. Publishing now stores error reports in "metadata" folders in S3 targets.
  8. Re-added opportunistic caching in retrieve_metric/data functions.

2025/08/27

  1. Removed opportunistic caching
  2. Added sub-tiled caching for large layers

2025/08/07

  1. Added default date range for Albedo layers

2025/08/06

  1. Added start_date and end_date parameters to Era5MetPreprocessingUmep and Era5MetPreprocessingUpenn metrics classes
  2. Changed default date values for Era5HottestDay layer to None since we do not hard-coded default values.

2025/08/05

  1. Added seasonal_utc_offset parameter to ERA5 classes
  2. Removed timezonefinder dependency

2025/06/28

  1. Added local API results caching
  2. Renamed local cache to

2025/06/24

  1. Added sub-tiling of layers as configured by the optional PROCESSING_TILE_SIDE_M constant in layer classes
  2. Added metric-specific sub-tiling using the optional CUSTOM_TILE_SIDE_M constant in metric classes
  3. Redesigned the GeoZone class for improved efficiency and to consistently process city-based metrics in UTM coordinates.
  4. Modified the create_fishnet_grid function to enclose all tiles fully within the specified AOI by trimming extents of files in NE corner to the AOI.

2025/06/01

  1. CDB-262: Updated written-file naming conventions.

2025/05/30

  1. Added s3_env parameters to write functions
  2. Changed write/read for metrics to CSV format, instead of geojson.
  3. Adjusted temp-file handling for both windows and Linux.
  4. Improved caching logic.

2025/05/24

  1. CDB-322. Fixed error in UTGlobus-to-Overture conflation that had produced many-to-one matches and resulting errors in height computation.
  2. Modified computation of UTGlobus heights to use mode or median computation. See updated https://gfw.atlassian.net/wiki/spaces/CIT/pages/1971912734/Primary+Raster+Layers+for+Thermal+Comfort+Modeling

2025/05/12

  1. Moved OpenUrban layer from C-TCM to CIF. Former location: https://github.com/wri/cities-thermal-comfort-modeling/blob/main/src/workers/open_urban.py

2025/05/09

  1. Re-implemented OvertureBuildingsDSM to fix a bug and improve cross-tile correspondence in building elevation.

2025/04/30

  1. Updated NasaDEM and AlosDSM to emit smoother surface interpolations for non-default resolutions.

2025/04/25

  1. Renamed overture_buildings_w_height_raster to overture_buildings_dsm and updated to return raster of Overture buildings combined with DEM.
  2. Added ut_globus_city_handler package for storing geopackage and query function for UT Globus cities. 2. This is a temporary solution until we have time to develop a service for finding Globus city by geometry.

2025/04/21

  1. Combined all bases classes into one file
  2. Removed retrieve_cached_city_data function call from derived classes
  3. Removed allow_cache_retrieval argument from get_data() method in layers
  4. Removed CifCacheSettings
  5. Updated zonal statistics to handle large, tiled retrievals
  6. Updated zonal statistics to handle multi-level city and admin polygons
  7. Added test_write_all_metrics_by_city.py to write metrics by city
  8. Converted some functions to static class methods to improve performance
  9. Changed AWS profile for credentials file to "cities-data-dev"
  10. TODOs:
    1. Performance of large cities needs to be tested since only small and moderate size have been run so far
    2. Update the naming conventions wiki: https://gfw.atlassian.net/wiki/spaces/CIT/pages/1886126084/Proposal+for+layer-id+naming

2025/04/14

  1. Added timeout_decorator to environment.yml
  2. Warning: Some tests in tests/resources folder write intermediate results to a shared S3 bucket, so there is some potential for collision between concurrent runs.
  3. Simplified tests and renamed some tests
  4. Refocused layer-write tests on query by city name instead of by bbox.

2025/04/9

  1. Merged some Layers and Metrics functions
  2. Increased granularity for controling whether individual tests are run by converting the old EXECUTE_IGNORED_TESTS boolean values into enums.

2025/04/7

  1. Created a Metric base class with get_data() and two write functions
  2. Converted each existing Metric function into a Metric class with get_data() function
  3. Added tests to write output of each class to a local system file
  4. Modified skip-if decorator for write tests to use DumpRunLevel enum

2025/04/2

  1. Added download of cached CIF results from S3 or a local directory when available.
    1. Caching is enabled by running the set_cache_settings function prior to getting or writing data.
  2. Added standardized naming of cached file storage such as into S3 buckets.
    1. The current naming convention must be reviewed by users. This wiki discusses naming conventions https://gfw.atlassian.net/wiki/spaces/CIT/pages/1886126084/Proposal+for+layer-id+naming
  3. Added the layer_dao.py file for handling calls to the cities-data-api API and S3.
  4. Added requirements for AWS credentials file.

2025/03/18

  1. Added ability to specify city_id+aoi for GeoExtent.
  2. Bounding coordinates for city_id+aoi are currently read from the cities-data-api.wri.org url since it is stable. Longer term, this url must be replace by the dev.cities-data-api.wri.org url once that API has stabilized.

2025/02/10 V0.2.1

  1. Added GeoExtent class supporting bbox coordinates in both UTM and geographic coordinates.
    1. redefined the bbox parameter on get_data() function as GeoExtent class.
    2. included several functions on GeoExtent to support conversion from/to projections and other functionality.
  2. Moved spatial_resolution and resampling_method from Layer class definitions to get_data() functions in all Layers.
  3. Extensive re-write of fishnet function to output in both UTM and geographic space.