[Epic] - Prepare exposure-lib for the 25.01 release

To prepare exposure-lib for the 25.01 release, the following issues need to be addressed:

  • Create an empty branch v25.01.
  • Create empty files abstract.py, spatialite.py and postgis.py to split the codes formerly in database.py (#169 (closed))
  • Exposure-lib should raise an exception if a SpatiaLite database is used with version < 3.45 (#177 (closed))
  • District assets and entity assets should reference the same asset table (#226 (closed))
  • Resolve differences between PostGISExposure implementation and SpatiaLiteExposure (#194 (closed), #197 (closed), #203 (closed)).
  • Prepare exposure-lib for entity-initializer:
  • Prepare exposure-lib for exposure-initializer:
    • Implement the create_tables() function for SpatiaLiteExposure (#170 (closed)).
    • Implement the functions to insert assets (#175 (closed), #200 (closed)).
    • Implement function to insert district built area (!182 (merged))
    • Implement Metadata functions (#210 (closed))
    • Implement taxonomy category properties (#204 (closed))
    • Implement retrieval of all boundary IDs of a country / territory (#215 (closed))
    • Implement insertion of Taxonomy dictionary instead of taxonomy object (#218 (closed))
    • Implement insertion of Tabula taxonomy in the district assets (#219 (closed))
    • Introduce constant factor applied for GHSL built up area to determine the tile completeness (#239 (closed))
  • Prepare exposure-lib for exposure-finalizer:
    • Change the remove_exposure() function to only remove assets and call it delete_assets() (#172 to be joined with #175 (closed)).
    • Implement function get_tiles_in_country() (#222 (closed))
    • Implement function get_buildings_in_tile() (#223 (closed))
    • Implement constants for floor area calculation (#227 (closed))
    • Implement function to get all boundaries in one tile (#225 (closed))
    • Implement function to get all district assets in one country (#224 (closed))
    • Implement function to get the baseline assets of a country (#234 (closed))
    • Implement function to get the sum of baseline exposure attributes of a country (#233 (closed))
    • Implement function to delete assets (#232 (closed))
    • Introduce constants for floor area of buildings (#227 (closed))
    • Implement function to get the sum of asset values per asset and/or entity ID (#235 (closed))
    • Implement function to update asset attributes (#236 (closed))
    • Change function get_buildings_in_tile() to select net floor area instead of floorsapce (#242 (closed))
  • Implement unit and acceptance tests:

To start creating the 25.01 model:

  • Create beta version #243 (closed)
  • Implement necessary functions for creating spatialite exports (ExposureShare)
    • Implement function copy_from_database() to copy data from the PostGIS database onto a Spatialite one (#240 (closed))
    • Fix bug in function copy_from_database() which caused errors in exporting from databases without TABULA (#253 (closed))

\rfc @all

Edited by Pablo de la Mora Lobaton