Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GDAL: add v3.6.0 #33856

Merged
merged 3 commits into from Nov 13, 2022
Merged

GDAL: add v3.6.0 #33856

merged 3 commits into from Nov 13, 2022

Conversation

adamjstewart
Copy link
Member

Successfully builds on macOS 12.6.1 (arm64) with Apple Clang 14.0.0.

https://github.com/OSGeo/gdal/releases/tag/v3.6.0

@rouault I noticed that the recommended dependencies listed here don't match the dependencies listed as recommended by CMake. For example, CMake lists brand new dependencies like Brunsli and QB3 as recommended even though they are only needed for a single driver, while things like cURL are listed as optional instead of recommended. Which should I trust when choosing defaults here?

@spackbot-app
Copy link

spackbot-app bot commented Nov 11, 2022

Hi @adamjstewart! I noticed that the following package(s) don't yet have maintainers:

  • libicd
  • qb3

Are you interested in adopting any of these package(s)? If so, simply add the following to the package class:

    maintainers = ["adamjstewart"]

If not, could you contact the developers of this package and see if they are interested? You can quickly see who has worked on a package with spack blame:

$ spack blame libicd

Thank you for your help! Please don't add maintainers without their consent.

You don't have to be a Spack expert or package developer in order to be a "maintainer," it just gives us a list of users willing to review PRs or debug issues relating to this package. A package can have multiple maintainers; just add a list of GitHub handles of anyone who wants to volunteer.

@rouault
Copy link
Contributor

rouault commented Nov 11, 2022

CMake lists brand new dependencies like Brunsli and QB3 as recommended

the commiter of those features was probably loving a bit too much his own niche ;-)

Which should I trust when choosing defaults here?

I don't have an answer to this. Everybody has his own opinion of what GDAL should be. But if you want mine, curl is more recommended than Brunsli or QB3. I've pushed a PR adjusting this in OSGeo/gdal#6672

Copy link
Contributor

@tldahlgren tldahlgren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirmed new sha256 and branches for the new packages.

@adamjstewart adamjstewart merged commit ed28797 into spack:develop Nov 13, 2022
@adamjstewart adamjstewart deleted the packages/gdal branch November 13, 2022 19:56
charmoniumQ pushed a commit to charmoniumQ/spack that referenced this pull request Nov 19, 2022
* GDAL: add v3.6.0

* Explicitly control BASISU

* More reasonable variant defaults
amd-toolchain-support pushed a commit to amd-toolchain-support/spack that referenced this pull request Feb 16, 2023
* GDAL: add v3.6.0

* Explicitly control BASISU

* More reasonable variant defaults
clrpackages pushed a commit to clearlinux-pkgs/gdal that referenced this pull request May 16, 2023
Alan D. Snow (2):
      DOC: Minor version fix in docker/README.md
      LNT: Fix flake8 repo in pre-commit-config

Alessandro Pasotti (14):
      GeoRaster: fix build warning nBands shadow (fixes #6710)
      SWQ: fix crash when comparing integer array fields (fixes: #6714) (#6717)
      Typo bench_ogr_bach ->  bench_ogr_batch
      RFC69: C++ code formatting - config, scripts and workflows
      Remove (g)sed
      RFC69 C++ formatting: updates (#6787)
      RFC 89: SQL query logging callback (#6967)
      RFC89 text: sql logging callback (#6837)
      Use parametrize for mem test
      Use fixture
      GEOJSON: fix mixed type field not flagged as JSON if first occurrence is a string  (fixes #7313) (#7315)
      JSON: Fix json mixed types roundtrip (#7362)
      OGR: Implementation of RFC94 field width precision metadata (#7522)
      RFC 94 text : Numeric fields width/precision metadata (#7264)

Andrea Borruso (1):
      WFS filter: use double-quotes for PropertyIsLike attributes

Andrea Giudiceandrea (3):
      CSW: Add 'title' as query-able property
      [Docs] Fix NetCDF options rendering
      ogrinfo: fix -json -so -features parameters behaviour

Andrew C Aitchison (1):
      Make implicit sign conversion in b0797370a3ed238bc5e74435262c2e889f58fe03 explicit.

Björn Harrtell (2):
      FlatGeobuf: Align with upstream
      FlatGeobuf: improve handling of null geoms (#7483)

Blayne Chard (1):
      COG: set GDAL_NUM_THREADS to NUM_THREADS if its not already set (#7479)

Christoph Gohlke (1):
      Fix static HDF4 libraries not found on Windows

Dan Baston (5):
      setdevenv.sh: Support zsh (#7148)
      ogr2ogr: Improve performance of -clipsrc and -clipdst (#7197)
      Doc: Clarify requirements for building vs testing (#7332)
      Doc: Add note on installing sphinx and extensions
      Doc: Update note about VSI support for netCDF, HDF5

Dan Mahr (1):
      Increase max zoom level from 24 to 30

Daniel Baston (82):
      Doc: Consolidate info on build dependencies and processes
      DOC: Add redirect from build_hints to building_from_source
      Remove outdated cpp testing README
      Move C++ perf tests out of autotest
      CPLDefaultFindFile: Warn if file not found and GDAL_DATA not defined
      test_ogr_shape: Remove inter-test dependencies
      test_cpl: Clean up config options between tests
      Autotest: Add a Valgrind suppression file
      autotest: Reference template in generated pytest.ini
      autotest: Raise error if GDAL build/runtime version are not equal
      Autotest: Pull messages about skipped tests into pytest_configure
      autotest: Include download error in skip message
      autotest: Add pytest marker for slow tests
      autotest: Symlink conftest.py into build directory
      autotest: Mark ogr_ngw_test_ogrsf as slow
      autotest: Add require_creation_option decorator
      autotest: Mark remaining ogr_ngw tests as slow
      autotest: Use require_creation_option in gcore/tiff_write.py
      autotest: additional uses of require_creation_option
      autotest: use pytest.mark.parametrize in ogr_shape.py
      autotest: replace if..fail with assert in ogr_shape.py
      autotest: use gdaltest.error_handler() in ogr_shape.py
      autotest: use gdaltest.config_option() in ogr_shape.py
      CI: Move clang-format check under 'Code Checks'
      CI: Move XML validation under 'code checks'
      CI: Move cmake-lint under 'code checks'
      autotest: Print GDAL build info in test report header
      Doc: clarify use of clip args in ogr2ogr
      autotest: Add pytest.mark.require_geos
      autotest: Add MySQL skip message
      autotest: replace gdal.PushErrorHandler for autotest/ogr
      PG: Add SKIP_VIEWS open option to replace PG_SKIP_VIEWS config option
      Doc: Describe some PG config options
      PG: Remove PG_USE_TEXT config option
      autotest: Combine Linux builds into single workflow
      CI: Make Travis skip doc-only commits
      Doc: Remove Trac reference
      netcdfvirtual.cpp: fix typo
      pgdump.rst: fix typo
      ogr_pg.py: Provide informative message on connection failure
      ogr_pg.py: Remove use of gdaltest.pg_use_copy global state
      netcdf.py: put cleanup into teardown fixture
      netcdf.py: add skip message
      netcdf_cf.py: Improve skip message
      netcdf_cf.py: use pytest.mark.parametrize
      autotest: simplify gdaltest.download_or_skip
      hdf4_read.py: update download URL
      CI: Use master container as cache for feature branches
      autotest: ogr/hana: add info to error message
      README: Update badges to use consolidated Linux builds
      autotest/osr: use gdaltest.error_handler()
      autotest/gcore: use gdaltest.error_handler()
      autotest/alg: use gdaltest.error_handler()
      autotest/gdrivers: use gdaltest.error_handler()
      autotest/ogr: use gdaltest.error_handler()
      autotest/pymod: use gdaltest.error_handler()
      ogr_pgdump.py: use gdal.config_option context manager
      ogr_geom.py: use gdal.config_option context manager
      ogr_geom.py: Add skip messages
      ogr_gml_read.py: use gdal.config_option context manager
      ogr_sql_sqlite.py: use gdal.config_option context manager
      ogr_gpkg.py: use gdal.config_option context manager
      ogr_dxf.py: use gdal.config_option context manager
      ogr_xls(x).py: use gdal.config_option context manager
      ogr_plscenes.py: use gdal.config_option context manager
      ogr_osm.py: use gdal.config_option context manager
      ogr_wfs.py: Set CPL_CURL_ENABLE_VSIMEM via fixture
      ogr_wfs.py: use gdal.config_option context manager
      ogr_eeda.py: use gdal.config_option context manager
      ogr_fgdb.py: use gdal.config_option context manager
      autotest/ogr: use gdal.config_option context manager
      autotest/gcore: use gdaltest.error_handler()
      autotest/gdrivers: use gdaltest.error_handler()
      warp.py: use gdaltest.error_handler()
      autotest/utilities: use gdaltest.error_handler()
      autotest/ogr: use gdaltest.error_handler()
      CI: Rebuild containers for pushes to OSGeo/gdal
      ogr2ogr: Restore use of 3d clipping polygons
      Doc: Add source_file role
      Doc: Use source_file role
      autotest: Change gdaltest.require_proj_version to pytest.mark.require_proj
      autotest: Change gdaltest.require_creation_option to pytest.mark.require_creation_option

Dmitry Baryshnikov (3):
      cpl_http: CUSTOMREQUEST option overrides POST while send form
      OSR_Panorama: Add some spatial references (GSK 2011, etc.)
      RMF: Add scale, name, frame support. Add vert CS write support.

Eduard Popov (1):
      Fix NGW links

Edzer Pebesma (1):
      swap deprecation & since comment

Erica Fischer (1):
      Add /vsirar/ virtual file system for RAR compression format (#7253)

Even Rouault (1073):
      Tag master as 3.7.0dev
      BUILDING.md: update status of build systems [ci skip]
      NITF: fix heap-buffer-overflow on corrupted images (introduced in 3.6.0). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53006
      Doc: add man page for ogr_layer_algebra
      GRIB2: fix crash and invalid metadata when processing index .idx file with sub-messages (fixes #6613)
      OGRMergeGeometryTypesEx(): do not consider different type of MultiGeometries (ie MultiPoint, MultiLineString, MultiPolygon) as being mergeable as GeometryCollections. Affect GML driver (fixes #6616)
      swig/include/gdal.i: fix GDT_TypeCount value (affects C# and Java bindings)
      Doc: ot.rst: advertize UInt64 and Int64
      HDF5 multidim: fix crash on 'gdalmdiminfo HDF5:autotest/gdrivers/data/netcdf/alldatatypes.nc'
      GPKG: add compatibility with GPKG 1.0 gpkg_data_column_constraints table
      Add missing #include <algorithm> for std::min/std::max uses, and #include <limits> for std::numeric_limits<>
      cppcheck fixes
      docker/alpine-normal: update dependencies, add libjxl and libkml deps [ci skip]
      typo fixes
      NEWS.md: update for 3.6.0rc2
      Make it possible to specify all HTTP related configuration options as path-specific options with VSISetPathSpecificOption()
      Add RFC 87: Signed int8 data type for raster
      Doc: advertize @gdal@mastodon.social
      Internal libtiff: resync with upstream
      autotest: make test pass on a minimal build (fixes #6327)
      GPKG raster: implement setting the nodata value for Byte dataset (fixes #1569)
      VDV: remove hack that broke with GPKG enhancement in following commit
      GPKG: add support for reading tables with generated columns (fixes #6638)
      Fix build with -DOGR_ENABLE_DRIVER_GML=OFF (fixes #6647)
      Doc: advertize FOSS4G 2023 Prizren
      commit forgotten doc/images/foss4g2023.png
      tif_jxl.c: use re-entrant error functions of libtiff master
      OpenFileGDB: do not use buggy .spx spatial index found in some datasets (fixes geopandas/geopandas#2253)
      [lint] overview.cpp: rename GDALResampleChunk32R_Average to GDALResampleChunk32R_AverageOrRMS
      netCDF: fix exposiing geotransform when there's x,y and lat,lon coordinates and the CRS is retrieved from crs_wkt attribute (fixes #6656)
      HDF5: fix build with libhdf5 1.13.2 and 1.13.3 (fixes #6657)
      gdaldataset: fix false-positive gcc 12.2.1 -O2 warning about truncation of buffer
      LIBKML: fix likely null pointer dereference false-positive warnings of gcc 12.2.1 -O2
      CI: update alpine to edge
      Doc: gml.rst: point at gfs.xsd
      gfs.xsd: add Curve and Surface as valid geometry types
      Doc: advertize v3.6.0
      docker/README.md: advertize 3.6.0 images
      HDF4: fix opening more than 32 simultaneous HDF4_EOS files (fixes #6665)
      CPLGetUsablePhysicalRAM(): take into account RSS limit (ulimit -m) (fixes #6669)
      CPLGetNumCPUs(): take into sched_getaffinity() (fixes #6669)
      CMake: remove RECOMMENDED flag to BRUNSLI and QB3. Add it for CURL (refs https://github.com/spack/spack/pull/33856#issue-1446090634)
      Add autotest/cpp/gdallimits and test it in CI (refs #6669)
      configure.cmake: fix wrong detection of pread64 for iOS (adapted from patch by Nik Sands)
      typo fixes [ci skip]
      Doc: download.rst: mention Spack
      FindSQLite3.cmake: add logic to invalidate SQLite3_HAS_ variables if the library changes
      CMake: detect if sqlite3 is missing mutex support
      Fix build when sqlite3_progress_handler() is missing
      CMake: do not use Armadillo if it lacks LAPACK support (such as on Alpine)
      GPKG: avoid nullptr dereference on corrupted databases
      validate_gpkg.py: make it work with SRID=-1 in geometry blobs
      GPKG: fix bad performance of ST_Transform() by caching the OGRCoordinateTransformation object
      GeoJSON: fix transmission of 'Accept: text/plain, application/json' header when reading from http:// resource (3.6.0 regression)
      VSIGSFSHandler::UnlinkBatch(): avoid potential nullptr deref (master only, CID 1500607)
      GPKG: add a SetSRID() SQL function
      ogrmerge.py: add optimization for GPKG -> GPKG non-single layer case
      SQLite/GPKG: move PRELUDE_STATEMENTS evaluation just after database opening
      [Doc] software_using_gdal.rst: mention https://gdal3.js.org
      CMake: make it possible to build on Linux if linux/fs.h is missing by explicitly setting ACCEPT_MISSING_LINUX_FS_HEADER
      ogrmerge.py: GPKG optimization: deal with gpkg_geom_* extensions
      PCIDSK: advertize missing capabilities
      autotest: fix PytestReturnNotNoneWarning deprecation warning (fixes #6644)
      Python bindings: add a 'python_generated_files' target that facilitate generation of bindings without building the lib
      WFS/CSW: do not remove single or double quote character in a LIKE filter
      RFC87: change status and add voting history
      Add GDT_Int8 support (RFC 87)
      RFC87: change status to implemented
      typo fixes
      Add RFC88 text: Use GoogleTest framework for C/C++ unit tests
      RFC87: emit a warning when querying PIXELTYPE band IMAGE_STRUCTURE metadata item
      autotest/cpp: switch to GoogleTest framework (RFC88 implementation)
      Remove autotest/cpp/tut old unit test framework (RFC88 implementation)
      Parquet: make sure that ArrowLayer destructor is available (for plugin)
      XYZ: support more datasets with rather sparse content in first lines (fixes #6736)
      /vsigs/ allow GDAL_HTTP_HEADERS config option to be used as authentication method if contains at least a line starting with "Authorization:"
      GPKG: improve multi-threaded implementation of GetNextArrowArray() on tables with FID without holes
      SWIG: add gdal.GetNumCPUs() and gdal.GetUsablePhysicalRAM()
      gpkg.py: make test 51 conditioned by value of gdal.CPLGetUsablePhysicalRAM()
      SOSI: do not advertize GDAL_DCAP_CREATE_FIELD as it is not implemented
      VDV: make creation of temporary .gpkg files more robust on some platforms
      GPKG: GetNextArrowArray(): recycle worker threads instead of recreating them
      OGRArrowArrayHelper::SetDate(): simplify implementation
      bench_ogr_batch & bench_ogr_c_api: make it possible to specify layer name
      Add WKBFromEWKB() for a slightly faster OGRGeometryFromEWKB()
      GTiff: DISCARD_LSB: reduce range of validity to [0,7] for Byte to avoid unsigned integer overflow if 8. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53570
      CPLGetExecPath(): add MacOSX and FreeBSD implementations; prevent potential one-byte overflow on Linux&Windows
      S3: fix issue with EC2 IDMSv2 request failing inside Docker container with default networking
      Avoid Coverity Scan false positives
      CSV: accept comma as decimal separator in X_POSSIBLE_NAMES, Y_POSSIBLE_NAMES and Z_POSSIBLE_NAMES fields
      GTiff: if CRS is DerivedProjected, write it to PAM .aux.xml file (fixes #6758)
      /vsiaz/: make AppendBlob operation compatible of Azurite (fixes #6759)
      PG: avoid error when inserting single feature of FID 0 (fixes #6728)
      Lint: add a robust CPLParseKeyValueJson() function (fixes #6753)
      Internal libtiff: refresh with upstream
      XYZ: support more sparse datasets (fixes #6736)
      Doc: OGR_L_GetArrowStream(): clarify lifecycle (fixes #6772) (#6773)
      GTiff: use libtiff >= 4.5 reentrant error handlers (when available) (fixes #6659)
      CI: windows_build.yml: remove conflicting libraries
      Warper: use exact coordinate transformer on source raster edges to avoid missing pixels (fixes #6777)
      Docker: update Alpine base images to 3.17 [ci skip]
      Fix shellcheck issues with the shellcheck of ubuntu 22.04
      RFC88: update status
      Add frmts/gtiff/libtiff/resync_from_upstream.sh
      Internal libtiff: resync with upstream
      tif_jxl.c: update to use new memory allocation libtiff API
      Python bindings: avoid C++ warning about double->int implicit cast
      CPLGetExecPath(): detect truncation on Windows
      Add test for CPLGetExecPath()
      cmake/modules/packages/FindGeoTIFF.cmake: fix indentation [ci skip]
      CI: add a FreeBSD job
      CPLParseKeyValueJson(): avoid nullptr dereference on null input. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53678 (master only)
      Remove autotest/pytest.ini which is stale
      autotest/conftest.py: add collect_ignore_glob to ignore pymod/ files
      FlatGeoBuf: tune error message [ci skip]
      CI: fix Python tests on build-windows-conda (fixes #6791)
      CI: restore conda builds on master push events
      NITFProxyPamRasterBand::GetMetadataItem(): avoid warning related to querying deprecated PIXELTYPE
      gdalbuildvrt: make -addalpha working when there's a mix of bands with or without alpha (fixes #6794)
      Add minimal support for reading 12-bit JPEG images with libjpeg-turbo 2.2dev and internal libjpeg12
      OGRSpatialReference::importFromWkt(): fix compatibilty with PROJ master 9.2.0dev
      MRF: CompressJPEG(): check range of input values to be 12-bits in 12-bit mode
      Add support for (future) libjpeg-turbo 2.2 with its 8/12 bit dual mode (fixes #6645)
      FlatGeobuf: decrease memory usage when inserting lots of features
      cppcheck fixes
      bench_ogr_c_api.cpp: slight optimization [ci skip]
      README.md: remove obsolete badges [ci skip]
      FlatGeoBuf: use std::deque<>
      Remove bogus endcond
      OGRFeatureDefn: add GetFields() and GetGeomFields() for easier C++ iteration
      CI: disable freebsd.yml as it appears to be flaky [ci skip]
      MITAB: add support for 'Philippine Reference System 1992' datum
      autotest/cpp: avoid different issues (memleaks, etc.) pointed by Coverity Scan
      CMake: issue an error when the user explicitly asks for a condition-dependent driver and the condition is not met
      Internal libtiff: resync with upstream
      rfc64: update links
      CI: make tests run again with ASAN (fixes #6825)
      nitf.py: add test case for #6827 fix
      ogr2ogr: densify points of spatial filter specified with -spat_srs to avoid reprojection artifacts
      OGRFeature/OGRGeometry: add a DumpReadable method that outputs to a string
      ogrinfo: make it accessible through a new GDALVectorInfo() C API call
      SWIG bindings: add gdal.VectorInfo()
      ogrinfo: add a -json switch
      ogrinfo.rst: add words of cautions about dumping features
      OGRToOGCGeomType(): add options to control output
      ogrinfo -json: use geometry types like 'PointZM' instead of human readable '3D Measured Point'
      Add a ogrinfo_output.json.schema
      test_gdalmdiminfo_lib.py: remove obsolete check
      SAR_CEOS: fix small memleak
      gdalbuildvrt: fix read heap-buffer-overflow introduced recently in the fix for #6794 (not affecting released versions)
      FileGDB: avoid crash in the SDK if passing incompatible geometry type (fixes #6836)
      gdalwarp: fix issue with vertical shift, in particular when CRS has US survey foot as vertical unit (fixes #6839)
      Python bindings: make Geometry.__str__() use ExportToIsoWkt() (fixes #6842)
      gdalinfo.rst: add example of -json output
      GDALMDReader: avoid possible stack overflow on hostile XML metadata. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53988
      Coverity Scan fixes
      Add data/gdalinfo_output.schema.json to validate gdalinfo -json output (fixes #6850)
      Add read-only raster driver NOAA_B to read NOAA GEOCON/NADCON5 .b grids
      ogr2ogr: discard features whose intersection with -clipsrc/-clipdst result in a lower dimensionality geometry than the target layer geometry type (refs #6836)
      MRF: make it use PNG driver for decompression of 8-bit images
      PNG: 1.7-2.0x speed-up in whole image decompression with libdeflate on Intel/AMD CPUs
      autotest/gdrivers/png.py: test whole image decompression optimization
      ogr2ogr: add warning when -t_srs is ignored by drivers that automatically reproject to WGS 84 (fixes #6859)
      Doc: geojsonseq.rst: mention that the driver automatically reprojects to WGS 84 (fixes #6859)
      Move bench_ogr_batch and bench_ogr_c_api from apps/ to perftests/
      setdevenv.sh: remove autoconf related stuff, and add perftests subdirectory to PATH
      PDF: update PDFium to 5461
      docker/ubuntu-full/Dockerfile: update for Arrow dependency [ci skip]
      NOAA_B: prevent integer overflow (master only, fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54081)
      CI: macos: disable Arrow/arquet
      CI: cmake_builds.yml: build-mac: disable Arrow/Parquet
      ogr_oapif.py: lint
      OAPIF: add support for OGC API Features - Part 2 CRS extension
      OAPIF driver: add CRS/PREFERRED_CRS open options to control the active CRS
      OAPIF: add a SERVER_FEATURE_AXIS_ORDER open option
      Add OGRLayer::GetSupportedSRSList() and SetActiveSRS(), and implement in OAPIF driver
      Python bindings: gdal.VectorInfo(): add featureCount and extent options
      ogrinfo: output CRS supported list
      ogr2ogr: use SetActiveSRS() when possible when -t_srs is used
      WFS: implement GetSupportedSRSList() and SetActiveSRS()
      OGRSpatialReference: update hard-coded definition of OGC:CRS84 to include the ID
      nitf_spec.xml: add definition for subheader of CSATTB, CEEPHB and CSSFAB DES of GLAS/GFM
      NITF: add capability of decoding DES data part as XML fields
      NITF: add VALIDATE and FAIL_IF_VALIDATION_ERROR open options
      Internal libtiff: resync with upstream (code reformatting)
      SQLITE/GPKG: add a gdal_get_pixel_value() SQL function.
      NOAA_B: add support for VERTCON3 files which are encoded in little-endian
      GPKG: add a gdal_get_layer_pixel_value() SQL function
      /vsiaz/: accept Azure connection string with only BlobEndpoint and SharedAccessSignature (fixes #6870)
      OGR layer algebra: make sure result layer has no duplicated field names (fixes #6851)
      OGCAPI: update for map api; also for tiles but not working properly due to churn in tilematrixset spec (fixes #6832)
      No longer alias VSILFILE* to FILE* in non-DEBUG builds (fixes #6790)
      PNG: avoid accessing [-1] array of a std::vector (fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54174, master only)
      ogr2ogr: make sure an error in GDALClose() of the output dataset result in a non-zero return code (refs https://github.com/Toblerity/Fiona/issues/1169)
      PNG: remove dirty use of std::vector::reserve() (master only, fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54180)
      RawDataset::RasterIO(): add optimization when reading from a BIP dataset to a BIP buffer (fixes #6819)
      Doc: document installing libgdal-arrow-parquet Conda package
      Doc: arrow.rst/parquet.rst: mention libgdal-arrow-parquet conda-forge package
      GPKG: FixupWrongRTreeTrigger(): make it work with table names that need to be quoted (fixes https://github.com/georust/gdal/issues/235)
      Lint: C++ify GDALTranslateOptions structure
      Fix opening /vsizip//path/to/my.zip/my.gpkg with NOLOCK=YES open option
      test_cpl.cpp: fix potential use-after-free
      NITFDataset::InitializeTREMetadata(): fix use-after-free in error code path (master only, issue introduced in 7cc19d0484a)
      GPKG/FlatGeoBuf: speed-up writing of DateTime/Date values
      Doc: ogr2ogr: make it clear that -append automatically enables -update
      GTiff: SRS reader: do not emit warning when reading a projected CRS with GeoTIFF keys override and northing, easting axis order (found when looking at #6905)
      gdalwarp: speed-up warping with cutline when the source dataset or processing chunks are fully contained within the cutline (fixes #6905)
      GPKG: fix issue with StartTransaction() causing features to be omitted when creating background RTree (fixes https://github.com/qgis/QGIS/issues/51188)
      GPKG: add debug traces and testing for issue of https://github.com/qgis/QGIS/issues/51188
      Internal libtiff: test https://gitlab.com/libtiff/libtiff/-/merge_requests/436
      GPKG: Add heuristics to try to detect corrupted RTree generated by GDAL 3.6.0, and disable use of the rtree
      Internal libtiff: resync with upstream (v4.5.0rc3)
      add_javadoc.c: should fix a warning about truncation at line 268
      netCDF: deal with files with decreasing latitudes/north-up orientation and presence of actual_range attribute (fixes #6909)
      ogr2ogr: make -nln flag with GeoJSON output even if a name exists in input GeoJSON (fixes #6920) (#6923)
      Internal libtiff: resync with upstream
      Doc: advertize 3.6.1
      docker/README.md: advertize 3.6.1 images
      Parquet: update to GeoParquet 1.0.0-beta.1 specification (fixes #6646)
      OGRGenSQLResultsLayer::GetFeatureCount(): fix it to return -1 when base layer also returns -1 (fixes #6925)
      Internal libtiff: resync with upstream
      CI: doxygen job: migrate to ubuntu-latest
      ogr_parquet.py: add validation against GeoParquet json schema
      .clang-format: change AllowShortFunctionsOnASingleLine to None
      .pre-commit-config.yaml: exclude other directories
      .clang-format: change IndentCaseLabels to true
      Add .git-blame-ignore-revs
      Fix 'ok' marker for printf / fprintf to make './scripts/detect_printf.sh' happy
      Fix warning about self-assignment
      Fix issue with reformatting and Doxygen
      MSG: use log1p()
      Doc: mention .git-blame-ignore-revs
      LVBAG: fix std::find() test
      Fix formatting to make breathe happy
      GML: fix recognizing WFS GetFeature response with a very long initial XML element (fixes #6940)
      gdal_pam.h: workaround for code including it after <windows.h>
      Doc: VSISync: fix formatting
      ogr2ogr: silent reprojection errors related to IsPolarToWGS84() in OGRGeometryFactory::transformWithOptions() (#6945)
      AAIGRID: fix CreateCopy() of source raster with south-up orientation (fixes #6946)
      Warp: fix crash in multi-threaded mode when doing several warping runs with the same WarpOperation
      GMLReader::LoadClasses(): simplify code by using VSIIngestFile()
      VRTSourcedRasterBand: replace potentially unsafe cpl::down_cast<> by dynamic_cast<>
      VRT: add BLOCKXSIZE and BLOCKYSIZE creation options
      CI: build_mac: fix brew install
      GPKG: avoid SQLite3 locking in CreateLayer() due to RemoveOGREmptyTable()
      GPKG: fix threaded RTree building when creating several layers (3.6.0 regression)
      GPKG: disable async RTree building when creating several layers
      Avoid warning with curl >= 7.55 about CURLINFO_CONTENT_LENGTH_DOWNLOAD being deprecated (fixes Alpine CI)
      Avoid warning with curl >= 7.87 about CURLOPT_PROGRESSFUNCTION being deprecated (fixes Alpine CI)
      Doc: vrt.rst: add explanations for block size
      VRT warp: fix issue when warping a Float32 raster with nodata = +/- FLOAT_MAX
      JPEG/JPEGXL: add a APPLY_ORIENTATION=YES open option to take into account EXIF_Orientation to rotate/flip the image to apply scene orientation
      Build: fix nitfdump build against external libtiff (fixes #6968)
      ogr2ogr: make conversion from GML2 to GPKG work without explicit -lco FID=some_name_different_than_fid
      HTTP: set default User-Agent header to GDAL/x.y.z and add a CPLHTTPSetDefaultUserAgent() function (fixes #6376)
      OGRXercesInstrumentedMemoryManager::deallocate(): avoid (likely harmless) unsigned integer overflow in error code path. Fixes OGRXercesInstrumentedMemoryManager::deallocate
      sentinel2.rst: improve doc
      gdalwarpkernel: fix recently introduced Coverity warning about concurrent access (CID 1502187)
      VRT: fix  recently introduced Coverity warning about potential nullptr deref (CID 1502188)
      CI: build_mac: fix
      docker/ubuntu-full/Dockerfile: add comment (fixes #6978)
      GPKG/SQLite dialect: fix issues when SQL statement provided to ExecuteSQL() starts with space/tabulation/newline (fixes #6976)
      RasterizeLayer: prevent out-of-bounds index/crash on some input data (fixes #6981)
      ogr2ogr.rst: simplify examples
      [Lint] C++'ify GDALWarpAppOptions
      gdalwarp: add -srcband and -dstband options
      Python bindings: add gdal.config_option() and gdal.config_options() context manager
      Python bindings: add gdal.enable_exceptions() context manager
      dev_environment.rst: mention SWIG_REGENERATE_PYTHON
      OpenFileGDB: fix compilation with gcc 4.8.5 of Centos 7.9 (fixes #6991)
      FlatGeoBuf: fix compilation with gcc 4.8.5 of Centos 7.9
      NGW: remove DCAP_ items set to NO (refs #6994) / Add test for all drivers
      GML: default srsDimension to 3 for CityGML files (fixes #6989)
      GML: use srsDimension on top gml:Envelope as the default one (fixes #6986)
      GMLAS: use srsDimension on top gml:Envelope as the default one (fixes #6986)
      .clang-format: add 'ReflowComments: false' and raise PenaltyBreakComment
      Apply modified .clang-format
      gdalwarp: alias -srcband to -b, and improve documentation
      Python bindings: cleanup
      GDALAdjustContrast.cs: remove unused variable
      Doc: add C API section for gdalbuildvrt and gdalwarp
      GRIB tables: update to wmo-im/GRIB2@v30; adds data/grib2_table_4_2_0_21.csv data/grib2_table_4_2_2_6.csv
      Address knownConditionTrueFalse warnings found by cppcheck
      Fix Coverity Scan false positives
      JPEGXL: advertize COMPRESSION_REVERSIBILITY=LOSSY when there is a JPEG reconstruction box
      JPEG: advertize JPEG_QUALITY metadata item in IMAGE_STRUCTURE domain (like for GTiff driver)
      JPEGXL: fix recent build breakage against libjxl 0.6.1
      jpegxl.py: fix test_jpegxl_apply_orientation against libjxl 0.6.1
      JPEGXL: fix lossless copy of JPEG with zlib compressed mask band
      JPEG: implement lossless copy from JPEGXL that has JPEG reconstruction box
      autotest/cpp: fix build without sqlite3
      validate_gpkg.py: make it work better on http://ngageoint.github.io/GeoPackage/examples/rivers.gpkg and http://ngageoint.github.io/GeoPackage/examples/java/example.gpkg
      validate_gpkg.py: fix previous commit
      CPLStringList copy operator: simplify to avoid Coverity scan false positive
      ArrowArray generic: FillBoolArray(): avoid out-of-bounds write access
      test_ogr.cpp: fix to make it runnable from any directory
      GML: fix incorrect behaviour when using GFS_TEMPLATE open option with a .gfs that refers to FeatureProperty/FeaturePropertyList fields (fixes #6932)
      OSRCleanup(): improve documentation (refs #7010)
      JPGDataset::CreateCopy(): fix potential crash recently introduced (master only)
      /vsizip/: add read support for Deflate64 (fixes #7013)
      JPEGXLDataset::CreateCopy(): fix memory leak when writing georeferencing
      JPEG: change behavior to return an error and not just a warning with reading a truncated file
      clang-format.sh: skip degrib
      degrib: replace use of sprintf() with snprintf()
      CI: MacOS fixes
      Doc: advertize v3.6.2
      docker/README.md: advertize v3.6.2
      Add text for RFC90: Direct access to compressed raster data
      gdalmdimtranslate: do not require VRT driver to be registered (fixes #7021)
      Update doc/source/development/rfc/rfc90_read_compressed_data.rst
      Update doc/source/development/rfc/rfc90_read_compressed_data.rst
      RFC90: implementation now handles WEBP driver
      BMP: Make sure file is created at proper size if only calling Create() without writing pixels (fixes #7025)
      BMP: Create(): add checks and warnings for maximum dimensions
      NAS: fix file descriptor leak in error code path (fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54879)
      GDALPolygonizeT(): add sanity check
      GDALRasterPolygonEnumeratorT::NewPolygon(): check memory allocation to avoid crash (fixes #7027)
      frmts/zlib/contrib/infback9: fix Windows linking warnings
      Add a read-only /vsi7z/ virtual file system (depends on libarchive)
      A few tunings to make /vsi7z/ work properly
      CI/Docker: add libarchive dependency
      Add testing for /vsi7z/
      /vsi7z/: add .mpk and .mpkx extensions
      Vagrantfile: add libarchive-dev dependency [ci skip]
      OpenFileGDB geometry builder: fix comment related to polygon reconstruction (fixes #7047)
      GDALProxyPoolRasterBand::FlushCache(): ABI compatible fix for ref counting when calling FlushCache() on GDALProxyPoolMaskBand or GDALProxyPoolOverviewRasterBand
      GDALProxyRasterBand::RefUnderlyingRasterBand(): add 'bool bForceOpen' parameter
      gdal_translate: make -colorinterp work on a source band that is a mask band
      Add VSIDuplicateFileSystemHandler()
      Fix excessive RAM usage when reading a VRT made of single-tiled JPEG2000 files read with the JP2OpenJPEG driver
      Fix mremap() detection with clang 15, and disable HAVE_VIRTUAL_MEM_VMA if HAVE_5ARGS_MREMAP not found
      CSV: fix GetFeatureCount() to work correctly with spatial & attribute filters
      swig/python/osgeo/__init__.py: more robust handling of PATH (cf https://github.com/rasterio/rasterio/pull/2713)
      netCDF: quote variable name in subdataset list if it contains a column character (fixes #7061)
      gdalwarp: fix vshift mode when vertical unit of dstSrs is non-metric
      SQLite/GPKG: allow opening filenames >= 512 characters
      LoadPythonAPI(): take into account 3.12
      MBTiles: fix nullptr deref when calling GetMetadata() on a dataset returned by Create() (fixes #7067)
      OpenFileGDB writer: reserve arrays with an exponential strategy
      VSICurlHandle::ReadMultiRange(): avoid potential infinite loop
      VSICurlHandle::ReadMultiRange(): avoid potential infinite loop (fix previous wrong commit)
      Add VSIVirtualHandle::AdviseRead() virtual method with empty implementation
      VSICachedFile: implement AdviseRead()
      VSIPlugin: implement AdviseRead()
      GTiff: call AdviseRead() in multithreaded read implementation
      /vsicurl/: implement AdviseRead() in a background thread
      gdalwarp: preserve source resolution by default when no reprojection is involved (behaviour change), and add '-tr square' to use previous behavior
      DIMAP: optimize performance of dataset RasterIO() (improve perf on multispectral datasets with JP2KAK underlying driver)
      GTiff: only request in AdviseRead() ranges for blocks we don't have in cache
      testcopywords.cpp: fix build error with clang 15.0.7
      RFC 90 text: typo fixes
      RFC90: remove MIME-type prefix 'image/'
      autotest/cpp/test_gdal.cpp: fix crashes if proj.db not reachable
      Doc: document nodata handling in gdaladdo, gdal_translate and gdalwarp
      autotest: add PROJ grids needed for tests and restrict PROJ search paths to them (fixes #7070)
      CI: no longer download PROJ grids (fixes #7070)
      Typo fixes
      ogr/ogrsf_frmts/generic/CMakeLists.txt: remove dead code
      Doc: OGR VRT: fix 'OGRSQL' (refs #7087)
      GenSQL: fix SetAttributeFilter() when dialect=OGRSQL and not forwarding the initial where clause to the source layer (fixes #7087)
      CMake: quote variables for INTERFACE_INCLUDE_DIRECTORIES / IMPORTED_LOCATION
      gdalsrsinfo: fix crash on 'gdalsrsinfo IAU:2015:49902 -o xml'
      SetField(string argument): for bool, recognize 0/false/off/no as false and 1/true/on/yes as true
      TileDB: avoid hard crash in tiledb_read.py test with tiledb 2.14 (but still a read failure)
      tiledb_read.py: temporary disable test to avoid error with tiledb 2.14
      OGRSpatialReference::importFromWkt(): take into account COORDINATEMETADATA[] (PROJ >= 9.2)
      RFC 90 text: update voting history
      autotest/gdrivers/tiledb_write.py: temporarily disable test_tiledb_write_subdatasets() (refs #7099)
      gdalwarp: better error message when not providing enough values after a switch (fixes #7086)
      CMake: fix wrong test when GDAL_SET_INSTALL_RELATIVE_RPATH is set
      GeoPackage: GetNextArrowArray(): fix retrieving only the geometry (fixes geopandas/pyogrio#212)
      Add RFC 91 text: GDALDataset::Close() method
      PCIDSK SDK: avoid potential thread-safety issue (fixes cppcheck warning)
      OGRSpatialReference::exportToPCI(): avoid cppcheck false positive
      RFC 91: example: catch exception in destructor
      libtiff: resync with upstream
      Silence false-positive Coverity Scan warnings
      Doc: add a page regarding multi-threading and memory fragmentation (fixes #7043)
      netCDF: report GEOLOCATION metadata for a lon/lat indexed variable where lon and/or lat has irregular spacing
      RawDataset::RasterIO(): do not use optimization of 4fd6dd24b53d7f23800e3b05773c5b559255ded6 when there are dirty blocks (fixes #7111)
      Doc: fix hyperlink
      Lint: HDF5: remove unused bIsHDFEOS member variable
      NASAKeywordHandler: add a Parse() method and change Ingest() return type to be bool
      Doc: advertize GDAL master Conda builds
      HDF5: add initial/minimum support for HDFEOS datasets (fixes #7117)
      validate_gpkg.py: make it more robust
      run_py_script_as_external_script(): deal with spaces in directory names
      gdal_retile.py: fix wrong basename for .aux.xml files (fixes #7120)
      Add GDALDataset::GetCompressionFormats() and ReadCompressedData()
      VRT: implement GetCompressionFormats() and ReadCompressedData()
      GTiff: implement GetCompressionFormats() and ReadCompressedData()
      JPEGXL: implement GetCompressionFormats() and ReadCompressedData()
      JPEG: use GetCompressedData()
      JPEGXL: cleaner JPEG->JPEGXL lossless copy
      JPEGXL: add a LOSSLESS_COPY creation option
      JPEG: add a LOSSLESS_COPY creation option
      JPEG: move addition of EXIF and XMP to JPEG codestream from JPEGXL to JPEG
      JPEG: remove EXIF and XMP from ReadCompressedData()
      JPEGXL: implement creation from JPEGXL content, and deal with EXIF/XMP/GeoJP2 boxes
      GTiff: test lossless extraction of a JPEG/JPEGXL compressed tile to JPEG/JPEGXL
      Add C functions GDALDatasetGetCompressionFormats() and GDALDatasetReadCompressedData()
      Add C++ unit tests
      Add C++ unit tests for JPEG driver
      Add C++ unit tests for JPEGXL driver
      JPEG/JPEGXL: take into account progressive JPEG
      JPEGXL: fallback to regular code path if JxlEncoderAddJPEGFrame() fails in auto mode
      Use MIME type style format strings
      ReadCompressedData: replace papszOptions argument with ppszDetailedFormat
      CPLStringList: add begin()/end() for range-based for loops
      GetCompressionFormats() / ReadCompressedData(): add usage examples
      GDALProxyDataset: implement GetCompressionFormats() and ReadCompressedData()
      WEBP: implement GetCompressionFormats() and ReadCompressedData()
      JPEG: add support for reading lossless 8-bit JPEG if using libjpeg-turbo >= 2.2
      GTIFF_CanCopyFromJPEG(): bail out if the source uses lossless JPEG
      RFC 90 impl: remove MIME-type prefix 'image/'
      [Lint] Various linting
      GTiffDataset::GetCompressionFormats(): use switch
      WEBPDataset::CreateCopy(): log exception
      Add read-only vector GTFS (General Transit Feed Specification) driver
      CPLGetPhysicalRAM(): take into account current cgroup (v1 and v2)
      CPLGetPhysicalRAM(): take into account MemTotal limit from /proc/meminfo
      SOZip: add write support
      VSIGZipWriteHandleMT: avoid writing useless bytes at end of last chunk
      SOZip: add read support
      VSICachedFile: optimization: avoid calling LoadBlocks() repeatedly when trying to read a lot of data at end of file compared to chunk size
      Add VSICopyFile()
      Implement CopyFile() for VSIZipFilesystemHandler
      clang-format.sh: ignore swig/* changes
      SWIG bindings: map VSICopyFile() as gdal.CopyFile()
      Add tests for gdal.CopyFile()
      gdal_cp.py: use gdal.CopyFile()
      Add test for gdal.CopyFile() / CPLAddFileInZip()
      Implement GetFileMetadata() for /vsizip/
      Add test for GetFileMetadata() for /vsizip/
      Add testing for sozip writing and reading
      Add a sozip command line utility
      sozip: add a --validate mode
      CPLCopyFile(): remap onto VSICopyFile() (so that .shp.zip writing can automatically generates SOZip)
      GPKG: add direct read and create support for .gpkg.zip files
      VSISOZipHandle: reuse decompressor objects
      sozip: add a --convert-from=in.zip mode
      Breaking change: require offset_size == 8
      VSISOZipHandle::Read(): more efficient strategy with zlib decompression
      /vsizip/: store and retrieve Content-Type of files
      Replace SEEK_OPTIMIZED with SOZIP
      Add more documentation
      Apply suggestions from code review (nullptr related checks)
      sozip.cpp: check return values of VSIFSeekL() and VSIFReadL()
      CI: workaround https://github.com/libjxl/libjxl/issues/2112
      Revert "CI: workaround https://github.com/libjxl/libjxl/issues/2112"
      CI: workaround https://github.com/libjxl/libjxl/issues/2112 (take 2)
      RFC90 text: update status
      OpenFileGDB: fix performance issue when identifying a CRS
      GeoJSONSeq: fix writing to /vsigzip/ (fixes #7130)
      Modify GDALFlushCache() and GDALDataset::FlushCache() to return CPLErr instead of void
      FileGDB driver: rename Close() method to CloseInternal()
      Add GDALDataset::Close() virtual method, call it from GDALClose() and make GDALClose() return a CPLErr
      Implement Close() on all RawDataset derived classes
      GeoJSON: implement Close()
      C/C++ command line utilities: take into account GDALClose() error code
      SWIG bindings: test GDALClose() return value and emit error if needed
      GTiff: implement Close()
      ODS: implement Close()
      XLSX: implement Close()
      SQLite: implement Close()
      GPKG: implement Close()
      netCDF: implement Close()
      JP2OpenJPEG: implement Close()
      GTiff: change signature of Finalize() method
      frmts/pds/: remove useless != nullptr
      [Lint] PNG: constify
      [Lint] PostgisRaster: constify
      CPG: avoid hardcoding the number of bands
      frmts/raw: remove useless != nullptr
      [Lint] TileDB: constify
      [Lint] GDALDataset::FlushCache(): remove useless != nullptr
      [Lint] GDALClose(): remove useless != nullptr
      [Lint] GPKG: remove useless != nullptr
      [Lint] ODS: remove useless != nullptr
      FlatGeoBuf: implement Close()
      OpenFileGDB: implement Close()
      GML geometry parsing: don't promote to 3D a 2D <gml:Box>
      GML: Use geometry in boundedBy element if there are no geometry properties
      GML geometry parsing: don't error out on <gml:null> constructs
      GML: don't error out on <gml:null> constructs
      GMLAS: add BoundingShapeType as a known geometry type
      GML: deal with only <gml:null> in boundedBy element
      Fix memleak in VSIFilesystemHandler::CopyFile() and VSIZipFilesystemHandler::GetFileInfo() (master only)
      JPEG: fix use of uninitialized variable (master only)
      GTiffJPEGOverviewBand::IReadBlock(): remove hack that causes read errors in some circumstances
      GTiff: do not use implicit JPEG overviews with non-nearest resampling
      docker/alpine-normal/Dockerfile: use pre-packaged apache-arrow
      OpenFileGDB: detect broken .spx file with wrong index depth (fixes qgis/qgis#32534)
      OpenFileGDB: index reading: avoid integer overflow on index larger than 2 GB
      [Lint] ogr2ogr_lib.cpp: lint cast operators
      ogr2ogr: fix -clipsrc/-clipdst when clip dataset has SRS != features's geometry (fixes #7126)
      JPEG: remove always true conditions
      JPEGXL: workaround cppcheck false positive about use of out-of-scope variable
      gdalrelationship.cpp: fix wrong references [ci skip]
      [Lint] C++ify GDALVectorTranslateOptions in ogr2ogr
      typo fixes
      ogr2ogr: use CHECK_HAS_ENOUGH_ADDITIONAL_ARGS()
      Fix various Coverity Scan warnings
      ogr2ogr: add a -dateTimeTo option to convert datetime between timezones (fixes #5256)
      RFC 91 text: update
      OpenFileGDB: allow CreateField() with OBJECTID as the column name (fixes #51435)
      ogr.i: remove extra semi-colon characters
      GPKG: fix async RTree building for 1st layer (broken by 08841c53632c6fbfe13719a6711a3230c854e9c4)
      Add RFC 92 text: WKB Only geometries
      GML: fix crash on invalid boundedBy construct. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55565
      GML: fix crash on invalid boundedBy construct. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55568
      /vsicurl/: fix CPL_VSIL_CURL_USE_HEAD=NO mode (fixes #7150)
      Shapefile writer: do no use SHPRewindObject() for [Multi]Polygon layers, but use the input OGRGeometry structure to deduce the windinw order
      CI: alpine: do pip in a venv to please Alpine's pip
      nitf.py: fix test
      NITF: update CLEVEL to appropriate values when using compression / multiple image segments
      COG: avoid warning message when using -co COMPRESS=WEBP -co QUALITY=100 (fixes #7153)
      MITAB: add support for LargeInt (Integer64) data type (fixes #7162)
      MITAB: handle projection methods 34 (extended transverse mercator) and 35 (Hotine Oblique Mercator) (fixes #7161)
      GML: do not try to use bldg:boundedBy elements of CityGML (master only)
      OGRSpatialReference::SetFromUserInput(): recognize urn:adv:crs:ETRS89_UTM32*DE_DHHN92_NH and urn:adv:crs:ETRS89_UTM32*DE_DHHN2016_NH
      GML: fix reading CityGML Lod2 with xlink:href in gml:Solid as found in German datasets (fixes qgis/QGIS#51647)
      netCDF: add heuristics to detect invalid validity range when scale_factor is present (fixes #7167)
      OSRSpatialReference::SetFromUserInput(): skip leading white space (fixes #7170)
      CI: Conda fix
      RMF: fix crash / excessive memory usage on broken/hostile files. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55658
      GML: fix memory leak / crash on invalid documents. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55653 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55663
      ogr_gpkg.py: delete temp file
      GPKG: do not register non-spatial layers on creation if there are already unregistered non-spatial layers (fixes qgis/qgis#51721)
      NITF: fix compiler warning (recently introduced)
      CI: workaround issue with mingw-w64-x86_64-binutils-2.40-1
      swig/python/CMakeLists.txt: generate_gdal_symbols_txt.cmake: fix issue with directory with space
      GTX: fix (likely harmless in practice) integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55718
      Prefix ParseAlgorithmAndOptions() public symbol with GDALGrid for proper namespacing, and add #define alias for API compat (but this is an ABI breakage)
      netCDFDimension::GetIndexingVariable(): be more restrictive
      GDALTriangulationFindFacetDirected(): limit debug message
      MEMMultiDim: implement GetCoordinateVariables() from coordinates attribute
      Add GDALMDArray::GetGridded() and GDALMDArrayGetGridded()
      Conda: add libarchive.patch
      test_ogr_shape.cpp: make sure test_name_ is initialized
      gdallocationinfo: fix issue with VRTComplexSource and nodata (fixes #7183)
      VRT: hopefully make Coverity Scan happy
      BAG: CreateRAT(): fix memory leak
      Shapefile: fix adding features in a .dbf without columns (fixes qgis/qgis#51247)
      Geometry WKT import: accept nan as a value, for parity with PostGIS and GEOS
      ogr2ogr_lib.cpp: use more unique_ptr
      GTiff: add minimum support for reading CRS from ESRI's .xml side car file (fixes #7187)
      GPX: add capability to read & write content of <metadata> element (fixes #7190)
      GTiff: fix generation of external overviews on 1xsmall_height rasters (fixes #7194)
      Warper: do not use OpenCL code path when pafUnifiedSrcDensity is not null (fixes #7192)
      Warper: optimize a bit when warping a chunk fully within the cutline
      gdalwarp help message: add missing -te_srs, -ct, -srcalpha and -nosrcalpha switches
      GML: fix crash on unexpected input. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55772
      netCDFDimension::GetIndexingVariable(): be more restrictive
      gdalmdimtranslate: fix subsetting in the situation of dataset of #7199
      .github/workflows/backport.yml: update to ubuntu-latest
      Revert "CI: workaround issue with mingw-w64-x86_64-binutils-2.40-1"
      ogr2ogr: fix memleak introduced yesterday. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55795
      GdalSetRuntimeEnv.cmake: put GTEST_DIR at end of LD_LIBRARY_PATH
      ZMap creation: fix potential truncation of nodata value (fixes #7203)
      RawDataset: avoid Valgrind use-of-unitialized memory warning (amends 3c5f1a040b98fbe188d55e1ee7061e6937cfaaac)
      autotest: fix 'random' issue with corrupted proj.db when running parallel ctest
      SQLite/RL2: fix issue in Close() implementation (master only)
      ComputeRasterMinMax(), ComputeStatistics(), GetHistogram(): take into account mask band
      Doc: configoptions.rst: remove shell specific way of specifying config option (refs #7210)
      Avoid use of deprecated ZSTD_getDecompressedSize() function with libzstd 1.3+
      OpenFileGDB: make Delete() method to remove the directory (fixes #7216)
      [Lint] openfilegdb: enable STRONG_CXX_WFLAGS and fix related warnings
      NITF: avoid undefined behaviour of 31 bit left shift
      ComputeMinMaxGenericIterBlocks(): remove redundant test
      ogr2ogr: avoid cppcheck false positive about knownConditionTrueFalse
      CI: ubuntu_18.04: workaround Microsoft upstream bug
      Workaround bug in Microsoft unixodbc-dev 2.3.11
      Enable OpenCL at build-time, but disable it at runtime by default unless the USE_OPENCL warping options is set to YES (fixes #7224)
      GPKG: avoid potential int overflows / crash on huge geometries
      shapelib: restore oddly formatted comments [ci skip]
      Shapelib: SHPWriteObject(): prevent potential overflows on 64-bit platforms on huge geometries
      SHPWriteOGRObject(): avoid geometry duplication on a MultiLineString
      FlatGeoBuf: avoid crash when writing huge geometry
      OGRMakeWktCoordinate(): a bit of optimization
      GDALRasterBand::GetHistogram() / ComputeStatistics(): fix memleak in error code path. master only. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55885
      [Lint] Remove useless variable
      autotest: catch MemoryError in test_gdal_EscapeString_errors()
      GdalSetRuntimeEnv.cmake: set USE_PATH_FOR_GDAL_PYTHON=YES on Windows
      Revert "GdalSetRuntimeEnv.cmake: set USE_PATH_FOR_GDAL_PYTHON=YES on Windows"
      gdal_rasterize: support @filename for -sql option (fixes #7232)
      RFC 92: add points raised during discussion, and change status to on hold
      HFA / ERDAS Imagine SRS support: various fixes
      autotest: ecw.py: perhaps fix issue on Tamas builds
      ogr_fgdb.py: fix issues with Tamas builds
      MITAB: fix loading/saving of False Northing for projection method = 35 (master only, fixes #7236)
      vrtmultidim.py: fix _validate()
      gdal_rasterize: ignore features whose Z attribute is null/unset (fixes #7241)
      test_gdalwarp_lib.py: fix too early None setting
      gdalwarp: allow up to inaccuracy in cropline coordinates up to 0.1% of a pixel size for rounding (fixes #7226)
      mbtiles.py: add alternate checksums
      autotest: use gdaltest.SetConfigOption
      PDF: skip JP2ECW driver if ECW_ENCODE_KEY required but not found
      PDF: fix previous commit
      NEWS.md: preliminary 3.7 release notes [ci skip]
      SWIG bindings: add missing OLCUpsertFeature constant
      CPLZSTDGetDecompressedSize: avoid false-positive harmless unsigned integer overflow warning (master only) (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55983)
      Add OGRLayer::UpdateFeature() and OGR_L_UpdateFeature()
      SWIG bindings: add Layer.UpdateFeature() and ogr.OLCUpdateFeature
      Implement IUpdateFeature() in OGRLayerPool and other similar classes of ogrsf_frmts/generic
      MEM: implement UpdateFeature()
      GPKG: implement UpdateFeature()
      MongoDBv3: implement UpdateFeature()
      Test generic OGRLayer::IUpdateFeature() implementation
      PG: implement UpdateFeature()
      Doc: building_from_source.rst: add a 'Typical build issues' paragraph, initiated with PROJ related issues (fixes #7248)
      doc/source/conf.py: add sphinxcontrib.jquery extension needed since sphinx 6.0 (refs #7251)
      doc_build.yml: pin sphinx==6.0.1 to workround https://github.com/sphinx-doc/sphinx/issues/11163 (fixes #7251)
      autotest/CMakeLists.txt: cleanup
      autotest: require 'filelock' Python module to install temporary proj.db copy (fixes #7252)
      test_ogrsf: do not fail if GetNextFeature() emitted a warning
      GeoJSON: avoid duplication of FID in streaming parser (fixes #7258)
      GeoJSON: declare GDAL_DCAP_MEASURED_GEOMETRIES and ODsCMeasuredGeometries, and test_ogrsf test
      Internal libtiff: resync with upstream
      scripts/clang-format.sh: ignore changes in internal libtiff
      .pre-commit-config.yaml: bump isort to 5.12.0 to avoid issues Poetry
      [Lint] in cpl_vsil_libarchive.cpp
      autotest: skip vsirar tests on build-windows-msys2-mingw due to random crashes
      VRT derived band: add a <SkipNonContributingSources>true</SkipNonContributingSources> optional element to discard non contributing sources (fixes #7223)
      VRT derived band: do not call pixel function if no contributing sources and SkipNonContributingSources mode
      FindFileGDB.cmake: add missing include(CMakePushCheckState) [ci skip]
      JPEG: avoid uninitialized bLossless in CreateCopy() that could lead to erroneous metadata (master only)
      JPEG: remove useless runtime detection of arithmetic coding when it is signaled at compile time
      typo fix in CPLDebug() key [ci skip]
      autotest: remove use of deprecated Python API in pytest_runner
      ogrinfo: output relationships in text and json outputs
      Make Coverity Scan happy (CID 1505491)
      VRTSourcedRasterBand::ComputeStatistics(): hopefully fix CID 1504295
      [Lint] in GDALRasterBand::GetActualBlockSize() (and avoid unlikely int overflow)
      GDALAllValidMaskBand::IReadBlock(): avoid int overflow on blocks > 2 GB
      GDALNoDataValuesMaskBand::IReadBlock(): avoid int overflow on blocks > 2 GB
      autotest: avoid failures on missing drivers
      COG or multi-threaded GTiff generation: fix propagation of extra samples/alpha info that affects JXL compression
      TIFF JXL: add a JXL_ALPHA_DISTANCE creation option
      JPEGXL: add a ALPHA_DISTANCE creation option
      Doc: improve explanations about JXL_DISTANCE
      test_ogrinfo_lib.py: use @pytest.mark.require_driver()
      autotest/conftest.py: include driver name in skip reason of @pytest.mark.require_driver()
      typo fixes [ci skip]
      autotest/utilities: use pytest.mark.require_driver() (refs #4487)
      pyscripts/utilities: use pytest.mark.require_driver() (refs #4487)
      CMake: support the 'cmake --install x --prefix y' syntax (with caveat noted in doc) (fixes #7275)
      Doc: initiate recommendations for Python and C++ tests (#7277)
      Doc: vector_api_tut.rst: takes into unset and null fields (fixes #7281)
      ogr_fgdb.py: make it robust to absence of CSV and OpenFileGDB drivers
      FileGDB: CreateField(): do not set Length/Precision from OGR width/precision for floating-point data types (fixes #7283)
      OpenFileGDB: remove traces of dealing with field precision (fixes #7283)
      test_cli_utilities.py: fix get_cli_utility_path_internal() to work without relying on os.getcwd()
      autotest/utilities: use fixture to get the utility filename (fixes #7278)
      test_py_scripts.py: fix get_py_script() to work without relying on os.getcwd()
      autotest/pyscripts: use fixture to get the utility filename (fixes #7278)
      Revert "CI: ubuntu_18.04: workaround Microsoft upstream bug"
      autotest/gdrivers: use pytest.mark.require_driver() (refs #4487)
      test_osr_set_proj_search_paths.cpp: fix test failure with sqlite 3.41
      osr_basic_subprocess.py: fix test failure with sqlite 3.41
      [Lint] test_osr_set_proj_search_paths.cpp
      Docker: add pil/pillow dependency (fixes #7291)
      GML export: fix CurvePolygon export of CompoundCurve and CircularString child elements (fixes #7294)
      autotest/ogr: use pytest.mark.require_driver() (refs #4487)
      docker/util.sh: fix issue when building arm64 Ubuntu images [ci skip]
      CSVSplitLine(): do not treat in a special way double quotes that appear in the middle of a field
      cpl_vsil_crypt.cpp: fix typo in operator new signature introduced accidentaly in efa32b3ac0cbafa342a7def78e4fa9cfb7c19adf (fixes #7304)
      GRIB: fix reading South Polar Stereographic from GRIB1 datasets (fixes #7298)
      Geoloc inverse transformer: fix numeric instability when quadrilaterals are degenerate to triangles (fixes #7302)
      autotest: vsiaz/vsiadls.py: remove http port dependency
      autotest/ogr/ogr_gpkg.py: increase tolerance delay to avoid occasional CI failures
      delaunay.c: avoid clang -Wdocumentation warning
      Shape: make sure eAccess = GA_Update is set on creation (fixes #7311)
      autotest: check that eAccess = GA_Update is set on creation of shapefiles (refs #7311)
      Doc: openfilegdb: clarify write support is for ArcGIS 10 only
      CI: fix installation of lxml with Ubuntu 18.04
      GeoJSON writer: take into account COORDINATE_PRECISION for top bbox (fixes #7319)
      test_ogrinfo_lib.py: test bugfix of https://github.com/OSGeo/gdal/pull/7345
      gdal_polygonize.py: use transactions to speed-up writing
      vrtsourcedrasterband.cpp: avoid Coverity Scan warning
      FindCryptoPP.cmake: properly take into account _LIBRARY_RELEASE/_DEBUG (fixes #7338)
      FindDeflate.cmake: simplify
      FindPoppler.cmake: check that Poppler private headers are available (fixes #7352)
      HDF5: add a GDAL_ENABLE_HDF5_GLOBAL_LOCK build option to add a global lock when the HDF5 library is not built with thread-safety enabled (fixes #7340)
      GPKG: implement loading/saving band statistics in GPKG metadata tables or PAM .aux.xml
      GDALDataset::CopyLayer(): copy source layer metadata, unless the COPY_MD=NO option is specified
      GPKG: add comment
      Add RFC 93 text: OGRLayer::UpdateFeature() method (#7249)
      vrt.rst: fix whitespace
      Pansharpening: require geotransform on panchromatic and multispectral bands
      gdal_polygonize.py: add a -lco option, and fix -o (fixes #7374)
      install_python.cmake.in: fix 9d869859bcc1d5464fa86d82e880d753dea20e7c when setting GDAL_PYTHON_INSTALL_PREFIX (master only)
      gdal_translate: fix crash when specifying -ovr on a dataset that has no overviews (fixes #7376)
      Fix OGRSpatialReference::SetProjCS() on an existing BoundCRS; affects GeoTIFF SRS reader
      scripts/clang-format.sh: exclude frmts/jpeg/libjpeg/
      Internal libjpeg: decompressor: initialize Huffman tables to avoid issues with some FileGDB raster
      gdalinfo_lib.cpp: do not list files of a raster FileGDB unless -json is enabled
      OpenFileGDB: add read-only support for raster datasets
      docker/alpine-normal/Dockerfile: upgrade to HDF 4.2.16 [ci skip]
      hdf-eos: fix potential out-of-bounds access
      CMake: fix -Wdev warning with CMake 3.10 [ci skip]
      CI: remove unused Travis CI configurations
      CMake: make BUILD_JAVA/CSHARP/PYTHON_BINDINGS default value dependent on the presence of requirements, and error out if those variables are set but requirements are missing
      swig/include/cpl.i and gdal_python.i: fix syntax error that fail with SWIG 4.1
      Python bindings: remove generated files and require SWIG to be present
      Docker: add swig dependency for images with Python bindings
      CI: add swig dependency where missing
      CI Travis: remove python2
      Doc: update to reflect SWIG related changes
      HOWTO-RELEASE: update to remove mention of regenerating swig python files
      CMake: make GDAL_JAVA_GENERATE_JAVADOC conditioned by javadoc executable
      ogrinfo -json: honour -fields=NO and -geom=NO; fix handling of OFSTJSON fields (fixes #7346)
      Update doc/source/drivers/raster/openfilegdb.rst
      Update autotest/gdrivers/openfilegdb.py
      COG: relax a bit the tolerance when computing tile number (fine tune 6310c1aecb3b31365fb36daedf064b3aaf3884ca)
      ogr2ogr: fix and automate conversion from list types to String(JSON) when the output driver doesn't support list types but String(JSON) (fixes #7397)
      OGRUnionLayer::GetExtent(): do not emit error on no-geometry layer
      HFA: add a DISABLEPESTRING=YES creation option to disable use of ArcGIS PE String (fixes #1003)
      OGRSQL: fix 'SELECT ... WHERE ... AND ... AND ... AND ... UNION ALL ...' (fixes #3395)
      Doc: gml.rst: remove confusing/useless sentences
      MRF: restore SetSpatialRef() that was wrongly deleted in 3.6.0
      RawRasterBand::CanUseDirectIO(): fix reading of GDAL_ONE_BIG_READ that was broken in master
      RawRasterBand::FlushCache(): avoid crash in some situations
      RawRasterBand::IRasterIO(): fix wrong byte swapping in Direct IO multiline writing code path
      RawRasterBand::IRasterIO(): fix optimized code path that wrongly triggered on BIL layout
      RawRasterBand::IRasterIO(): avoid writing too much bytes (fixes GDAL_ONE_BIG_READ=YES pytest autotest/gdrivers/vrtrawlink.py)
      swig/python/CMakeLists.txt: fix issue with directory name with whitespace and Win32 multiconfig install
      swig/python/CMakeLists.txt: fix installation on Win32 and multiconfig generator (MSVC)
      RawRasterBand::IRasterIO(): avoid reading too much bytes
      RawRasterBand::IRasterIO(): fix floating-point issues with ICC that could result in wrong lines/cols being read/written
      RAW: fix performance issue when reading files with very small width (fixes #1140)
      Python utilities: fix GDALTypeCodeAndNumericTypeCodeFromDataSet() (master only)
      gdal2xyz.py: fix -srcnodata and -dstnodata options (fixes #7410)
      docker/ubuntu-full/Dockerfile: update dependency versions [ci skip]
      MongoDB: avoid get_utf8() deprecatation warning with mongocxx 3.7.0
      PDS4: remove always false condition
      NCDFGetProjAttribs(): use range-based for loops
      Add a gdaltest.require_proj_version(x,y,z) decorator function
      ogr_parquet.py: skip test_ogr_parquet_write_crs_without_id_in_datum_ensemble_members() if PROJ < 7.2 (fixes #7420)
      autotest: use gdaltest.require_proj_version() wherever possible
      Remove remainging mentions of SWIG_REGENERATE_PYTHON [ci skip]
      HDF5: fix detecting if HDF5 library is thread-safe (refs #7340)
      autotest/alg: use pytest.mark.require_driver() (refs #4487)
      autotest/gnm: use pytest.mark.require_driver() (refs #4487)
      autotest/gdrivers: use pytest.mark.require_driver() (refs #4487)
      Revert "doc/source/conf.py: add sphinxcontrib.jquery extension needed since sphinx 6.0 (refs #7251)"
      [Lint] Remove reinterpret_cast<OGRGeometry *> / reinterpret_cast<OGRGeometryH> uses (refs #6643)
      autotest: add testing for CPLAtoGIntBigEx()
      CI Alphine: make sure numpy is available
      userfaultfd: avoid it to stall on 32bit and test real working of syscall in CPLIsUserFaultMappingSupported()
      CI ubuntu_18.04_32bit: reenable userfaultfd
      sed -i "s/reinterpret_cast<GDALDataset \*>/GDALDataset::FromHandle/" (refs #6643)
      sed -i "s/reinterpret_cast<GDALDatasetH>/GDALDataset::FromHandle/" (refs #6643)
      sed -i "s/reinterpret_cast<OGRLayer \*>/OGRLayer::FromHandle/" (refs #6643)
      sed -i "s/reinterpret_cast<OGRLayerH>/OGRLayer::ToHandle/" (refs #6643)
      cpl_vsil_gzip.cpp: use m_poBaseHandle C++ methods directly (refs #6643)
      Make C type VSILFILE an alias of C++ VSIVirtualHandle (and make it a struct for that purpose) (refs #6643)
      port: remove reinterpret_cast of VSILFILE*/VSIVirtualHandle* now they are aliased (refs #6643)
      drivers: remove reinterpret_cast of VSILFILE*/VSIVirtualHandle* now they are aliased (refs #6643)
      /vsicurl/ / CPLHTTPFetch(): add a GDAL_HTTP_NETRC_FILE config option to set the curl netrc file
      GDALVersionInfo("BUILD_INFO"): report CURL_ENABLED=YES and CURL_VERSION=x.y.z
      gdalautotest.built_against_curl(): make it use BUILD_INFO instead of availability of HTTP driver
      autotest: add pytest.mark.require_curl()
      autotest: use pytest.mark.require_curl()
      [Lint] gdalgeopackagerasterband.cpg: const, unique_ptr<>
      autotest: more use of pytest.mark.require_driver()
      gdalopenfilegdbrasterband.cpp: hopefully fix false-positive warning about memleak (CID 1506532)
      gdalopenfilegdbrasterband.cpp: add missin return (CID 1506531)
      GDALVersionInfo(): prefix clang version number with 'clang ' [ci skip]
      GDALVersionInfo(): update & reformat documentation [ci skip]
      Internal libtiff: resync with upstream
      Remove any traces of Rasdaman driver, now moved to OSGeo/gdal-extra-drivers repository (fixes #4808)
      Move HTTP driver in dedicated frmts/http to avoid odd CMake tricks
      CMake: move numpy detection to help for Conda Win
      pytest.ini.in: add addopts = --strict-markers
      OpenFileGDB: take into account SpatialReference.VCSWKID/LatestVCSWKID for compound CRS
      test_ogrsf: relax test
      OpenFileGDB: relax test to detect broken .spx
      VICAR: check error code to detect inconsistent raw raster parameters (avoids https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=56994)
      [Doc] Advertize v3.6.3
      docker/README.md: update with 3.6.3 [ci skip]
      Doc: point OGRGeometry::transform() / OGR_G_Transform() to OGRGeometryFactory::transformWithOptions()
      Multidimensional API: add GDALMDArray::Resize() / GDALMDArrayResize()
      MEM: implement GDALMDArray::Resize()
      netCDF: implement GDALMDArray::Resize()
      Spatialite: remove support for libspatialite < 4.1.2 (fixes #4244)
      Add OGRGeometry::UnaryUnion() / OGR_G_UnaryUnion()
      ogr2ogr: LoadGeometry(): use UnaryUnion()
      CMake: move SQLite3 RTree check in SQLite and GPKG drivers (…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants