Skip to content

Commit 50dc5e4

Browse files
committed
Merge remote-tracking branch 'upstream/master'
2 parents 86d43b9 + 1076850 commit 50dc5e4

File tree

1,084 files changed

+80909
-26929
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,084 files changed

+80909
-26929
lines changed

.github/workflows/android_cmake.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3030

3131
- name: Cache
32-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
32+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
3333
id: cache
3434
with:
3535
path: |

.github/workflows/cifuzz.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
fuzz-seconds: 600
3333
dry-run: false
3434
- name: Upload Crash
35-
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
35+
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
3636
if: failure() && steps.build.outcome == 'success'
3737
with:
3838
name: artifacts

.github/workflows/cmake_builds.yml

Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
- name: Checkout GDAL
3939
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
4040
- name: Setup cache
41-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
41+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
4242
id: cache
4343
with:
4444
path: ${{ github.workspace }}/.ccache
@@ -103,8 +103,7 @@ jobs:
103103
# Build libjxl
104104
# libjxl being still unstable, if the main branch fails to compile/test
105105
# you can replace JXL_TREEISH=main by JXL_TREEISH=sha1_of_known_working_commit
106-
# FIXME: restore JXL_TREEISH=main, once https://github.com/libjxl/libjxl/issues/4410 is solved
107-
JXL_TREEISH=a4e40af31ab4dd6d6b9ce893c4425b7180012916
106+
JXL_TREEISH=main
108107
git clone https://github.com/libjxl/libjxl.git --recursive \
109108
&& cd libjxl \
110109
&& git checkout ${JXL_TREEISH} \
@@ -333,7 +332,7 @@ jobs:
333332
mingw-w64-x86_64-libgeotiff mingw-w64-x86_64-libpng mingw-w64-x86_64-libtiff mingw-w64-x86_64-openjpeg2
334333
mingw-w64-x86_64-python-pip mingw-w64-x86_64-python-numpy mingw-w64-x86_64-python-pytest mingw-w64-x86_64-python-setuptools mingw-w64-x86_64-swig mingw-w64-x86_64-python-psutil mingw-w64-x86_64-blosc mingw-w64-x86_64-libavif
335334
- name: Setup cache
336-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
335+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
337336
id: cache
338337
with:
339338
path: ${{ github.workspace }}\.ccache
@@ -377,19 +376,19 @@ jobs:
377376
- name: Build
378377
run: cmake --build build -j 3
379378
working-directory: ${{ github.workspace }}
380-
- name: test
381-
run: cmake --build build --target quicktest
382-
working-directory: ${{ github.workspace }}
383-
- name: test (with ctest)
384-
run: |
385-
ctest --test-dir $GITHUB_WORKSPACE/build -C Release -V -j 3
386-
env:
387-
BUILD_NAME: mingw64
388-
SKIP_OGR_GMLAS_HUGE_PROCESSING_TIME: YES
389-
SKIP_OGR_GMLAS_HTTP_RELATED: YES
390-
SKIP_TIFF_JPEG12: YES
391-
SKIP_VSIRAR: YES
392-
working-directory: ${{ github.workspace }}
379+
#- name: test
380+
# run: cmake --build build --target quicktest
381+
# working-directory: ${{ github.workspace }}
382+
#- name: test (with ctest)
383+
# run: |
384+
# ctest --test-dir $GITHUB_WORKSPACE/build -C Release -V -j 3
385+
# env:
386+
# BUILD_NAME: mingw64
387+
# SKIP_OGR_GMLAS_HUGE_PROCESSING_TIME: YES
388+
# SKIP_OGR_GMLAS_HTTP_RELATED: YES
389+
# SKIP_TIFF_JPEG12: YES
390+
# SKIP_VSIRAR: YES
391+
# working-directory: ${{ github.workspace }}
393392
- name: Install
394393
run: cmake --build build --target install -j 3
395394
working-directory: ${{ github.workspace }}
@@ -479,8 +478,8 @@ jobs:
479478
- name: test (with ctest)
480479
shell: bash -l {0}
481480
run: |
482-
# Exclude doc spellcheck as it crashes
483-
ctest --test-dir $GITHUB_WORKSPACE/build -C Release -V -j 3 -E spelling
481+
# Exclude doc spellcheck and example tests as they crash
482+
ctest --test-dir $GITHUB_WORKSPACE/build -C Release -V -j 3 -E doc
484483
env:
485484
SKIP_OGR_GMLAS_HUGE_PROCESSING_TIME: YES
486485
SKIP_OGR_GMLAS_HTTP_RELATED: YES
@@ -540,16 +539,23 @@ jobs:
540539
- name: Install dependency
541540
shell: bash -l {0}
542541
run: |
543-
conda install --yes --quiet proj pytest pytest-env pytest-benchmark filelock lxml cmake setuptools
542+
conda install --yes --quiet proj python=3.12 swig pytest pytest-env pytest-benchmark filelock lxml cmake setuptools
544543
- name: Check CMake version
545544
shell: bash -l {0}
546545
run: |
547546
cmake --version
547+
548+
- name: Remove conflicting libraries
549+
shell: bash -l {0}
550+
run: |
551+
rm -rf C:/Strawberry || /bin/true
552+
rm -rf "C:/Program Files/OpenSSL/lib" || /bin/true
553+
548554
- name: Configure
549555
shell: bash -l {0}
550556
run: |
551557
mkdir -p $GITHUB_WORKSPACE/build
552-
cmake -A ${architecture} -G "${generator}" "-DCMAKE_PREFIX_PATH=${CONDA}/envs/gdalenv" -Werror=dev "-DCMAKE_CXX_COMPILER_LAUNCHER=clcache" -DCMAKE_UNITY_BUILD=${CMAKE_UNITY_BUILD} -S "$GITHUB_WORKSPACE" -B "$GITHUB_WORKSPACE/build" -DCMAKE_C_FLAGS=" /WX" -DCMAKE_CXX_FLAGS=" /WX" -DGDAL_USE_EXTERNAL_LIBS:BOOL=OFF -DWERROR_DEV_FLAG="-Werror=dev"
558+
cmake -A ${architecture} -G "${generator}" "-DCMAKE_PREFIX_PATH=${CONDA}/envs/gdalenv" -Werror=dev "-DCMAKE_CXX_COMPILER_LAUNCHER=clcache" -DCMAKE_UNITY_BUILD=${CMAKE_UNITY_BUILD} -S "$GITHUB_WORKSPACE" -B "$GITHUB_WORKSPACE/build" -DCMAKE_C_FLAGS=" /WX" -DCMAKE_CXX_FLAGS=" /WX" -DGDAL_USE_EXTERNAL_LIBS:BOOL=OFF -DWERROR_DEV_FLAG="-Werror=dev" -DCMAKE_CXX_STANDARD=20
553559
- name: Build
554560
shell: bash -l {0}
555561
run: cmake --build $GITHUB_WORKSPACE/build --config RelWithDebInfo -j 2
@@ -615,7 +621,7 @@ jobs:
615621
- name: Checkout GDAL
616622
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
617623
- name: Setup cache
618-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
624+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
619625
id: cache
620626
with:
621627
path: ${{ github.workspace }}/.ccache
@@ -704,7 +710,7 @@ jobs:
704710
- uses: conda-incubator/setup-miniconda@835234971496cad1653abb28a638a281cf32541f # v3.2.0
705711
with:
706712
activate-environment: gdalenv
707-
python-version: 3.9
713+
python-version: "3.10"
708714
channels: conda-forge
709715
- name: Install dependency
710716
shell: bash -l {0}

.github/workflows/code_checks.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ jobs:
167167
runs-on: ubuntu-24.04
168168
steps:
169169
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
170-
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
170+
- uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
171171
- uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd # v3.0.1
172172

173173
other_checks:
@@ -196,9 +196,9 @@ jobs:
196196
- name: Checkout
197197
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
198198
- name: Set up Python
199-
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
199+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
200200
with:
201-
python-version: 3.8
201+
python-version: "3.10"
202202
- name: Install lint tool
203203
run: |
204204
PYTHON_CMD=python3 && $PYTHON_CMD -m pip --upgrade pip
@@ -229,9 +229,9 @@ jobs:
229229
- name: Checkout
230230
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
231231
- name: Set up Python
232-
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
232+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
233233
with:
234-
python-version: 3.8
234+
python-version: "3.10"
235235
- name: Check cmakelist
236236
run: |
237237
python scripts/collect_config_options.py
@@ -244,9 +244,9 @@ jobs:
244244
- name: Checkout
245245
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
246246
- name: Set up Python
247-
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
247+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
248248
with:
249-
python-version: 3.8
249+
python-version: "3.10"
250250
- name: Check cmakelist
251251
run: |
252252
python scripts/collect_driver_connection_prefix.py

.github/workflows/codeql.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,13 +102,14 @@ jobs:
102102
-DCMAKE_BUILD_TYPE=Debug \
103103
-DGDAL_USE_LERC_INTERNAL=OFF \
104104
-DBUILD_TESTING=OFF \
105+
-DCMAKE_CXX_FLAGS="-DDEBUG_VERBOSE -Werror" \
105106
-G Ninja \
106107
107108
# Initializes the CodeQL tools for scanning.
108109
# We do that after running CMake to avoid CodeQL to trigger during CMake time,
109110
# in particular during HDF5 detection which is terribly slow (https://github.com/OSGeo/gdal/issues/9549)
110111
- name: Initialize CodeQL
111-
uses: github/codeql-action/init@3c3833e0f8c1c83d449a7478aa59c036a9165498 # v3.29.5
112+
uses: github/codeql-action/init@0499de31b99561a6d14a36a5f662c2a54f91beee # v3.29.5
112113
with:
113114
languages: ${{ matrix.language }}
114115
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -128,6 +129,6 @@ jobs:
128129
cmake --build build -j$(nproc)
129130
130131
- name: Perform CodeQL Analysis
131-
uses: github/codeql-action/analyze@3c3833e0f8c1c83d449a7478aa59c036a9165498 # v3.29.5
132+
uses: github/codeql-action/analyze@0499de31b99561a6d14a36a5f662c2a54f91beee # v3.29.5
132133
with:
133134
category: "/language:${{matrix.language}}"

.github/workflows/conda.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ jobs:
2929
strategy:
3030
fail-fast: true
3131
matrix:
32-
# macos-13: Intel
32+
# macos-15-intel: Intel
3333
# macos-14: arm64
34-
platform: ['ubuntu-latest','windows-latest','macos-13','macos-14']
34+
platform: ['ubuntu-latest','windows-latest','macos-15-intel','macos-14','ubuntu-24.04-arm']
3535

3636
env:
3737
GHA_CI_PLATFORM: ${{ matrix.platform }}
@@ -45,7 +45,7 @@ jobs:
4545
if: matrix.platform == 'windows-latest'
4646

4747
- name: Cache Conda Environment
48-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
48+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
4949
with:
5050
path: ~/conda_pkgs_dir
5151
key: ${{ runner.os }}-${{ steps.get-date.outputs.today }}-conda-${{ env.CACHE_NUMBER }}
@@ -74,7 +74,7 @@ jobs:
7474
source ../ci/travis/conda/compile.sh
7575
working-directory: ./gdal-feedstock
7676

77-
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
77+
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
7878
with:
7979
name: ${{ matrix.platform }}-conda-package
8080
path: ./gdal-feedstock/packages/

.github/workflows/doc_checks.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ jobs:
3636
. doc_env/bin/activate
3737
python3 -m pip install -r doc/requirements.txt
3838
python3 -m pip install setuptools
39+
python3 -m pip install pytest
40+
python3 -m pip install docstub
3941
echo PATH=$PATH >> $GITHUB_ENV
4042
4143
- name: Build GDAL
@@ -73,18 +75,32 @@ jobs:
7375
if find . -name '*.rst' | xargs grep "\.\.warning"; then echo 'Wrong annotation. Should be .. warning'; false; fi
7476
if find . -name '*.rst' | xargs grep "\.\.codeblock"; then echo 'Wrong annotation. Should be .. codeblock'; false; fi
7577
working-directory: ./doc
78+
7679
- name: Doxygen
7780
shell: bash -l {0}
7881
run: |
7982
cmake --build . --target doxygen_xml
8083
working-directory: build
84+
85+
- name: Test documentation examples
86+
shell: bash -l {0}
87+
run: |
88+
ctest -V -R doc-examples --output-on-failure
89+
working-directory: build
90+
8191
- name: Spelling
8292
shell: bash -l {0}
8393
run: |
8494
python3 -c 'from osgeo import gdal'
8595
ctest -V -R spelling --output-on-failure
8696
working-directory: build
8797

98+
- name: Docstub annotations
99+
shell: bash -l {0}
100+
run: |
101+
ctest -V -R docstub-annotations --output-on-failure
102+
working-directory: build
103+
88104
# ReadTheDocs pull requests do not build PDF, but we can break it though,
89105
# so build it here
90106
- name: PDF build
@@ -96,7 +112,7 @@ jobs:
96112
working-directory: build
97113

98114
- name: Upload PDF
99-
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
115+
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
100116
with:
101117
name: gdal.pdf
102118
path: build/doc/build/latex/gdal.pdf

0 commit comments

Comments
 (0)