GDAL 3.11.0__tar.gz → 3.11.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gdal-3.11.0 → gdal-3.11.2}/PKG-INFO +8 -5
- {gdal-3.11.0 → gdal-3.11.2}/README.rst +1 -1
- {gdal-3.11.0 → gdal-3.11.2}/extensions/gdal_array_wrap.cpp +4 -0
- {gdal-3.11.0 → gdal-3.11.2}/extensions/gdal_wrap.cpp +35 -14
- {gdal-3.11.0 → gdal-3.11.2}/extensions/ogr_wrap.cpp +68 -46
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/PKG-INFO +8 -5
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/__init__.py +1 -1
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal2tiles.py +1 -1
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/ogrmerge.py +15 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/ogr.py +3 -2
- {gdal-3.11.0 → gdal-3.11.2}/pyproject.toml +2 -3
- {gdal-3.11.0 → gdal-3.11.2}/setup.py +9 -2
- {gdal-3.11.0 → gdal-3.11.2}/extensions/gdalconst_wrap.c +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/extensions/gnm_wrap.cpp +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/extensions/osr_wrap.cpp +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/SOURCES.txt +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/dependency_links.txt +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/entry_points.txt +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/not-zip-safe +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/requires.txt +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/GDAL.egg-info/top_level.txt +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/__init__.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/array_util.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/base.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/batch_creator.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/color_palette.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/color_table.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/extent_util.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/gdal_argparse.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/numpy_util.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/osr_util.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/progress.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/raster_creation.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/rectangle.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/auxiliary/util.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal2xyz.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_calc.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_edit.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_fillnodata.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_merge.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_pansharpen.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_polygonize.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_proximity.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_retile.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdal_sieve.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdalattachpct.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdalcompare.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/gdalmove.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/ogr_layer_algebra.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/pct2rgb.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/rgb2pct.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/__init__.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/assemblepoly.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/build_jp2_from_xml.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/classify.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/crs2crs2grid.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/densify.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/dump_jp2.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/epsg_tr.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/esri2wkt.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/fft.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/fix_gpkg.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gcps2ogr.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gcps2vec.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gcps2wld.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal2grd.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_auth.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_cp.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_create_pdf.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_ls.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_lut.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_minmax_location.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_mkdir.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_remove_towgs84.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_rm.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_rmdir.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdal_vrtmerge.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalbuildvrtofvrt.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalchksum.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalcopyproj.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalfilter.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalident.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalimport.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdalinfo.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/gdallocationinfo.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/get_soundg.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/histrep.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/hsv_merge.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/jpeg_in_tiff_extract.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/load2odbc.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/loslas2ntv2.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/magphase.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/make_fuzzer_friendly_archive.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/mkgraticule.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/ogr2vrt.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/ogr_build_junction_table.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/ogr_dispatch.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/ogrinfo.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/ogrupdate.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/rel.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/tigerpoly.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/tile_extent_from_raster.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/tolatlong.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/val_repl.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/validate_cloud_optimized_geotiff.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/validate_geoparquet.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/validate_gpkg.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/validate_jp2.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/vec_tr.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/vec_tr_spat.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/wcs_virtds_params.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal2tiles.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal2xyz.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_calc.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_edit.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_fillnodata.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_merge.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_pansharpen.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_polygonize.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_proximity.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_retile.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdal_sieve.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdalattachpct.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdalcompare.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/gdalmove.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/ogr_layer_algebra.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/ogrmerge.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/pct2rgb.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/gdal-utils/scripts/rgb2pct.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/__init__.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gdal.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gdal_array.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gdal_fsspec.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gdalconst.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gdalnumeric.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/gnm.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/osgeo/osr.py +0 -0
- {gdal-3.11.0 → gdal-3.11.2}/setup.cfg +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: GDAL
|
|
3
|
-
Version: 3.11.
|
|
3
|
+
Version: 3.11.2
|
|
4
4
|
Summary: GDAL: Geospatial Data Abstraction Library
|
|
5
5
|
Home-page: http://www.gdal.org
|
|
6
6
|
Author: Frank Warmerdam, Howard Butler, Even Rouault
|
|
7
7
|
Author-email: warmerdam@pobox.com
|
|
8
8
|
Maintainer: GDAL contributors
|
|
9
9
|
Maintainer-email: GDAL contributors <gdal-dev@lists.osgeo.org>
|
|
10
|
-
License: MIT
|
|
10
|
+
License-Expression: MIT
|
|
11
11
|
Project-URL: Homepage, https://gdal.org
|
|
12
12
|
Project-URL: Documentation, https://gdal.org
|
|
13
13
|
Project-URL: Repository, https://github.com/OSGeo/GDAL.git
|
|
@@ -17,7 +17,6 @@ Keywords: gis,raster,vector
|
|
|
17
17
|
Classifier: Development Status :: 5 - Production/Stable
|
|
18
18
|
Classifier: Intended Audience :: Developers
|
|
19
19
|
Classifier: Intended Audience :: Science/Research
|
|
20
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
21
20
|
Classifier: Operating System :: OS Independent
|
|
22
21
|
Classifier: Programming Language :: Python :: 3
|
|
23
22
|
Classifier: Programming Language :: C
|
|
@@ -28,6 +27,10 @@ Requires-Python: >=3.8.0
|
|
|
28
27
|
Description-Content-Type: text/x-rst
|
|
29
28
|
Provides-Extra: numpy
|
|
30
29
|
Requires-Dist: numpy>1.0.0; extra == "numpy"
|
|
30
|
+
Dynamic: author-email
|
|
31
|
+
Dynamic: home-page
|
|
32
|
+
Dynamic: maintainer
|
|
33
|
+
Dynamic: requires-python
|
|
31
34
|
|
|
32
35
|
|
|
33
36
|
GDAL/OGR in Python
|
|
@@ -60,7 +63,7 @@ special about gdal.)
|
|
|
60
63
|
|
|
61
64
|
* SWIG (4 or greater).
|
|
62
65
|
|
|
63
|
-
* libgdal (3.11.
|
|
66
|
+
* libgdal (3.11.2 or greater).
|
|
64
67
|
|
|
65
68
|
* numpy (1.0.0 or greater). This is not force-required by the build,
|
|
66
69
|
but many examples and utilities will not work without it. At least
|
|
@@ -29,7 +29,7 @@ special about gdal.)
|
|
|
29
29
|
|
|
30
30
|
* SWIG (4 or greater).
|
|
31
31
|
|
|
32
|
-
* libgdal (3.11.
|
|
32
|
+
* libgdal (3.11.2 or greater).
|
|
33
33
|
|
|
34
34
|
* numpy (1.0.0 or greater). This is not force-required by the build,
|
|
35
35
|
but many examples and utilities will not work without it. At least
|
|
@@ -6242,7 +6242,14 @@ SWIGINTERN OGRFieldDomainShadow *GDALDatasetShadow_GetFieldDomain(GDALDatasetSha
|
|
|
6242
6242
|
return (OGRFieldDomainShadow*) GDALDatasetGetFieldDomain(self, name);
|
|
6243
6243
|
}
|
|
6244
6244
|
SWIGINTERN bool GDALDatasetShadow_AddFieldDomain(GDALDatasetShadow *self,OGRFieldDomainShadow *fieldDomain){
|
|
6245
|
-
|
|
6245
|
+
char* pszReason = NULL;
|
|
6246
|
+
if( !GDALDatasetAddFieldDomain(self, (OGRFieldDomainH)fieldDomain, &pszReason) )
|
|
6247
|
+
{
|
|
6248
|
+
CPLError(CE_Failure, CPLE_AppDefined, "%s", pszReason);
|
|
6249
|
+
CPLFree(pszReason);
|
|
6250
|
+
return false;
|
|
6251
|
+
}
|
|
6252
|
+
return true;
|
|
6246
6253
|
}
|
|
6247
6254
|
SWIGINTERN bool GDALDatasetShadow_DeleteFieldDomain(GDALDatasetShadow *self,char const *name){
|
|
6248
6255
|
return GDALDatasetDeleteFieldDomain(self, name, NULL);
|
|
@@ -7948,7 +7955,7 @@ SWIGINTERN GDALRasterBandShadow *GDALRasterBandShadow_GetOverview(GDALRasterBand
|
|
|
7948
7955
|
return (GDALRasterBandShadow*) GDALGetOverview( self, i );
|
|
7949
7956
|
}
|
|
7950
7957
|
SWIGINTERN GDALRasterBandShadow *GDALRasterBandShadow_GetSampleOverview(GDALRasterBandShadow *self,GUIntBig nDesiredSamples){
|
|
7951
|
-
return (GDALRasterBandShadow*)
|
|
7958
|
+
return (GDALRasterBandShadow*) GDALGetRasterSampleOverviewEx( self, nDesiredSamples );
|
|
7952
7959
|
}
|
|
7953
7960
|
SWIGINTERN int GDALRasterBandShadow_Checksum(GDALRasterBandShadow *self,int xoff=0,int yoff=0,int *xsize=0,int *ysize=0){
|
|
7954
7961
|
int nxsize = (xsize!=0) ? *xsize : GDALGetRasterBandXSize( self );
|
|
@@ -43252,10 +43259,8 @@ SWIGINTERN PyObject *_wrap_Band_GetDefaultHistogram(PyObject *self, PyObject *ar
|
|
|
43252
43259
|
void *arg8 = (void *) NULL ;
|
|
43253
43260
|
void *argp1 = 0 ;
|
|
43254
43261
|
int res1 = 0 ;
|
|
43255
|
-
|
|
43256
|
-
|
|
43257
|
-
void *argp3 = 0 ;
|
|
43258
|
-
int res3 = 0 ;
|
|
43262
|
+
double val2 ;
|
|
43263
|
+
double val3 ;
|
|
43259
43264
|
void *argp4 = 0 ;
|
|
43260
43265
|
int res4 = 0 ;
|
|
43261
43266
|
void *argp5 = 0 ;
|
|
@@ -43298,18 +43303,34 @@ SWIGINTERN PyObject *_wrap_Band_GetDefaultHistogram(PyObject *self, PyObject *ar
|
|
|
43298
43303
|
}
|
|
43299
43304
|
arg1 = reinterpret_cast< GDALRasterBandShadow * >(argp1);
|
|
43300
43305
|
if (obj1) {
|
|
43301
|
-
|
|
43302
|
-
|
|
43303
|
-
|
|
43306
|
+
{
|
|
43307
|
+
/* %typemap(in) (double *optional_##double) */
|
|
43308
|
+
if ( obj1 == Py_None ) {
|
|
43309
|
+
arg2 = 0;
|
|
43310
|
+
}
|
|
43311
|
+
else if ( PyArg_Parse( obj1,"d" ,&val2 ) ) {
|
|
43312
|
+
arg2 = (double *) &val2;
|
|
43313
|
+
}
|
|
43314
|
+
else {
|
|
43315
|
+
PyErr_SetString( PyExc_TypeError, "Invalid Parameter" );
|
|
43316
|
+
SWIG_fail;
|
|
43317
|
+
}
|
|
43304
43318
|
}
|
|
43305
|
-
arg2 = reinterpret_cast< double * >(argp2);
|
|
43306
43319
|
}
|
|
43307
43320
|
if (obj2) {
|
|
43308
|
-
|
|
43309
|
-
|
|
43310
|
-
|
|
43321
|
+
{
|
|
43322
|
+
/* %typemap(in) (double *optional_##double) */
|
|
43323
|
+
if ( obj2 == Py_None ) {
|
|
43324
|
+
arg3 = 0;
|
|
43325
|
+
}
|
|
43326
|
+
else if ( PyArg_Parse( obj2,"d" ,&val3 ) ) {
|
|
43327
|
+
arg3 = (double *) &val3;
|
|
43328
|
+
}
|
|
43329
|
+
else {
|
|
43330
|
+
PyErr_SetString( PyExc_TypeError, "Invalid Parameter" );
|
|
43331
|
+
SWIG_fail;
|
|
43332
|
+
}
|
|
43311
43333
|
}
|
|
43312
|
-
arg3 = reinterpret_cast< double * >(argp3);
|
|
43313
43334
|
}
|
|
43314
43335
|
if (obj3) {
|
|
43315
43336
|
res4 = SWIG_ConvertPtr(obj3, &argp4,SWIGTYPE_p_int, 0 | 0 );
|
|
@@ -6824,35 +6824,42 @@ OGRFieldDomainShadow* CreateRangeFieldDomain( const char *name,
|
|
|
6824
6824
|
const char* description,
|
|
6825
6825
|
OGRFieldType type,
|
|
6826
6826
|
OGRFieldSubType subtype,
|
|
6827
|
-
double min,
|
|
6827
|
+
double* min,
|
|
6828
6828
|
bool minIsInclusive,
|
|
6829
|
-
double max,
|
|
6830
|
-
|
|
6829
|
+
double* max,
|
|
6830
|
+
bool maxIsInclusive) {
|
|
6831
6831
|
OGRField sMin;
|
|
6832
|
-
if(
|
|
6833
|
-
|
|
6834
|
-
|
|
6835
|
-
|
|
6836
|
-
|
|
6837
|
-
|
|
6838
|
-
|
|
6839
|
-
|
|
6832
|
+
if (min )
|
|
6833
|
+
{
|
|
6834
|
+
if( type == OFTInteger )
|
|
6835
|
+
sMin.Integer = static_cast<int>(*min);
|
|
6836
|
+
else if( type == OFTInteger64 )
|
|
6837
|
+
sMin.Integer64 = static_cast<GIntBig>(*min);
|
|
6838
|
+
else if( type == OFTReal )
|
|
6839
|
+
sMin.Real = *min;
|
|
6840
|
+
else
|
|
6841
|
+
return NULL;
|
|
6842
|
+
}
|
|
6843
|
+
|
|
6840
6844
|
OGRField sMax;
|
|
6841
|
-
if(
|
|
6842
|
-
|
|
6843
|
-
|
|
6844
|
-
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
|
|
6848
|
-
|
|
6845
|
+
if( max )
|
|
6846
|
+
{
|
|
6847
|
+
if( type == OFTInteger )
|
|
6848
|
+
sMax.Integer = static_cast<int>(*max);
|
|
6849
|
+
else if( type == OFTInteger64 )
|
|
6850
|
+
sMax.Integer64 = static_cast<GIntBig>(*max);
|
|
6851
|
+
else if( type == OFTReal )
|
|
6852
|
+
sMax.Real = *max;
|
|
6853
|
+
else
|
|
6854
|
+
return NULL;
|
|
6855
|
+
}
|
|
6849
6856
|
return (OGRFieldDomainShadow*) OGR_RangeFldDomain_Create( name,
|
|
6850
6857
|
description,
|
|
6851
6858
|
type,
|
|
6852
6859
|
subtype,
|
|
6853
|
-
&sMin,
|
|
6860
|
+
min ? &sMin : NULL,
|
|
6854
6861
|
minIsInclusive,
|
|
6855
|
-
&sMax,
|
|
6862
|
+
max ? &sMax : NULL,
|
|
6856
6863
|
maxIsInclusive );
|
|
6857
6864
|
}
|
|
6858
6865
|
|
|
@@ -6866,14 +6873,14 @@ OGRFieldDomainShadow* CreateRangeFieldDomainDateTime( const char *name,
|
|
|
6866
6873
|
double maxIsInclusive) {
|
|
6867
6874
|
OGRField sMin;
|
|
6868
6875
|
OGRField sMax;
|
|
6869
|
-
if( !OGRParseXMLDateTime(min, &sMin))
|
|
6876
|
+
if( min && !OGRParseXMLDateTime(min, &sMin))
|
|
6870
6877
|
{
|
|
6871
6878
|
CPLError(CE_Failure, CPLE_AppDefined,
|
|
6872
6879
|
"Invalid min: %s",
|
|
6873
6880
|
min);
|
|
6874
6881
|
return NULL;
|
|
6875
6882
|
}
|
|
6876
|
-
if( !OGRParseXMLDateTime(max, &sMax))
|
|
6883
|
+
if( max && !OGRParseXMLDateTime(max, &sMax))
|
|
6877
6884
|
{
|
|
6878
6885
|
CPLError(CE_Failure, CPLE_AppDefined,
|
|
6879
6886
|
"Invalid max: %s",
|
|
@@ -6884,9 +6891,9 @@ OGRFieldDomainShadow* CreateRangeFieldDomainDateTime( const char *name,
|
|
|
6884
6891
|
description,
|
|
6885
6892
|
OFTDateTime,
|
|
6886
6893
|
OFSTNone,
|
|
6887
|
-
&sMin,
|
|
6894
|
+
min ? &sMin : NULL,
|
|
6888
6895
|
minIsInclusive,
|
|
6889
|
-
&sMax,
|
|
6896
|
+
max ? &sMax : NULL,
|
|
6890
6897
|
maxIsInclusive );
|
|
6891
6898
|
}
|
|
6892
6899
|
|
|
@@ -34046,10 +34053,10 @@ SWIGINTERN PyObject *_wrap_CreateRangeFieldDomain(PyObject *self, PyObject *args
|
|
|
34046
34053
|
char *arg2 = (char *) 0 ;
|
|
34047
34054
|
OGRFieldType arg3 ;
|
|
34048
34055
|
OGRFieldSubType arg4 ;
|
|
34049
|
-
double arg5 ;
|
|
34056
|
+
double *arg5 = (double *) 0 ;
|
|
34050
34057
|
bool arg6 ;
|
|
34051
|
-
double arg7 ;
|
|
34052
|
-
|
|
34058
|
+
double *arg7 = (double *) 0 ;
|
|
34059
|
+
bool arg8 ;
|
|
34053
34060
|
int res1 ;
|
|
34054
34061
|
char *buf1 = 0 ;
|
|
34055
34062
|
int alloc1 = 0 ;
|
|
@@ -34061,12 +34068,10 @@ SWIGINTERN PyObject *_wrap_CreateRangeFieldDomain(PyObject *self, PyObject *args
|
|
|
34061
34068
|
int val4 ;
|
|
34062
34069
|
int ecode4 = 0 ;
|
|
34063
34070
|
double val5 ;
|
|
34064
|
-
int ecode5 = 0 ;
|
|
34065
34071
|
bool val6 ;
|
|
34066
34072
|
int ecode6 = 0 ;
|
|
34067
34073
|
double val7 ;
|
|
34068
|
-
|
|
34069
|
-
double val8 ;
|
|
34074
|
+
bool val8 ;
|
|
34070
34075
|
int ecode8 = 0 ;
|
|
34071
34076
|
PyObject *swig_obj[8] ;
|
|
34072
34077
|
OGRFieldDomainShadow *result = 0 ;
|
|
@@ -34093,26 +34098,42 @@ SWIGINTERN PyObject *_wrap_CreateRangeFieldDomain(PyObject *self, PyObject *args
|
|
|
34093
34098
|
SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CreateRangeFieldDomain" "', argument " "4"" of type '" "OGRFieldSubType""'");
|
|
34094
34099
|
}
|
|
34095
34100
|
arg4 = static_cast< OGRFieldSubType >(val4);
|
|
34096
|
-
|
|
34097
|
-
|
|
34098
|
-
|
|
34099
|
-
|
|
34100
|
-
|
|
34101
|
+
{
|
|
34102
|
+
/* %typemap(in) (double *optional_##double) */
|
|
34103
|
+
if ( swig_obj[4] == Py_None ) {
|
|
34104
|
+
arg5 = 0;
|
|
34105
|
+
}
|
|
34106
|
+
else if ( PyArg_Parse( swig_obj[4],"d" ,&val5 ) ) {
|
|
34107
|
+
arg5 = (double *) &val5;
|
|
34108
|
+
}
|
|
34109
|
+
else {
|
|
34110
|
+
PyErr_SetString( PyExc_TypeError, "Invalid Parameter" );
|
|
34111
|
+
SWIG_fail;
|
|
34112
|
+
}
|
|
34113
|
+
}
|
|
34101
34114
|
ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
|
|
34102
34115
|
if (!SWIG_IsOK(ecode6)) {
|
|
34103
34116
|
SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "CreateRangeFieldDomain" "', argument " "6"" of type '" "bool""'");
|
|
34104
34117
|
}
|
|
34105
34118
|
arg6 = static_cast< bool >(val6);
|
|
34106
|
-
|
|
34107
|
-
|
|
34108
|
-
|
|
34109
|
-
|
|
34110
|
-
|
|
34111
|
-
|
|
34119
|
+
{
|
|
34120
|
+
/* %typemap(in) (double *optional_##double) */
|
|
34121
|
+
if ( swig_obj[6] == Py_None ) {
|
|
34122
|
+
arg7 = 0;
|
|
34123
|
+
}
|
|
34124
|
+
else if ( PyArg_Parse( swig_obj[6],"d" ,&val7 ) ) {
|
|
34125
|
+
arg7 = (double *) &val7;
|
|
34126
|
+
}
|
|
34127
|
+
else {
|
|
34128
|
+
PyErr_SetString( PyExc_TypeError, "Invalid Parameter" );
|
|
34129
|
+
SWIG_fail;
|
|
34130
|
+
}
|
|
34131
|
+
}
|
|
34132
|
+
ecode8 = SWIG_AsVal_bool(swig_obj[7], &val8);
|
|
34112
34133
|
if (!SWIG_IsOK(ecode8)) {
|
|
34113
|
-
SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "CreateRangeFieldDomain" "', argument " "8"" of type '" "
|
|
34134
|
+
SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "CreateRangeFieldDomain" "', argument " "8"" of type '" "bool""'");
|
|
34114
34135
|
}
|
|
34115
|
-
arg8 = static_cast<
|
|
34136
|
+
arg8 = static_cast< bool >(val8);
|
|
34116
34137
|
{
|
|
34117
34138
|
if (!arg1) {
|
|
34118
34139
|
SWIG_exception(SWIG_NullReferenceError,"Received a NULL pointer.");
|
|
@@ -40062,7 +40083,8 @@ static PyMethodDef SwigMethods[] = {
|
|
|
40062
40083
|
"Returns\n"
|
|
40063
40084
|
"--------\n"
|
|
40064
40085
|
"int:\n"
|
|
40065
|
-
" True if the geometry
|
|
40086
|
+
" True if the coordinates of the geometry form a ring, by checking length\n"
|
|
40087
|
+
" and closure (self-intersection is not checked), otherwise False.\n"
|
|
40066
40088
|
"\n"
|
|
40067
40089
|
""},
|
|
40068
40090
|
{ "Geometry_Intersects", _wrap_Geometry_Intersects, METH_VARARGS, "\n"
|
|
@@ -40797,7 +40819,7 @@ static PyMethodDef SwigMethods[] = {
|
|
|
40797
40819
|
"\n"
|
|
40798
40820
|
""},
|
|
40799
40821
|
{ "CreateRangeFieldDomain", _wrap_CreateRangeFieldDomain, METH_VARARGS, "\n"
|
|
40800
|
-
"CreateRangeFieldDomain(char const * name, char const * description, OGRFieldType type, OGRFieldSubType subtype, double min, bool minIsInclusive, double max,
|
|
40822
|
+
"CreateRangeFieldDomain(char const * name, char const * description, OGRFieldType type, OGRFieldSubType subtype, double * min, bool minIsInclusive, double * max, bool maxIsInclusive) -> FieldDomain\n"
|
|
40801
40823
|
"\n"
|
|
40802
40824
|
"Creates a new range field domain.\n"
|
|
40803
40825
|
"\n"
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: GDAL
|
|
3
|
-
Version: 3.11.
|
|
3
|
+
Version: 3.11.2
|
|
4
4
|
Summary: GDAL: Geospatial Data Abstraction Library
|
|
5
5
|
Home-page: http://www.gdal.org
|
|
6
6
|
Author: Frank Warmerdam, Howard Butler, Even Rouault
|
|
7
7
|
Author-email: warmerdam@pobox.com
|
|
8
8
|
Maintainer: GDAL contributors
|
|
9
9
|
Maintainer-email: GDAL contributors <gdal-dev@lists.osgeo.org>
|
|
10
|
-
License: MIT
|
|
10
|
+
License-Expression: MIT
|
|
11
11
|
Project-URL: Homepage, https://gdal.org
|
|
12
12
|
Project-URL: Documentation, https://gdal.org
|
|
13
13
|
Project-URL: Repository, https://github.com/OSGeo/GDAL.git
|
|
@@ -17,7 +17,6 @@ Keywords: gis,raster,vector
|
|
|
17
17
|
Classifier: Development Status :: 5 - Production/Stable
|
|
18
18
|
Classifier: Intended Audience :: Developers
|
|
19
19
|
Classifier: Intended Audience :: Science/Research
|
|
20
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
21
20
|
Classifier: Operating System :: OS Independent
|
|
22
21
|
Classifier: Programming Language :: Python :: 3
|
|
23
22
|
Classifier: Programming Language :: C
|
|
@@ -28,6 +27,10 @@ Requires-Python: >=3.8.0
|
|
|
28
27
|
Description-Content-Type: text/x-rst
|
|
29
28
|
Provides-Extra: numpy
|
|
30
29
|
Requires-Dist: numpy>1.0.0; extra == "numpy"
|
|
30
|
+
Dynamic: author-email
|
|
31
|
+
Dynamic: home-page
|
|
32
|
+
Dynamic: maintainer
|
|
33
|
+
Dynamic: requires-python
|
|
31
34
|
|
|
32
35
|
|
|
33
36
|
GDAL/OGR in Python
|
|
@@ -60,7 +63,7 @@ special about gdal.)
|
|
|
60
63
|
|
|
61
64
|
* SWIG (4 or greater).
|
|
62
65
|
|
|
63
|
-
* libgdal (3.11.
|
|
66
|
+
* libgdal (3.11.2 or greater).
|
|
64
67
|
|
|
65
68
|
* numpy (1.0.0 or greater). This is not force-required by the build,
|
|
66
69
|
but many examples and utilities will not work without it. At least
|
|
@@ -76,7 +76,7 @@ def isfile(path):
|
|
|
76
76
|
"""Wrapper for os.path.isfile() that can work with /vsi files too"""
|
|
77
77
|
if path.startswith("/vsi"):
|
|
78
78
|
stat_res = gdal.VSIStatL(path)
|
|
79
|
-
if
|
|
79
|
+
if stat_res is None:
|
|
80
80
|
return False
|
|
81
81
|
return stat.S_ISREG(stat_res.mode)
|
|
82
82
|
else:
|
|
@@ -211,12 +211,27 @@ def process(argv, progress=None, progress_arg=None):
|
|
|
211
211
|
elif arg == "-a_srs" and i + 1 < len(argv):
|
|
212
212
|
i = i + 1
|
|
213
213
|
a_srs = argv[i]
|
|
214
|
+
srs = osr.SpatialReference()
|
|
215
|
+
try:
|
|
216
|
+
srs.SetFromUserInput(a_srs)
|
|
217
|
+
except Exception:
|
|
218
|
+
raise ValueError("Invalid value for -a_srs")
|
|
214
219
|
elif arg == "-s_srs" and i + 1 < len(argv):
|
|
215
220
|
i = i + 1
|
|
216
221
|
s_srs = argv[i]
|
|
222
|
+
srs = osr.SpatialReference()
|
|
223
|
+
try:
|
|
224
|
+
srs.SetFromUserInput(s_srs)
|
|
225
|
+
except Exception:
|
|
226
|
+
raise ValueError("Invalid value for -s_srs")
|
|
217
227
|
elif arg == "-t_srs" and i + 1 < len(argv):
|
|
218
228
|
i = i + 1
|
|
219
229
|
t_srs = argv[i]
|
|
230
|
+
srs = osr.SpatialReference()
|
|
231
|
+
try:
|
|
232
|
+
srs.SetFromUserInput(t_srs)
|
|
233
|
+
except Exception:
|
|
234
|
+
raise ValueError("Invalid value for -t_srs")
|
|
220
235
|
elif arg == "-nln" and i + 1 < len(argv):
|
|
221
236
|
i = i + 1
|
|
222
237
|
layer_name_template = argv[i]
|
|
@@ -6084,7 +6084,8 @@ class Geometry(object):
|
|
|
6084
6084
|
Returns
|
|
6085
6085
|
--------
|
|
6086
6086
|
int:
|
|
6087
|
-
True if the geometry
|
|
6087
|
+
True if the coordinates of the geometry form a ring, by checking length
|
|
6088
|
+
and closure (self-intersection is not checked), otherwise False.
|
|
6088
6089
|
|
|
6089
6090
|
"""
|
|
6090
6091
|
return _ogr.Geometry_IsRing(self, *args)
|
|
@@ -7060,7 +7061,7 @@ def CreateCodedFieldDomain(*args):
|
|
|
7060
7061
|
|
|
7061
7062
|
def CreateRangeFieldDomain(*args):
|
|
7062
7063
|
r"""
|
|
7063
|
-
CreateRangeFieldDomain(char const * name, char const * description, OGRFieldType type, OGRFieldSubType subtype, double min, bool minIsInclusive, double max,
|
|
7064
|
+
CreateRangeFieldDomain(char const * name, char const * description, OGRFieldType type, OGRFieldSubType subtype, double * min, bool minIsInclusive, double * max, bool maxIsInclusive) -> FieldDomain
|
|
7064
7065
|
|
|
7065
7066
|
Creates a new range field domain.
|
|
7066
7067
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["setuptools>=
|
|
2
|
+
requires = ["setuptools>=77.0.3",
|
|
3
3
|
"wheel",
|
|
4
4
|
"oldest-supported-numpy; python_version=='3.8'",
|
|
5
5
|
"numpy >=2.0.0rc1; python_version>='3.9'"]
|
|
@@ -19,12 +19,11 @@ maintainers = [
|
|
|
19
19
|
description = "GDAL: Geospatial Data Abstraction Library"
|
|
20
20
|
readme = "README.rst"
|
|
21
21
|
keywords = ["gis", "raster", "vector"]
|
|
22
|
-
license =
|
|
22
|
+
license = "MIT"
|
|
23
23
|
classifiers = [
|
|
24
24
|
"Development Status :: 5 - Production/Stable",
|
|
25
25
|
"Intended Audience :: Developers",
|
|
26
26
|
"Intended Audience :: Science/Research",
|
|
27
|
-
"License :: OSI Approved :: MIT License",
|
|
28
27
|
"Operating System :: OS Independent",
|
|
29
28
|
"Programming Language :: Python :: 3",
|
|
30
29
|
"Programming Language :: C",
|
|
@@ -12,12 +12,13 @@ import sys
|
|
|
12
12
|
from glob import glob
|
|
13
13
|
from pathlib import Path
|
|
14
14
|
|
|
15
|
+
import setuptools
|
|
15
16
|
from setuptools.command.build_ext import build_ext
|
|
16
17
|
from setuptools import setup
|
|
17
18
|
from setuptools import find_packages
|
|
18
19
|
from setuptools import Extension
|
|
19
20
|
|
|
20
|
-
version = '3.11.
|
|
21
|
+
version = '3.11.2'
|
|
21
22
|
|
|
22
23
|
# If CXX is defined in the environment, it will be used to link the .so
|
|
23
24
|
# but setuptools will be confused if it is made of several words like 'ccache g++'
|
|
@@ -157,7 +158,7 @@ def has_flag(compiler, flagname):
|
|
|
157
158
|
# since they may be directly used by users. So we do a monkey patching of
|
|
158
159
|
# easy_install.install_wrapper_scripts to install a modified
|
|
159
160
|
# easy_install.delete_blockers method that does NOT remove .py files
|
|
160
|
-
if sys.platform == 'win32':
|
|
161
|
+
if sys.platform == 'win32' and int(setuptools.__version__.split('.')[0]) < 80:
|
|
161
162
|
from setuptools.command.easy_install import easy_install
|
|
162
163
|
|
|
163
164
|
original_install_wrapper_scripts = easy_install.install_wrapper_scripts
|
|
@@ -345,6 +346,12 @@ class gdal_ext(build_ext):
|
|
|
345
346
|
else:
|
|
346
347
|
ext.extra_compile_args.append("-DSWIG_PYTHON_SILENT_MEMLEAK")
|
|
347
348
|
|
|
349
|
+
# Add -isysroot on osx if used in cmake
|
|
350
|
+
if '':
|
|
351
|
+
ext.extra_compile_args.extend(['-isysroot', ''])
|
|
352
|
+
ext.extra_link_args.extend(['-isysroot', ''])
|
|
353
|
+
|
|
354
|
+
|
|
348
355
|
return build_ext.build_extension(self, ext)
|
|
349
356
|
|
|
350
357
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gdal-3.11.0 → gdal-3.11.2}/gdal-utils/osgeo_utils/samples/validate_cloud_optimized_geotiff.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|