Update LVGL to v9.1.0

This commit is contained in:
jacqueline
2024-06-12 17:54:40 +10:00
parent 611176ed66
commit 64bd9053a2
2244 changed files with 278442 additions and 118864 deletions
+1 -1
View File
@@ -9,7 +9,7 @@ jobs:
if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: arduino/arduino-lint-action@v1
with:
library-manager: update
+21 -11
View File
@@ -8,7 +8,7 @@ jobs:
build:
if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }}
name: Build ${{ matrix.port }} port
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
continue-on-error: true
strategy:
matrix:
@@ -19,17 +19,16 @@ jobs:
run: |
sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu `lsb_release -sc` main universe restricted multiverse"
sudo apt-get update -y -qq
sudo apt-get install libsdl2-dev parallel libfreetype-dev librlottie-dev
sudo apt-get install libsdl2-dev parallel libfreetype-dev librlottie-dev libavformat-dev libavcodec-dev libswscale-dev libavutil-dev
- name: Clone lv_micropython
run: |
git clone https://github.com/lvgl/lv_micropython.git .
git checkout release/v8
git checkout master
- name: Initialize lv_bindings submodule
run: git submodule update --init --recursive lib/lv_bindings
- name: Update ${{ matrix.port }} port submodules
if: matrix.port != 'esp32'
# VARIANT needed for unix
run: make -C ports/${{ matrix.port }} VARIANT=dev DEBUG=1 USER_C_MODULES=../../lib/lv_bindings/bindings.cmake submodules
if: matrix.port != 'esp32' && matrix.port != 'rp2'
run: make -C ports/${{ matrix.port }} DEBUG=1 USER_C_MODULES=../../lib/lv_bindings/bindings.cmake submodules
- name: Checkout LVGL submodule
working-directory: ./lib/lv_bindings/lvgl
run: |
@@ -53,7 +52,7 @@ jobs:
# STM32 & RPi Pico port
- name: arm-none-eabi-gcc
if: matrix.port == 'stm32' || matrix.port == 'rp2'
uses: carlosperate/arm-none-eabi-gcc-action@v1.3.0
uses: carlosperate/arm-none-eabi-gcc-action@v1.8.1
with:
release: '9-2019-q4' # The arm-none-eabi-gcc release to use.
- name: Build STM32 port
@@ -61,14 +60,25 @@ jobs:
run: make -j $(nproc) -C ports/stm32 BOARD=STM32F7DISC
- name: Build Raspberry Pi PICO port
if: matrix.port == 'rp2'
run: make -j $(nproc) -C ports/rp2 BOARD=PICO USER_C_MODULES=../../lib/lv_bindings/bindings.cmake
run: |
make -C ports/rp2 BOARD=PICO submodules
make -j $(nproc) -C ports/rp2 BOARD=PICO USER_C_MODULES=../../lib/lv_bindings/bindings.cmake
# Unix port
- name: Build Unix port
if: matrix.port == 'unix'
run: make -j $(nproc) -C ports/unix VARIANT=dev DEBUG=1
run: make -j $(nproc) -C ports/unix DEBUG=1 LV_CFLAGS="-DMICROPY_LV_USE_LOG=0"
- name: Install requirements for the test
run: |
python3 -m pip install pillow
mkdir lib/lv_bindings/lvgl/tests/micropy_test/artifacts
- name: Run tests
if: success() && matrix.port == 'unix'
run: |
export XDG_RUNTIME_DIR=/tmp
lib/lv_bindings/tests/run.sh
python3 lib/lv_bindings/lvgl/tests/micropy_test/__init__.py --artifact-path=lib/lv_bindings/lvgl/tests/micropy_test/artifacts --mpy-path=ports/unix/build-standard/micropython
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: test-artifacts
path: lib/lv_bindings/lvgl/tests/micropy_test/artifacts
+61 -22
View File
@@ -14,14 +14,13 @@ jobs:
matrix:
# A valid option parameter to the cmake file.
# See BUILD_OPTIONS in tests/CMakeLists.txt.
build_option: ['OPTIONS_MINIMAL_MONOCHROME',
'OPTIONS_NORMAL_8BIT',
'OPTIONS_16BIT',
'OPTIONS_16BIT_SWAP',
'OPTIONS_FULL_32BIT']
build_option: ['OPTIONS_16BIT',
'OPTIONS_24BIT',
'OPTIONS_FULL_32BIT',
"OPTIONS_VG_LITE"]
name: Build ${{ matrix.build_option }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: ammaraskar/gcc-problem-matcher@master
- name: Install prerequisites
run: scripts/install-prerequisites.sh
@@ -32,18 +31,31 @@ jobs:
runs-on: ubuntu-latest
name: amd64 Executable Tests
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: ammaraskar/gcc-problem-matcher@master
- name: Install prerequisites
run: scripts/install-prerequisites.sh
- name: Fix kernel mmap rnd bits
# Asan in llvm 14 provided in ubuntu 22.04 is incompatible with
# high-entropy ASLR in much newer kernels that GitHub runners are
# using leading to random crashes: https://reviews.llvm.org/D148280
run: sudo sysctl vm.mmap_rnd_bits=28
- name: Run tests
run: python tests/main.py --report test
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2
if: github.event_name == 'push'
run: python tests/main.py --report --update-image test
- name: Archive screenshot errors
if: failure()
uses: actions/upload-artifact@v4
with:
fail_ci_if_error: true
verbose: true
name: screenshot-errors-amd64
path: |
tests/ref_imgs/**/*_err.png
test_screenshot_error.h
# - name: Upload coverage to Codecov
# uses: codecov/codecov-action@v4
# if: github.event_name == 'push' && github.repository == 'lvgl/lvgl'
# with:
# fail_ci_if_error: true
# verbose: true
test-cross:
# The host should always be linux
runs-on: ubuntu-latest
@@ -52,32 +64,37 @@ jobs:
# Run steps on a matrix of 3 arch/distro combinations
strategy:
matrix:
arch: [ 'aarch64', 'armv6', 'armv7' ]
include:
- arch: aarch64
distro: ubuntu22.04
- arch: armv6
distro: bullseye
- arch: armv7
distro: bullseye
steps:
- uses: actions/checkout@v2.1.0
- uses: actions/checkout@v4
- uses: ammaraskar/gcc-problem-matcher@master
- name: Setup cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: |
~/.ccache
key: lvgl_ci_cross_test_ccache_${{ matrix.arch }}_${{ github.sha }}
restore-keys: |
lvgl_ci_cross_test_ccache_${{ matrix.arch }}
- uses: uraimo/run-on-arch-action@v2.1.1
- uses: uraimo/run-on-arch-action@v2.7.1
name: Run tests
id: build
with:
arch: ${{ matrix.arch }}
distro: bullseye
distro: ${{ matrix.distro }}
# Not required, but speeds up builds
githubToken: ${{ github.token }}
# The shell to run commands with in the container
shell: /bin/bash
# Create cached/volume directories on host
setup: |
mkdir -p ~/.ccache
@@ -88,9 +105,31 @@ jobs:
install: |
apt-get update -y
apt-get install build-essential ccache python3 libpng-dev ruby-full gcovr cmake -q -y
if [[ "${{ matrix.distro }}" == "ubuntu22.04" ]]; then
apt-get install libjpeg-turbo8-dev -q -y
else
apt-get install libjpeg62-turbo-dev -q -y
fi
apt-get install build-essential ccache libgcc-10-dev python3 libpng-dev ruby-full gcovr cmake libfreetype6-dev libasan6 pngquant python3-pip libinput-dev libxkbcommon-dev libdrm-dev pkg-config ninja-build -q -y
pip install pypng lz4
/usr/sbin/update-ccache-symlinks
echo 'export PATH="/usr/lib/ccache:$PATH"' | tee -a ~/.bashrc
run: |
env PATH="/usr/lib/ccache:$PATH" ASAN_OPTIONS=detect_leaks=0 python3 tests/main.py test
if [[ "${{ matrix.distro }}" == "ubuntu22.04" ]]; then
# ASan in llvm 14 provided in ubuntu-22.04 is incompatible with
# high-entropy ASLR configured in much newer kernels that GitHub
# runners are using leading to random crashes:
# https://github.com/actions/runner-images/issues/9491
# can remove this once the issue is fixed.
sysctl -w vm.mmap_rnd_bits=28
fi
env PATH="/usr/lib/ccache:$PATH" NON_AMD64_BUILD=1 ASAN_OPTIONS=detect_leaks=0 python3 tests/main.py test
- name: Archive screenshot errors
if: failure()
uses: actions/upload-artifact@v4
with:
name: screenshot-errors-${{ matrix.arch }}
path: |
tests/ref_imgs/**/*_err.png
test_screenshot_error.h
+2 -2
View File
@@ -9,12 +9,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
persist-credentials: false
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: 3.7
- name: Generate lv_conf_internal.h
+11 -4
View File
@@ -9,15 +9,22 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
persist-credentials: false
fetch-depth: 0
- name: Checkout astyle
uses: actions/checkout@v4
with:
repository: szepeviktor/astyle
path: astyle
ref: v3.4.12
- name: Install astyle
run: |
sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu `lsb_release -sc` main universe restricted multiverse"
sudo apt-get update -y -qq
sudo apt-get install astyle
cd astyle/build/gcc/
make
sudo make install
astyle --version
- name: Format code
run: python code-format.py
working-directory: scripts
+10 -5
View File
@@ -9,15 +9,20 @@ jobs:
if: github.repository == 'lvgl/lvgl'
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v5
- uses: actions/stale@v9
with:
repo-token: ${{ secrets.LVGL_BOT_TOKEN }}
stale-issue-message: 'This issue is stale because it has been open 14 days with no activity. Remove stale label or comment or this will be closed in 7 days.'
stale-pr-message: |
stale-issue-message: |
We need some feedback on this issue.
Now we mark this as "stale" because there was no activity here for 14 days.
Remove the "stale" label or comment else this will be closed in 7 days.
stale-pr-message: |
We need some feedback on this pull request.
Now we mark this as "stale" because there was no activity here for 14 days.
Remove the "stale" label or comment else this will be closed in 7 days.
close-issue-message: |
As there was no activity here for a while we close this issue. But don't worry, the conversation is still here and you can get back to it at any time.
@@ -25,5 +30,5 @@ jobs:
So feel free to comment if you have remarks or ideas on this topic.
days-before-stale: 14
days-before-close: 7
exempt-issue-labels: 'pinned'
exempt-pr-labels: 'pinned'
exempt-issue-labels: 'pinned, next major, next minor'
exempt-pr-labels: 'pinned, next major, next minor'
+25 -29
View File
@@ -14,16 +14,16 @@ jobs:
concurrency: docs-build-and-deploy
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
persist-credentials: false
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: 3.7
python-version: '3.10'
- name: Cache Python packages
uses: actions/cache@v2
uses: actions/cache@v4
with:
# Cache the Python package environment, excluding pip and setuptools installed by setup-python
path: |
@@ -44,11 +44,11 @@ jobs:
pip install -r docs/requirements.txt
- name: Setup Emscripten cache
id: cache-system-libraries
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ${{env.EM_CACHE_FOLDER}}
key: ${{env.EM_VERSION}}-${{ runner.os }}
- uses: mymindstorm/setup-emsdk@v9
- uses: mymindstorm/setup-emsdk@v14
with:
version: ${{env.EM_VERSION}}
actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
@@ -57,7 +57,7 @@ jobs:
- name: Build examples (with cache)
run: scripts/build_html_examples.sh
- name: Build docs
run: docs/build.py
run: docs/build.py skip_latex
- name: Remove .doctrees
run: rm -rf out_html/.doctrees
- name: Retrieve version
@@ -65,29 +65,25 @@ jobs:
echo "::set-output name=VERSION_NAME::$(scripts/find_version.sh)"
id: version
- name: Deploy to subfolder
uses: JamesIves/github-pages-deploy-action@3.7.1
uses: JamesIves/github-pages-deploy-action@v4.5.0
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ACCESS_TOKEN: ${{ secrets.LVGL_BOT_TOKEN }}
REPOSITORY_NAME: lvgl/docs
BRANCH: gh-pages # The branch the action should deploy to.
FOLDER: out_html # The folder the action should deploy.
TARGET_FOLDER: ${{ steps.version.outputs.VERSION_NAME }}
GIT_CONFIG_NAME: lvgl-bot
GIT_CONFIG_EMAIL: lvgl-bot@users.noreply.github.com
PRESERVE: true
SINGLE_COMMIT: true
token: ${{ secrets.LVGL_BOT_TOKEN }}
repository-name: lvgl/docs
branch: gh-pages # The branch the action should deploy to.
folder: out_html # The folder the action should deploy.
target-folder: ${{ steps.version.outputs.VERSION_NAME }}
git-config-name: lvgl-bot
git-config-email: lvgl-bot@users.noreply.github.com
single-commit: true
- name: Deploy to master
if: github.ref == 'refs/heads/master'
uses: JamesIves/github-pages-deploy-action@3.7.1
uses: JamesIves/github-pages-deploy-action@v4.5.0
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ACCESS_TOKEN: ${{ secrets.LVGL_BOT_TOKEN }}
REPOSITORY_NAME: lvgl/docs
BRANCH: gh-pages # The branch the action should deploy to.
FOLDER: out_html # The folder the action should deploy.
TARGET_FOLDER: master
GIT_CONFIG_NAME: lvgl-bot
GIT_CONFIG_EMAIL: lvgl-bot@users.noreply.github.com
PRESERVE: true
SINGLE_COMMIT: true
token: ${{ secrets.LVGL_BOT_TOKEN }}
repository-name: lvgl/docs
branch: gh-pages # The branch the action should deploy to.
folder: out_html # The folder the action should deploy.
target-folder: master
git-config-name: lvgl-bot
git-config-email: lvgl-bot@users.noreply.github.com
commit: true
+5 -5
View File
@@ -3,21 +3,21 @@ name: Push LVGL release to Espressif Component Service
# If the commit is tagged, it will be uploaded. Other scenario silently fail.
on:
push:
branches:
- master
tags:
- v*
jobs:
upload_components:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Upload component to component registry
uses: espressif/github-actions/upload_components@master
uses: espressif/upload-components-ci-action@v1
with:
name: "lvgl"
version: "git"
version: ${{ github.ref_name }}
namespace: "lvgl"
api_token: ${{ secrets.ESP_IDF_COMPONENT_API_TOKEN }}
+1 -1
View File
@@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
uses: actions/checkout@v4
- name: Automatically close issues that don't follow the issue template
uses: lucasbento/auto-close-issues@v1.0.2
with:
+1 -1
View File
@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
name: Build using Makefile
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: ammaraskar/gcc-problem-matcher@master
- name: Install prerequisites
run: scripts/install-prerequisites.sh
+22
View File
@@ -0,0 +1,22 @@
on:
push:
tags:
- "v[0-9]+.[0-9]+.[0-9]+" # Push events to matching v*, i.e. v1.0, v20.15.10
name: PlatformIO Publish
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install PlatformIO Core
run: pip install --upgrade platformio
- name: Switch to the development version
run: pio upgrade --dev
- name: Publish
run: pio pkg publish --owner lvgl .
+2 -2
View File
@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Create Release
id: create_release
uses: actions/create-release@v1
@@ -22,6 +22,6 @@ jobs:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: |
See the [CHANGELOG](https://github.com/lvgl/lvgl/blob/master/docs/CHANGELOG.md)
See the [CHANGELOG](https://github.com/lvgl/lvgl/blob/master/docs/CHANGELOG.rst)
draft: false
prerelease: false