NREL / routee-compass

The RouteE-Compass energy-aware routing engine
https://nrel.github.io/routee-compass/
BSD 3-Clause "New" or "Revised" License
9 stars 4 forks source link

Add OSM/Geospatial dependencies as default #233

Closed nreinicke closed 1 month ago

nreinicke commented 1 month ago

Previously we only had the OSM/Geospatial dependencies required in the conda install but now that we're adding default functionality that use these dependencies (osmnx, geopandas, etc.), I've included them as required dependencies in the pyproject.toml file.

robfitzgerald commented 1 month ago

Oh, seeing this one now. I'm not sure I agree with the idea of making these required. Perhaps they could be a feature install, and that feature is the default, but can be deactivated? Osmnx is a heavy weight dependency and it's not actually a requirement for all downstream compass applications (same goes for all of these geospatial libs)

nreinicke commented 1 month ago

Yeah that's a good point and I like the idea of making the geospatial libraries optional. Then for type checking we can do:

from typing import TYPE_CHECKING

if TYPE_CHECKING:
  import osmnx
jhoshiko commented 1 month ago

Discussed this with Nick in person and am approving this change.