Closed oleksii-leonov closed 6 months ago
@tindron , thank you!
I will try to update this PR to implement all other Utils this weekend (and do some more fine-tuning).
@tindron @turboladen
gdalinfo
(GDALInfo
, GDALInfoOption
)gdal_translate
(GDALTranslate
, GDALTranslateOption
)gdalwarp
(GDALWarp
, GDAPWarpAppOption
)ogr2ogr
(GDALVectorTranslate
, GDALVectorTranslateOption
)GDALWarpAppOptionsSetProgress
). Will be done later.@tindron @turboladen
This one is ready to merge.
Added:
Added:
@tindron @turboladen
This PR is ready (and we are already using this code in production).
There are a couple of utils left to add (GDALFootrptint, etc.) to fully cover all utils available via the GDAL C API. But I would prefer to do it in separate PRs. This PR is already quite big, and I will need to add newer versions of GDAL 3.7-3.9 to CI first (as some utils require GDAL 3.7-3.9).
Very basic support for GDAL Utilities (https://gdal.org/api/gdal_utils.html).
gdal_utils.h
provides C API for GDAL Utils (gdalinfo
,gdalwarp
,gdal_translate
, etc).Python bindings have it (
gdal.Warp
,gdal.Translate
, etc). Those utils are quite useful and it would be great to have them in Ruby.Notes:
GDALInfo
andGDALTranslate
as a proof-of-concept. However, I plan to add other utils as well.I am not very comfortable with FFI and GDAL C API pointers. Feel free to comment and advise if there is a better way to do things.I intentionally do not exposeGDALInfoOptions
in rubyfied API. From my point of view, having to create and manage the lifecycle of theGDALInfoOption
object would be a chore for the user. The user just needs to pass an array of strings.