Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .bazelignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,9 @@ bazel-testlogs
.cxx
build-*
build

# Ignore vendored Bazel workspaces that conflict with this repo
vendor/benchmark
vendor/googletest
vendor/maplibre-native-base/extras/rapidjson/thirdparty
vendor/eternal/vendor
4 changes: 2 additions & 2 deletions .github/actionlint.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
self-hosted-runner:
# Labels of self-hosted runner in array of strings.
labels:
- macos-14 # can be removed once actionlint is updated
- ubuntu-24.04 # can be removed once actionlint is updated
- windows-11-arm # can be removed once actionlint is updated
- macos-15-intel # can be removed once actionlint is updated
- MapLibre_Native_Ubuntu_22_04_ARM_8_core
- MapLibre_Native_Ubuntu_24_04_x84_16_core
# Configuration variables in array of strings defined in your repository or
Expand Down
13 changes: 13 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,12 @@ updates:
github-actions:
patterns:
- '*'
cooldown:
default-days: 3
# no semver support for github-actions
# => no specific configuration for this
include:
- "*"
- package-ecosystem: 'gradle'
open-pull-requests-limit: 1
directories:
Expand All @@ -29,3 +35,10 @@ updates:
gradle-deps:
patterns:
- '*'
cooldown:
default-days: 5
semver-major-days: 5
semver-minor-days: 3
semver-patch-days: 3
include:
- "*"
66 changes: 66 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
android:
- changed-files:
- any-glob-to-any-file: 'platform/android/**/*'
iOS:
- changed-files:
- any-glob-to-any-file:
- 'platform/ios/**/*'
- 'platform/darwin/**/*'
cpp-core:
- changed-files:
- any-glob-to-any-file:
- 'src/**/*'
- 'include/**/*'
documentation:
- changed-files:
- any-glob-to-any-file:
- 'docs/**/*'
- 'platform/ios/ios/MapLibre.docc/**/*'
- 'platform/android/docs/**/*'
node:
- changed-files:
- any-glob-to-any-file:
- 'platform/node/**/*'
Qt:
- changed-files:
- any-glob-to-any-file:
- 'platform/qt/**/*'
windows:
- changed-files:
- any-glob-to-any-file:
- 'platform/windows/**/*'
github_actions:
- changed-files:
- any-glob-to-any-file:
- '.github/**/*'
build:
- changed-files:
- any-glob-to-any-file:
- '**/CMakeLists.txt'
- '**/*.cmake'
- '**/BUILD.bazel'
- '**/*.bzl'
- CMakePresets.json
OpenGL:
- changed-files:
- any-glob-to-any-file:
- '**/*opengl*'
- '**/*opengl*/**'
- '**/gl/**'
Vulkan:
- changed-files:
- any-glob-to-any-file:
- '**/*vulkan*'
- '**/*vulkan*/**'
metal:
- changed-files:
- any-glob-to-any-file:
- '**/*metal*'
- '**/*metal*/**'
WebGPU:
- changed-files:
- any-glob-to-any-file:
- '**/*webgpu*'
- '**/*webgpu*/**'
- '**/*wgpu*'
- '**/*dawn*'
3 changes: 2 additions & 1 deletion .github/renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@
],
"ignoreDeps": ["cxx.rs"],
"schedule": "* * 1,15 * *",
"dependencyDashboard": true
"dependencyDashboard": true,
"minimumReleaseAge": "3 days"
}
2 changes: 2 additions & 0 deletions .github/scripts/ensure-tag.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#!/bin/bash

set -e

if [ $# -lt 1 ] || [ $# -gt 2 ]; then
echo "Usage: $0 <tag> [<commit-sha>]"
echo " <tag> Git tag name to create or verify"
Expand Down
6 changes: 5 additions & 1 deletion .github/scripts/install-linux-deps
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,8 @@ DEBIAN_FRONTEND=noninteractive sudo apt-get install -y \
mesa-vulkan-drivers \
llvm \
glslang-dev \
libbz2-dev
libbz2-dev \
libxinerama-dev \
libxcursor-dev \
libxi-dev \
libx11-xcb-dev
33 changes: 27 additions & 6 deletions .github/workflows/android-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,12 @@ jobs:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v4
with:
submodules: recursive
persist-credentials: false

- name: Get all Android files that have changed
if: github.event_name != 'workflow_dispatch'
id: changed-files
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
with:
files_yaml_from_source_file: .github/changed-files.yml

Expand All @@ -53,11 +54,13 @@ jobs:
BUILDTYPE: Debug
IS_LOCAL_DEVELOPMENT: false
MLN_ANDROID_STL: c++_static
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ANDROID }}
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: false

- uses: ./.github/actions/setup-android-ci

Expand Down Expand Up @@ -93,6 +96,11 @@ jobs:
rm -rf venv
shell: bash

- if: env.SENTRY_DSN != ''
run: |
echo "SENTRY_ORG=maplibre" >> "$GITHUB_ENV"
echo "SENTRY_PROJECT=maplibre-android" >> "$GITHUB_ENV"

- uses: infotroph/tree-is-clean@69d598a958e8cb8f3d0e3d52b5ebcd8684f2adc2 # v1.0.6
with:
check_untracked: true
Expand Down Expand Up @@ -183,6 +191,14 @@ jobs:
cp MapLibreAndroidTestApp/build/outputs/apk/${{ matrix.renderer }}/debug/MapLibreAndroidTestApp-${{ matrix.renderer }}-debug.apk InstrumentationTestApp${{ env.renderer }}.apk
cp MapLibreAndroidTestApp/build/outputs/apk/androidTest/${{ matrix.renderer }}/debug/MapLibreAndroidTestApp-${{ matrix.renderer }}-debug-androidTest.apk InstrumentationTests${{ env.renderer }}.apk

- name: Install sentry-cli
if: env.SENTRY_DSN != ''
run: curl -sL https://sentry.io/get-cli/ | sh

- name: Upload debug symbols to sentry
if: env.SENTRY_DSN != ''
run: sentry-cli debug-files upload MapLibreAndroidTestApp

- name: Upload android-ui-test-${{ matrix.renderer }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
Expand Down Expand Up @@ -210,7 +226,7 @@ jobs:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: false

- uses: ./.github/actions/setup-android-ci

Expand Down Expand Up @@ -268,7 +284,7 @@ jobs:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: false

- uses: ./.github/actions/setup-android-ci

Expand Down Expand Up @@ -297,6 +313,9 @@ jobs:

android-ci-result:
runs-on: ubuntu-latest
permissions:
actions: write
contents: write
if: needs.pre_job.outputs.should_skip != 'true' && always()
needs:
- pre_job
Expand All @@ -320,7 +339,7 @@ jobs:
- name: VERSION file changed
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
id: version-file-android-changed
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
with:
files: platform/android/VERSION

Expand All @@ -336,9 +355,11 @@ jobs:
- name: Create tag if it does not exist
if: env.make_release == 'true'
run: .github/scripts/ensure-tag.sh android-v${{ env.version }} ${{ github.sha }}
env:
GITHUB_TOKEN: ${{ github.token }}

- name: Trigger release
if: env.make_release == 'true'
run: gh workflow run android-release.yml --ref android-v${{ env.version }}
env:
GH_TOKEN: ${{ github.token }}
GH_TOKEN: ${{ github.token }}
6 changes: 4 additions & 2 deletions .github/workflows/android-device-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@ jobs:
if: github.repository_owner == 'maplibre' && github.event.workflow_run.conclusion == 'success'
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v4
with:
persist-credentials: false

- uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v4
with:
Expand All @@ -100,7 +102,7 @@ jobs:
id: get-pr-number

- name: Generate token
uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1
uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4
id: generate_token
with:
skip-token-revoke: true # revoking will fail for long running workflows, because the token will already have expired
Expand Down Expand Up @@ -203,7 +205,7 @@ jobs:

- name: Generate another token (previous one could have expired)
if: always()
uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1
uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4
id: generate_token_2
with:
app-id: ${{ secrets.MAPLIBRE_NATIVE_BOT_APP_ID }}
Expand Down
Loading
Loading