Skip to content

Commit

Permalink
Merge branch 'OSGeo:main' into parallel-clang-format
Browse files Browse the repository at this point in the history
  • Loading branch information
echoix authored Feb 28, 2024
2 parents 5b5d6d8 + 9aacb94 commit 59003cb
Show file tree
Hide file tree
Showing 454 changed files with 1,949,846 additions and 1,788,631 deletions.
1 change: 1 addition & 0 deletions .flake8
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ per-file-ignores =
gui/wxpython/core/giface.py: E501
gui/wxpython/core/gthread.py: F841
gui/wxpython/core/gconsole.py: E722, W605
gui/wxpython/core/globalvar.py: W605
gui/wxpython/core/toolboxes.py: E722, E501
gui/wxpython/core/utils.py: E722, F841, W605
gui/wxpython/core/workspace.py: E722, E501
Expand Down
166 changes: 166 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
---
libraries:
- changed-files:
- any-glob-to-any-file:
- lib/**
- include/grass/**
- python/**
module:
- changed-files:
- any-glob-to-any-file:
- db/**
- display/**
- general/**
- imagery/**
- misc/**
- ps/**
- raster/**
- raster3d/**
- scripts/**
- temporal/**
- vector/**

# Module categories
database:
- changed-files:
- any-glob-to-any-file:
- db/**
- lib/db/**
- scripts/db.*/**
- '**.sql'
display:
- changed-files:
- any-glob-to-any-file:
- display/**
- lib/display/**
- scripts/d.*/**
general:
- changed-files:
- any-glob-to-any-file:
- general/**
- scripts/g.*/**
GUI:
- changed-files:
- any-glob-to-any-file:
- gui/**
imagery:
- changed-files:
- any-glob-to-any-file:
- imagery/**
- lib/imagery/**
- scripts/i.*/**
misc:
- changed-files:
- any-glob-to-any-file:
- misc/**
- scripts/m.*/**
raster:
- changed-files:
- any-glob-to-any-file:
- raster/**
- lib/raster/**
- scripts/r.*/**
raster3d:
- changed-files:
- any-glob-to-any-file:
- raster3d/**
- lib/raster3d/**
- scripts/r3.*/**
temporal:
- changed-files:
- any-glob-to-any-file:
- temporal/**
- lib/temporal/**
- scripts/t.*/**
vector:
- changed-files:
- any-glob-to-any-file:
- vector/**
- lib/vector/**
- scripts/v.*/**

# Build, packaging, or OS related
CI:
- changed-files:
- any-glob-to-any-file:
- .github/**
- .travis/**
- binder/**
- .travis.yml
- renovate.json
- .pre-commit-config.yaml
Windows:
- changed-files:
- any-glob-to-any-file:
- mswindows/**
macOS:
- changed-files:
- any-glob-to-any-file:
- macosx/**
Linux:
- changed-files:
- any-glob-to-any-file:
- singularity/**
- rpm/**
docker:
- changed-files:
- any-glob-to-any-file:
- docker/**
- '**/*Dockerfile*'
- '**/*dockerfile*'
- .dockerignore

docs:
- all:
- changed-files:
- any-glob-to-any-file:
- doc/**
- man/**
- '**/*.md'
- '**/*.rst'
- '**/*.html'
- '**/*.dox'
- '**/*.png'
- '**.cff'
- CITING
- CHANGES
- AUTHORS
- NEWS
- TODO
- all-globs-to-all-files:
- '!doc/development/rfc/**'
RFC:
- changed-files:
- any-glob-to-any-file:
- doc/development/rfc/**
translation:
- changed-files:
- any-glob-to-any-file: locale/**

# based on file types
Python:
- changed-files:
- any-glob-to-any-file:
- '**/*.py'
- '**/pyproject.toml'
C:
- changed-files:
- any-glob-to-any-file: '**/*.c'
C++:
- changed-files:
- any-glob-to-any-file: '**/*.cpp'
CSS:
- changed-files:
- any-glob-to-any-file: '**/*.css'
HTML:
- changed-files:
- any-glob-to-any-file: '**/*.html'
JavaScript:
- changed-files:
- any-glob-to-any-file: '**/*.js'

# test suite
tests:
- changed-files:
- any-glob-to-any-file:
- '**/testsuite/**'
2 changes: 1 addition & 1 deletion .github/workflows/additional_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
exclude: mswindows .*\.bat .*/testsuite/data/.*

- name: Set up Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.10'

Expand Down
51 changes: 37 additions & 14 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,49 +16,72 @@ on:
# Check every Saturday at 18:36
- cron: 36 18 * * 6

permissions: {}

jobs:
analyze:
name: ${{ matrix.language }}
name: Analyze
runs-on: ubuntu-22.04
permissions:
security-events: write
actions: read
contents: read

strategy:
fail-fast: false
matrix:
# C is included in cpp, no separate C language available on CodeQL
language:
- cpp
- c-cpp
- python

concurrency:
group: ${{ github.workflow }}-${{
github.event_name == 'pull_request' &&
github.head_ref || github.sha }}-${{ matrix.language }}
cancel-in-progress: true

steps:
- name: Checkout repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
- name: Set up Python
uses: actions/setup-python@v5
with:
languages: ${{ matrix.language }}
config-file: ./.github/codeql/codeql-config.yml

- name: Get dependencies
python-version: '3.x'
- name: Install non-Python dependencies
if: ${{ matrix.language == 'c-cpp' }}
run: |
sudo apt-get update -y
sudo apt-get install -y wget git gawk findutils
xargs -a <(awk '! /^ *(#|$)/' ".github/workflows/apt.txt") -r -- \
sudo apt-get install -y --no-install-recommends --no-install-suggests
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
config-file: ./.github/codeql/codeql-config.yml
setup-python-dependencies: false

- name: Create installation directory
run: |
mkdir $HOME/install
mkdir "${HOME}/install"
- name: Set LD_LIBRARY_PATH for compilation
run: |
echo "LD_LIBRARY_PATH=$HOME/install/lib" >> $GITHUB_ENV
echo "LD_LIBRARY_PATH=${HOME}/install/lib" >> $GITHUB_ENV
- name: Set number of cores for compilation
run: |
echo "MAKEFLAGS=-j$(nproc)" >> $GITHUB_ENV
- name: Build
if: ${{ matrix.language == 'c-cpp' }}
env:
CFLAGS: -std=gnu11
CXXFLAGS: -std=c++11
run: .github/workflows/build_ubuntu-22.04.sh $HOME/install
run: .github/workflows/build_ubuntu-22.04.sh "${HOME}/install"

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
4 changes: 2 additions & 2 deletions .github/workflows/create_release_draft.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.10'

Expand Down Expand Up @@ -93,7 +93,7 @@ jobs:
asset_content_type: application/gzip

- name: Make the created files available
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: always()
with:
name: artifacts
Expand Down
25 changes: 25 additions & 0 deletions .github/workflows/label.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
name: Pull Request Labeler

# This workflow will triage pull requests and apply a label based on the
# paths that are modified in the pull request.
#
# To use this workflow, you will need to set up a .github/labeler.yml
# file with configuration. For more information, see:
# https://github.com/actions/labeler/blob/master/README.md

on:
- pull_request_target

permissions: {}

jobs:
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5
with:
sync-labels: true
54 changes: 24 additions & 30 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,40 +20,34 @@ concurrency:
jobs:
macos_build:
name: macOS build
runs-on: macos-latest
runs-on: macos-14
steps:
- name: Info
run: |
echo "macOS version $(sw_vers -productVersion)"
echo "architecture $(uname -a)"
- name: Disabling Spotlight
run: sudo mdutil -a -i off
- name: Uninstalling Homebrew
run: |
echo "Moving directories..."
sudo mkdir /opt/off
/usr/bin/sudo /usr/bin/find /usr/local /opt/homebrew -mindepth 1 -maxdepth 1 \
-type d -print -exec /bin/mv {} /opt/off/ \;
echo "Removing files..."
/usr/bin/sudo /usr/bin/find /usr/local /opt/homebrew -mindepth 1 -maxdepth 1 \
-type f -print -delete
hash -r
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Setup Mambaforge
uses: conda-incubator/setup-miniconda@v3
with:
channels: conda-forge
miniforge-variant: Mambaforge
miniforge-version: latest
activate-environment: grass-env
use-mamba: true
- name: Get cache date
id: get-date
run: echo "today=$(/bin/date -u '+%Y%m%d')" >> $GITHUB_OUTPUT
shell: bash
- name: Cache conda environment
uses: actions/cache@v3
- name: Setup Mamba
uses: mamba-org/setup-micromamba@v1
with:
path: ~/miniconda3/envs/grass-env
key: conda-macos-x86_64-${{
steps.get-date.outputs.today }}-${{
hashFiles('.github/workflows/macos_dependencies.txt') }}-${{
env.CACHE_NUMBER }}
id: cache
- name: Update environment
run: mamba env update -n grass-env -f .github/workflows/macos_dependencies.txt
if: steps.cache.outputs.cache-hit != 'true'
- name: Conda info
init-shell: bash
environment-file: .github/workflows/macos_dependencies.txt
environment-name: grass-env
- name: Environment info
shell: bash -el {0}
run: |
conda info
conda list
conda config --show-sources
conda config --show
printenv | sort
$CC --version
- name: Create installation directory
Expand All @@ -80,7 +74,7 @@ jobs:
nc_spm_full_v2alpha2.tar.gz"
- name: Make HTML test report available
if: ${{ always() }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: testreport-macOS
path: testreport
Expand Down
Loading

0 comments on commit 59003cb

Please sign in to comment.