Open evetion opened 5 years ago
This is also a nice reference for what could consitute a good set of drivers to include: https://github.com/OSGeo/gdal/tree/master/docker
We should probably aim to cover ultrasmall first, then small.
Raster drivers: VRT, GTiff, HFA, PNG, JPEG, MEM, JP2OpenJPEG, WEB, GPKG Vector drivers: Shapefile, MapInfo, VRT, Memory, GeoJSON, GPKG, SQLite External libraries enabled: libsqlite3, libproj, libcurl, libjpeg, libpng, libwebp, libzstd
Raster drivers: ultrasmall + built-in + SQLite-based ones + network-based ones Vector drivers: ultrasmall + built-in + most XML-based ones + network-based ones + PostgreSQL External libraries enabled: ultrasmall + libexpat, libpq, libssl
Raster drivers: small + netCDF, HDF5, BAG Vector drivers: small + Spatialite, XLS External libraries enabled: small + libgeos, libhdf5, libhdf5, libkea, libnetcdf, libfreexl, libspatialite, libxml2, libpoppler
On the surface this issue looks complete based on https://github.com/JuliaGeo/GDAL.jl/issues/65#issue-445980332. Are there remaining TODOs?
I think the remaining TODO's is completing and tracking UltraSmall as listed above, a few are stil missing from that, I believe libpng, libwebp, libzstd
.
And next would be finishing Small. Although we also have a few items from Normal, such as libgeos
. Would be good to update the OP with checkboxes for this though. (edit: done)
It would be nice to have support for GeoArrow and GeoParquet as well. This was brought up in https://github.com/JuliaGeo/GDAL.jl/pull/136#issuecomment-1145187808. But it would first require switching the build to CMake, which is something we should do soon anyway, since for GDAL 3.6 it will be the only option. EDIT: done in https://github.com/JuliaPackaging/Yggdrasil/pull/5423
I saw https://github.com/conda-forge/gdal-feedstock/issues/628 discussing about the possible advantages to build drivers that are large external dependencies as plugins. We might want to look into that as well for Arrow, Parquet and perhaps netCDF.
We build GDAL (https://github.com/JuliaPackaging/Yggdrasil/tree/master/G/GDAL) only with the most basic drivers/support for now. This includes:
Which drivers should we also include? See the raster and vector format lists on the GDAL website.
Note that it is not the goal to provide everyone with a GDAL build with all drivers. Many drivers see only little use and would increase both the build size and complexity of maintaining the build too much. Therefore it would be good to try to find a rather minimal build that includes enough drivers for most use cases.
If you do need an esoteric format that will not be included in the default build, this does not mean you cannot use this wrapper. If you provide your own build, you can simply point to that instead, see https://github.com/JuliaGeo/GDAL.jl/issues/64#issuecomment-493771461.