Repository navigation
feat(text): Directly use the Darwin UI framework instead of relying o… #722
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI Test | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| paths: | |
| - '.github/workflows/ci.yml' | |
| - 'include/**' | |
| - 'src/**' | |
| - 'module/**' | |
| - 'test/**' | |
| - 'cmake/**' | |
| - 'patches/**' | |
| - 'CMakeLists.txt' | |
| - 'platform/**' | |
| push: | |
| branches: | |
| - main | |
| paths: | |
| - '.github/workflows/ci.yml' | |
| - 'include/**' | |
| - 'src/**' | |
| - 'module/**' | |
| - 'test/**' | |
| - 'cmake/**' | |
| - 'patches/**' | |
| - 'CMakeLists.txt' | |
| - 'platform/**' | |
| jobs: | |
| unittest_test: | |
| runs-on: lynx-ubuntu-22.04-medium | |
| timeout-minutes: 30 | |
| permissions: | |
| issues: write | |
| steps: | |
| - name: Python Setup | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.13' | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Sync Dependencies | |
| uses: ./.github/actions/sync-deps | |
| - name: Compile Code | |
| run: | | |
| export PATH=$PWD/buildtools/llvm/bin:$PATH | |
| cmake -B out/cmake_host_build -DSKITY_TEST=ON -DSKITY_TEST_COVERAGE=OFF -DSKITY_CODEC_MODULE=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_FLAGS="-fPIC" | |
| cmake --build out/cmake_host_build --target skity_unit_test | |
| - name: Unit Test | |
| run: | | |
| cd out/cmake_host_build/test/ut/ | |
| ctest --output-junit test.xml --rerun-failed --output-on-failure | |
| unittest_coverage: | |
| runs-on: ubuntu-22.04 | |
| timeout-minutes: 30 | |
| permissions: | |
| issues: write | |
| steps: | |
| - name: Install dependencies | |
| run: | | |
| sudo apt update | |
| sudo apt install -y lcov | |
| - name: Python Setup | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.13' | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Sync Dependencies | |
| uses: ./.github/actions/sync-deps | |
| - name: Compile Code | |
| run: | | |
| export PATH=$PWD/buildtools/llvm/bin:$PATH | |
| cmake -B out/cmake_host_build -DSKITY_TEST=ON -DSKITY_TEST_COVERAGE=ON -DSKITY_CODEC_MODULE=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_FLAGS="-fPIC" | |
| cmake --build out/cmake_host_build --target skity_unit_test | |
| - name: Test and Generate Coverage Report | |
| run: | | |
| cd out/cmake_host_build/test/ut/ | |
| ctest --output-junit test.xml --rerun-failed --output-on-failure | |
| cd ../../ | |
| lcov --capture --directory . --output-file coverage.info | |
| lcov --remove coverage.info '/usr/**/*' 'test/ut/**/*' 'third_party/**/*' 'Library/*' '**/clipper2/*' --output-file coverage.filtered.info | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v5 | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| disable_search: true | |
| files: out/cmake_host_build/coverage.filtered.info | |
| - name: Upload test results to Codecov | |
| uses: codecov/test-results-action@v1 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| directory: "out/cmake_host_build/test/ut" | |
| files: out/cmake_host_build/test/ut/test.xml | |
| android_build_check: | |
| runs-on: lynx-ubuntu-22.04-medium | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Python Setup | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.13' | |
| - uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'jetbrains' | |
| java-version: '21' | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Sync Dependencies | |
| run: | | |
| ./tools/hab sync -f --target module,ci | |
| - name: Android Build Check | |
| uses: ./.github/actions/pack-android-aar | |
| ios_build_check: | |
| runs-on: lynx-darwin-14-medium | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Install Common Dependencies | |
| uses: ./.github/actions/sync-deps | |
| with: | |
| cache-backend: 'lynx-infra' | |
| - name: Run iOS build | |
| run: | | |
| export PATH=$PATH:$PWD/buildtools/cmake/CMake.app/Contents/bin | |
| echo "PATH=$PATH" >> "$GITHUB_ENV" | |
| cmake -B out/cmake_ios_release -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=arm64 -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 -DCMAKE_SYSTEM_NAME=iOS -DSKITY_MTL_BACKEND=ON -DSKITY_CT_FONT=ON -DSKITY_CODEC_MODULE=OFF | |
| cmake --build out/cmake_ios_release | |
| - name: check build xcframework | |
| uses: ./.github/actions/gen-xcframework | |
| with: | |
| version_suffix: '-test' | |
| wasm_build_check: | |
| runs-on: lynx-ubuntu-22.04-medium | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Sync Dependencies | |
| run: | | |
| ./tools/hab sync -f | |
| - name: Install emscripten | |
| uses: ./.github/actions/install-emsdk | |
| with: | |
| emsdk-version-file: './.github/actions/install-emsdk/emsdk-version.txt' | |
| - name: Run Build | |
| run: | | |
| emcmake cmake -B out/cmake_wasm -DSKITY_EXAMPLE=OFF -DSKITY_TEST=OFF -DSKITY_CODEC_MODULE=OFF -DSKITY_LOG=ON | |
| cd out/cmake_wasm | |
| emmake make skity | |
| windows_build_check: | |
| runs-on: lynx-windows-2022-large-verify | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Sync Dependencies | |
| run: | | |
| powershell -File "./tools/hab.ps1" sync -f --target dev,module,ci | |
| - name: Run Build | |
| run: | | |
| ./buildtools/cmake/bin/cmake -B out/cmake_host_build -DSKITY_EXAMPLE=ON -DCMAKE_BUILD_TYPE=Debug -DSKITY_CODEC_MODULE=ON -DSKITY_TEST=ON -DCMAKE_POLICY_VERSION_MINIMUM='3.5' | |
| ./buildtools/cmake/bin/cmake --build out/cmake_host_build --target skity_unit_test | |
| cd out/cmake_host_build/Debug | |
| ./skity_unit_test | |
| osx_metal_golden_test: | |
| runs-on: lynx-darwin-14-medium | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Install Common Dependencies | |
| uses: ./.github/actions/sync-deps | |
| with: | |
| cache-backend: 'lynx-infra' | |
| - name: Build And Test | |
| run: | | |
| export PATH=$PATH:$PWD/buildtools/cmake/CMake.app/Contents/bin | |
| cmake -B out/cmake_golden_test -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DSKITY_MTL_BACKEND=ON -DSKITY_TEST=ON -DSKITY_GOLDEN_GUI=OFF | |
| cmake --build out/cmake_golden_test --target skity_golden_test_shape skity_golden_test_text | |
| export MTL_DEBUG_LAYER=1 | |
| export METAL_DEBUG_ERROR_MODE=1 | |
| ./out/cmake_golden_test/test/golden/skity_golden_test_shape | |
| ./out/cmake_golden_test/test/golden/skity_golden_test_text | |
| osx_metal_golden_test_ct: | |
| runs-on: lynx-darwin-14-medium | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Download Source | |
| uses: actions/checkout@v4.2.2 | |
| - name: Install Common Dependencies | |
| uses: ./.github/actions/sync-deps | |
| with: | |
| cache-backend: 'lynx-infra' | |
| - name: Build And Test | |
| run: | | |
| export PATH=$PATH:$PWD/buildtools/cmake/CMake.app/Contents/bin | |
| cmake -B out/cmake_golden_test -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DSKITY_MTL_BACKEND=ON -DSKITY_TEST=ON -DSKITY_GOLDEN_GUI=OFF -DSKITY_CT_FONT=ON | |
| cmake --build out/cmake_golden_test --target skity_golden_test_text | |
| export MTL_DEBUG_LAYER=1 | |
| export METAL_DEBUG_ERROR_MODE=1 | |
| ./out/cmake_golden_test/test/golden/skity_golden_test_text |