Skip to content
Permalink
Browse files

Merge branch 'master' into pg_json

  • Loading branch information
stev-0 committed Dec 23, 2019
2 parents d2e3ef6 + 4f625ce commit 9af0c224b749bc57bdddca8fad7365876834db06
Showing 1,077 changed files with 47,480 additions and 16,154 deletions.
@@ -0,0 +1,230 @@
variables:
LR: release-3_10
LTR: release-3_4
CTEST_CUSTOM_TESTS_IGNORE: "ProcessingGdalAlgorithmsRasterTest;ProcessingGdalAlgorithmsVectorTest;ProcessingGrass7AlgorithmsImageryTest;ProcessingGrass7AlgorithmsRasterTest;ProcessingGrass7AlgorithmsVectorTest;ProcessingGuiTest;ProcessingOtbAlgorithmsTest;ProcessingQgisAlgorithmsTestPt1;ProcessingQgisAlgorithmsTestPt2;ProcessingQgisAlgorithmsTestPt3;ProcessingQgisAlgorithmsTestPt4;ProcessingScriptUtilsTest;PyQgsAnnotation;PyQgsAppStartup;PyQgsAuthManagerOAuth2OWSTest;PyQgsAuthManagerPasswordOWSTest;PyQgsAuthManagerPKIOWSTest;PyQgsAuthManagerProxy;PyQgsAuthSettingsWidget;PyQgsAuxiliaryStorage;PyQgsBlockingNetworkRequest;PyQgsExifTools;PyQgsFileDownloader;PyQgsFileUtils;PyQgsGeometryTest;PyQgsImageCache;PyQgsImportIntoPostGIS;PyQgsLayoutAtlas;PyQgsLayoutLegend;PyQgsLayoutMap;PyQgsLayoutMapGrid;PyQgsMapLayer;PyQgsOfflineEditingWFS;PyQgsOGRProvider;PyQgsOGRProviderGpkg;PyQgsOGRProviderSqlite;PyQgsPalLabelingCanvas;PyQgsPalLabelingLayout;PyQgsPalLabelingPlacement;PyQgsPointDisplacementRenderer;PyQgsProject;PyQgsProviderConnectionGpkg;PyQgsProviderConnectionPostgres;PyQgsPythonProvider;PyQgsRasterFileWriter;PyQgsRasterLayer;PyQgsSelectiveMasking;PyQgsServerAccessControlWMSGetlegendgraphic;PyQgsServerApi;PyQgsServerCacheManager;PyQgsServerLocaleOverride;PyQgsServerSecurity;PyQgsServerSettings;PyQgsServerWMS;PyQgsServerWMSDimension;PyQgsServerWMSGetFeatureInfo;PyQgsServerWMSGetLegendGraphic;PyQgsServerWMSGetMap;PyQgsServerWMSGetPrint;PyQgsServerWMTS;PyQgsSettings;PyQgsShapefileProvider;PyQgsSpatialiteProvider;PyQgsSvgCache;PyQgsSymbolLayer;PyQgsTaskManager;PyQgsTextRenderer;PyQgsVectorFileWriter;PyQgsVectorLayer;PyQgsVectorLayerUtils;PyQgsVirtualLayerProvider;PyQgsWFSProviderGUI;PyQgsZipUtils;qgis_3drenderingtest;qgis_alignrastertest;qgis_arcgisrestutilstest;qgis_banned_keywords;qgis_browsermodeltest;qgis_callouttest;qgis_compositionconvertertest;qgis_coordinatereferencesystemtest;qgis_datadefinedsizelegendtest;qgis_datumtransformdialog;qgis_diagramtest;qgis_doxygen_order;qgis_dxfexporttest;qgis_expressiontest;qgis_filedownloader;qgis_geometrycheckstest;qgis_geometrytest;qgis_geonodeconnectiontest;qgis_grassprovidertest7;qgis_imagecachetest;qgis_invertedpolygonrenderertest;qgis_labelingenginetest;qgis_layerdefinitiontest;qgis_layout3dmaptest;qgis_layouthtmltest;qgis_layoutlabeltest;qgis_layoutmapgridtest;qgis_layoutmaptest;qgis_layoutpicturetest;qgis_layoutscalebartest;qgis_layouttabletest;qgis_legendrenderertest;qgis_licenses;qgis_maprendererjobtest;qgis_maprotationtest;qgis_mapsettingsutilstest;qgis_maptooladdfeatureline;qgis_mimedatautilstest;qgis_networkaccessmanagertest;qgis_openclutilstest;qgis_painteffecttest;qgis_pallabelingtest;qgis_processingtest;qgis_projecttest;qgis_qgisappclipboard;qgis_rasterlayersaveasdialog;qgis_shellcheck;qgis_sipify;qgis_sip_include;qgis_sip_uptodate;qgis_spelling;qgis_styletest;qgis_svgcachetest;qgis_taskmanagertest;qgis_transformdialog;qgis_valuerelationwidgetwrapper;qgis_vectorfilewritertest;qgis_wcsprovidertest;qgis_ziplayertest;qgis_meshcalculator;qgis_pointlocatortest;PyQgsExpressionBuilderWidget;PyQgsDatumTransform"
Agent.Source.Git.ShallowFetchDepth: 120

trigger:
branches:
include:
- master
- $(LR)
- $(LTR)
- azure-pipelines

pr:
- master
- $(LR)
- $(LTR)

jobs:
- job: OSGeo4W
pool:
vmImage: vs2015-win2012r2
timeoutInMinutes: 360
strategy:
maxParallel: 4
matrix:
x86:
OSGEO4W_ROOT: C:\OSGeo4W
OSGEO4W_ARCH: x86
CLCACHE_DIR: c:\clcache-x86
PLATFORM: x86
CC: C:\OSGeo4W\bin\clcache.bat
CXX: C:\OSGeo4W\bin\clcache.bat

x86_64:
OSGEO4W_ROOT: C:\OSGeo4W64
OSGEO4W_ARCH: x86_64
CLCACHE_DIR: c:\clcache-x86_64
PLATFORM: x64
CC: C:\OSGeo4W64\bin\clcache.bat
CXX: C:\OSGeo4W64\bin\clcache.bat

steps:
- bash: |
if [ "$BUILD_REASON" = "PullRequest" ]; then
branch=$SYSTEM_PULLREQUEST_TARGETBRANCH
pr=$SYSTEM_PULLREQUEST_PULLREQUESTNUMBER
else
branch=$BUILD_SOURCEBRANCHNAME
fi
echo "BRANCH: ${branch}"
echo "PR: ${pr}"
echo "LR: ${LR}"
echo "LTR: ${LTR}"
case "${branch}" in
"${LTR}")
OSGEO4W_PKG=qgis-ltr-dev
OSGEO4W_DEPS=qgis-ltr-dev-deps
;;
"${LR}")
OSGEO4W_PKG=qgis-rel-dev
OSGEO4W_DEPS=qgis-rel-dev-deps
;;
*)
OSGEO4W_PKG=qgis-dev
OSGEO4W_DEPS=qgis-dev-deps
;;
esac
target=Experimental
major=$(sed -ne 's/^SET(CPACK_PACKAGE_VERSION_MAJOR "\([0-9]*\)")\s*$/\1/p' CMakeLists.txt)
minor=$(sed -ne 's/^SET(CPACK_PACKAGE_VERSION_MINOR "\([0-9]*\)")\s*$/\1/p' CMakeLists.txt)
patch=$(sed -ne 's/^SET(CPACK_PACKAGE_VERSION_PATCH "\([0-9]*\)")\s*$/\1/p' CMakeLists.txt)
binary=$(curl --location-trusted https://download.osgeo.org/osgeo4w/$OSGEO4W_ARCH/release/qgis/$OSGEO4W_PKG/LATEST.sha | sed -e "s/:.*$//")
(( binary++ )) || true
version=$major.$minor.$patch
sha="${BUILD_SOURCEVERSION:0:10}"
if [ "$BUILD_REASON" = "PullRequest" ]; then
buildname="PR $pr / $branch ($BUILD_BUILDID) ($sha) ($OSGEO4W_PKG $target $OSGEO4W_ARCH)" # no colons allowed here
else
buildname="$OSGEO4W_PKG-$version-$sha-$target-VC14-$OSGEO4W_ARCH"
fi
url=$buildname
url=${url//(/%28}
url=${url//)/%29}
url=${url// /+}
url="https://cdash.orfeo-toolbox.org/index.php?project=QGIS&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercombine=and&filtercount=2&showfilters=1&filtercombine=and&field1=buildname&compare1=61&value1=$url&field2=site&compare2=61&value2=azure-pipelines"
echo "##vso[task.setvariable variable=TARGET]$target"
echo "##vso[task.setvariable variable=OSGEO4W_PKG]$OSGEO4W_PKG"
echo "##vso[task.setvariable variable=OSGEO4W_DEPS]$OSGEO4W_DEPS"
echo "##vso[task.setvariable variable=MAJOR]$major"
echo "##vso[task.setvariable variable=MINOR]$minor"
echo "##vso[task.setvariable variable=PATCH]$patch"
echo "##vso[task.setvariable variable=BINARY]$binary"
echo "##vso[task.setvariable variable=VERSION]$version"
echo "##vso[task.setvariable variable=BUILDNAME]$buildname"
echo "##vso[task.setvariable variable=DASHURL]$url"
displayName: 'Setup build variables'
- script: curl --output c:\setup-x86.exe https://cygwin.com/setup-x86.exe
displayName: 'Download cygwin Installer'

- script: curl --output c:\osgeo4w-setup.exe https://download.osgeo.org/osgeo4w/osgeo4w-setup-%OSGEO4W_ARCH%.exe
displayName: 'Download OSGeo4W Installer'

- script: curl --location-trusted --output c:\cmake.msi https://github.com/Kitware/CMake/releases/download/v3.15.5/cmake-3.15.5-win64-x64.msi
displayName: 'Download CMake Installer'

- script: curl --location-trusted --output c:\ninja.zip https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-win.zip
displayName: 'Download Ninja'

# - script: curl --location-trusted --output c:\depends.zip http://www.dependencywalker.com/depends22_%PLATFORM%.zip
# displayName: 'Download Dependency walker'

# Too large…
# - task: Cache@2
# inputs:
# key: 'cygwin | $(Date:yyyyMMdd)'
# path: 'c:\cygwin'
# restoreKeys: |
# cygwin | $(Date:yyyyMM)
# cygwin | $(Date:yyyy)
# cygwin
# displayName: Cache cygwin

- powershell: ms-windows/osgeo4w/runasadmin.ps1 c:\setup-x86.exe -qnNdO -R C:/cygwin -s http://cygwin.mirror.constant.com -l C:/temp/cygwin -P "bison,flex,git,poppler,doxygen,unzip"
displayName: 'Installing cygwin'

# Too large…
# - task: Cache@2
# inputs:
# key: 'osgeo4w | $(OSGEO4W_ARCH) | $(Date:yyyyMMdd)'
# path: '$(OSGEO4W_ROOT)'
# restoreKeys: |
# osgeo4w | $(OSGEO4W_ARCH) | $(Date:yyyyMMdd)
# osgeo4w | $(OSGEO4W_ARCH) | $(Date:yyyyMM)
# osgeo4w | $(OSGEO4W_ARCH) | $(Date:yyyy)
# osgeo4w | $(OSGEO4W_ARCH)
# displayName: Cache OSGeo4W

- powershell: ms-windows/osgeo4w/runasadmin.ps1 c:\osgeo4w-setup.exe --autoaccept --advanced --arch $env:OSGEO4W_ARCH --quiet-mode --upgrade-also --root $env:OSGEO4W_ROOT --only-site -s http://download.osgeo.org/osgeo4w -l c:\temp\osgeo4w -P $env:OSGEO4W_DEPS -P python3-clcache
displayName: 'Installing OSGeo4W'

- script: |
rmdir /s /q c:\temp\cygwin
rmdir /s /q c:\temp\osgeo4w
displayName: 'Clear package caches'
- powershell: ms-windows/osgeo4w/runasadmin.ps1 msiexec.exe /X C:\Windows\Installer\146218.msi /qn /norestart /l*v c:\cmake-uninstall.log
displayName: 'Uninstalling old CMake'

- powershell: ms-windows/osgeo4w/runasadmin.ps1 msiexec.exe /I c:\cmake.msi /qn /norestart /l*v c:\cmake-install.log
displayName: 'Installing CMake'

- script: c:\cygwin\bin\unzip -o c:\ninja.zip -d %OSGEO4W_ROOT%\bin
displayName: 'Extracting Ninja'

# - script: c:\cygwin\bin\unzip -o c:\depends.zip -d %OSGEO4W_ROOT%\bin
# displayName: 'Extracting Dependency Walker'

- script: |
PATH %OSGEO4W_ROOT%\bin;%ProgramFiles%\CMake\bin;%PATH%
cmake --version
ctest --version
ninja --version
displayName: 'Display tool versions'
# Too large…
# - task: Cache@2
# inputs:
# key: 'clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG) | $(Date:yyyyMMdd) | $(Hours)'
# path: '$(CLCACHE_DIR)'
# restoreKeys: |
# clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG) | $(Date:yyyyMMdd) | $(Hours)
# clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG) | $(Date:yyyyMMdd)
# clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG) | $(Date:yyyyMM)
# clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG) | $(Date:yyyy)
# clcache | $(OSGEO4W_ARCH) | $(OSGEO4W_PKG)
# displayName: Cache clcache

- script: |
echo on
PATH c:\cygwin\bin;%OSGEO4W_ROOT%\bin;%PATH%
cd ms-windows\osgeo4w
touch skippackage
set OSGEO4W_CXXFLAGS=/MD /MP /Od /D NDEBUG
@echo "##[section] %OSGEO4W_ARCH% results available at %DASHURL%"
package-nightly.cmd %VERSION% %BINARY% %OSGEO4W_PKG% %OSGEO4W_ARCH% %BUILD_SOURCEVERSION:~0,10% azure-pipelines
displayName: 'Building QGIS'
# - script: |
# echo on
# PATH %OSGEO4W_ROOT%\bin;%PATH%
# cd ms-windows\osgeo4w\build-%OSGEO4W_PKG%-%OSGEO4W_ARCH%
# set /P tag=<Testing\TAG
# dir /s /b Testing\*.log
# echo ##vso[task.uploadfile]%CD%\Testing\Temporary\LastBuild_%tag%.log
# call %OSGEO4W_ROOT%\bin\o4w_env.bat
# call %OSGEO4W_ROOT%\bin\qt5_env.bat
# call %OSGEO4W_ROOT%\bin\py3_env.bat
# depends /c /f:1 /ot:c:\crssync.log output\bin\crssync.exe
# echo ##vso[task.uploadfile]c:\crssync.log
# displayName: 'Upload build log'

- task: PublishTestResults@2
inputs:
testResultsFormat: 'cTest'
testResultsFiles: 'ms-windows/osgeo4w/build-$(OSGEO4W_PKG)-$(OSGEO4W_ARCH)/Testing/*/Test.xml'
failTaskOnFailedTests: true
displayName: 'Publishing tests'

# - script: |
# PATH c:\cygwin\bin;%PATH%
# pwd
# du -sc c:\cygwin
# du -sc %OSGEO4W_ROOT%
# du -sc %CLCACHE_DIR%
# du -sc .
# rmdir /s /q ms-windows\osgeo4w\build-$(OSGEO4W_PKG)-$(OSGEO4W_ARCH)
# displayName: Clean before creating the caches

# vim: set nowrap :
@@ -74,7 +74,7 @@ else
body='{
"request": {
"branch":"master",
"message": "Trigger PyQGIS doc build after release of new Docker image as __DOCKER_TAG__",
"message": "Trigger PyQGIS doc after release of __DOCKER_TAG__",
"config": {
"merge_mode": "deep_merge",
"matrix": {
@@ -18,3 +18,6 @@ PyQgsDbManagerPostgis
# Needs an OpenCL device, the library is not enough
qgis_openclutilstest

# Relies on a broken/unreliable 3rd party service
qgis_layerdefinition

@@ -10,7 +10,10 @@ jobs:
runs-on: ubuntu-18.04
name: Backport
steps:
- name: Backport
uses: tibdex/backport@v1
- name: Backport Bot
uses: Gaurav0/backport@v1.0.24
with:
bot_username: qgis-bot
bot_token: ddbdec32940df79f1adf2369b4b10f10b5a66f65
bot_token_key: a1b2c3d47311f8e29e204f85a81b4df4a44e252c
github_token: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,21 @@
name: Windows cross build with MXE

on: [push]

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- name: Cross build with MXE
run: cd $GITHUB_WORKSPACE && ms-windows/mxe/build.sh
- name: Rename artifact
run: cd $GITHUB_WORKSPACE && mv qgis-mxe-release-*.zip qgis-mxe-release.zip
- name: Upload build
uses: actions/upload-artifact@v1
with:
name: QGIS for Windows 64bit
path: qgis-mxe-release.zip

@@ -529,6 +529,7 @@ IF (PEDANTIC)
SET(_warnings "${_warnings} /wd4706 ") # assignment within conditional expression (pal)
SET(_warnings "${_warnings} /wd4714 ") # function '...' marked as __forceinline not inlined (QString::toLower/toUpper/trimmed)
SET(_warnings "${_warnings} /wd4800 ") # 'int' : forcing value to bool 'true' or 'false' (performance warning)
SET(_warnings "${_warnings} /wd4996 ") # '...': was declared deprecated (unfortunately triggered when implementing deprecated interfaces even when it is deprecated too)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_warnings}")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_warnings}")
ELSE (MSVC)
@@ -2,6 +2,7 @@

[![Build Status](https://travis-ci.org/qgis/QGIS.svg?branch=master)](https://travis-ci.org/qgis/QGIS)
[![Docker Status](https://img.shields.io/docker/automated/qgis/qgis.svg)](https://cloud.docker.com/app/qgis/repository/docker/qgis/qgis/general)
[![Build Status](https://dev.azure.com/qgis/QGIS/_apis/build/status/qgis.QGIS?branchName=master)](https://dev.azure.com/qgis/QGIS/_build/latest?definitionId=1&branchName=master)

QGIS is an Open Source Geographic Information System. The project was born in
May of 2002 and was established as a project on SourceForge in June of the same
@@ -100,7 +100,7 @@ else(EXISTS "${PYTHON_INCLUDE_PATH}" AND EXISTS "${PYTHON_LIBRARY}" AND EXISTS "
if(APPLE)
# keep reference to system or custom python site-packages
# useful during app-bundling operations
set(PYTHON_SITE_PACKAGES_SYS ${PYTHON_SITE_PACKAGES_DIR})
set(PYTHON_SITE_PACKAGES_SYS ${PYTHON_SITE_PACKAGES_DIR} CACHE FILEPATH "Directory holding Python site packages")
endif(APPLE)
set(PYTHON_LIBRARIES ${PYTHON_LIBRARY})
if(NOT PYTHONLIBRARY_FIND_QUIETLY)
@@ -27,18 +27,7 @@ SET(CTEST_CUSTOM_COVERAGE_EXCLUDE

# Exclude try_compile sources from coverage results:
"/CMakeFiles/CMakeTmp/"

# Exclude files from the Examples directories
#".*/Examples/.*"

# Exclude files from the ThirdParty Utilities directories
".*/Testing/Utilities/.*"
".*/Utilities/.*"

# Exclude SWIG wrappers files
".*/Code/Wrappers/SWIG/otbApplicationPYTHON_wrap.*"
".*/Code/Wrappers/SWIG/otbApplicationJAVA_wrap.*"
)
)

# warning to ignore via regex expressions
SET(CTEST_CUSTOM_WARNING_EXCEPTION
@@ -56,3 +45,5 @@ SET(CTEST_CUSTOM_WARNING_EXCEPTION
"ld.*warning.*duplicate dylib.*"
"pyconfig.h:.*warning:.*XOPEN.*SOURCE.*redefined"
)

SET(CTEST_CUSTOM_TESTS_IGNORE ${CTEST_CUSTOM_TESTS_IGNORE} $ENV{CTEST_CUSTOM_TESTS_IGNORE})
@@ -84,6 +84,7 @@ IF(WITH_APIDOC)
${CMAKE_SOURCE_DIR}/src/core/geocms
${CMAKE_SOURCE_DIR}/src/core/geocms/geonode
${CMAKE_SOURCE_DIR}/src/core/gps
${CMAKE_SOURCE_DIR}/src/core/labeling
${CMAKE_SOURCE_DIR}/src/core/layertree
${CMAKE_SOURCE_DIR}/src/core/layout
${CMAKE_SOURCE_DIR}/src/core/locator
@@ -104,6 +105,7 @@ IF(WITH_APIDOC)
${CMAKE_SOURCE_DIR}/src/gui/editorwidgets
${CMAKE_SOURCE_DIR}/src/gui/editorwidgets/core
${CMAKE_SOURCE_DIR}/src/gui/effects
${CMAKE_SOURCE_DIR}/src/gui/labeling
${CMAKE_SOURCE_DIR}/src/gui/layertree
${CMAKE_SOURCE_DIR}/src/gui/layout
${CMAKE_SOURCE_DIR}/src/gui/locator

0 comments on commit 9af0c22

Please sign in to comment.
You can’t perform that action at this time.