Skip to content

Fix issue where Core Animation rendering engine couldn't display last frame of animation when paused #1319

Fix issue where Core Animation rendering engine couldn't display last frame of animation when paused

Fix issue where Core Animation rendering engine couldn't display last frame of animation when paused #1319

Workflow file for this run

name: CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build-package-macos-12:
name: "Build Package"
runs-on: macos-12
strategy:
fail-fast: false
matrix:
xcode:
- '13.4.1' # Swift 5.6
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build Package
run: SKIP_VISION_OS=true bundle exec rake build:package:all
build-package-macos-13:
name: "Build Package"
runs-on: macos-13
strategy:
fail-fast: false
matrix:
xcode:
- '14.2' # Swift 5.7
- '14.3' # Swift 5.8
- '15.0' # Swift 5.9
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build Package
# Once there is a production Xcode version with the visionOS SDK,
# we will want to use that version without `SKIP_VISION_OS=true`
run: SKIP_VISION_OS=true bundle exec rake build:package:all
build-example:
name: "Build Example App"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: '15.0' # Swift 5.9
- name: Build Example
# Once there is a production Xcode version with the visionOS SDK,
# we will want to remove `SKIP_VISION_OS=true`
run: SKIP_VISION_OS=true bundle exec rake build:example:all
test-package:
name: "Test Package"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: '14.3' # Swift 5.8
- name: Test Package
run: bundle exec rake test:package
- name: Process test artifacts
if: always()
run: bundle exec rake test:process
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@v2
with:
name: TestArtifacts
path: Tests/Artifacts
emerge-upload:
name: "Emerge Upload"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
- name: Build Package
run: bundle exec rake emerge:upload
env:
EMERGE_API_TOKEN: ${{ secrets.EMERGE_API_TOKEN }}
PR_NUMBER: ${{ github.event.number }}
build-xcframework-macos-12:
name: "Build XCFramework"
runs-on: macos-12
strategy:
matrix:
xcode:
# XCFrameworks are forwards-compatible but not backwards-compatible.
# The Xcode version we use for this job is that oldest Xcode version that
# will be able to use these XCFrameworks and the lottie-spm package.
- '13.4.1' # Swift 5.6.1
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build XCFramework
# Once there is a production Xcode version with the visionOS SDK, we will
# need to also build an XCFramework using that version but without `SKIP_VISION_OS=true`
run: SKIP_VISION_OS=true bundle exec rake build:xcframework[Lottie-Xcode-${{ matrix.xcode }}]
- name: Upload XCFramework
uses: actions/upload-artifact@v2
with:
name: BuildProducts
# The xcframework is at the path `.build/archives/Lottie.xcframework.zip`.
# GitHub always zips the artifacts before uploading, so if we uploaded the .xframework.zip
# directly then it would actually upload a double-zip (a .zip containing our `Lottie.xcframework.zip`).
# This is confusing especially since macOS Archive Utility automatially unzips both layers at once.
# Instead, we upload the entire archives folder, resulting in an `XCFramework.zip` that unzips
# to an `archives` directory containing our `Lottie.xcframework.zip`.
path: .build/archives
cocoapod:
name: "Lint CocoaPods podspec"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: false
- name: Lint CocoaPod Podspec
run: bundle exec rake lint:podspec
spm-xcode-15:
name: "Test Swift Package Manager"
runs-on: macos-13
strategy:
matrix:
xcode:
- '15.0' # Swift 5.9
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: true
xcode: ${{ matrix.xcode }}
- name: Test Swift Package Manager support
run: bundle exec rake test:spm
spm-xcode-14:
name: "Test Swift Package Manager"
runs-on: macos-13
strategy:
matrix:
xcode:
- '14.3' # Swift 5.8
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: true
xcode: ${{ matrix.xcode }}
- name: Test Swift Package Manager support
run: SKIP_VISION_OS=true bundle exec rake test:spm
spm-xcode-13:
name: "Test Swift Package Manager"
runs-on: macos-12
strategy:
matrix:
xcode:
- '13.4.1' # Swift 5.6
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: true
xcode: ${{ matrix.xcode }}
- name: Test Swift Package Manager support
run: SKIP_VISION_OS=true bundle exec rake test:spm
carthage:
name: "Test Carthage support"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: true
install-carthage: true
xcode: '14.3' # Swift 5.8
- name: Test Carthage support
run: bundle exec rake test:carthage
swiftlint:
name: "Lint Swift"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
- name: Lint Swift
run: bundle exec rake lint:swift
embedded-libraries:
name: "Lint Embedded Libraries"
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
- name: Lint Embedded Libraries
run: bundle exec rake lint:EmbeddedLibraries