Skip to content

Commit

Permalink
Merge pull request #2 from MoroziOS/Lottie-upstream
Browse files Browse the repository at this point in the history
Lottie upstream
  • Loading branch information
BrianKenny authored May 24, 2024
2 parents 409cc30 + 5b8d663 commit b668227
Show file tree
Hide file tree
Showing 2,852 changed files with 71,123 additions and 24,332 deletions.
11 changes: 0 additions & 11 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1 @@
# These are supported funding model platforms

github: [buba447]
patreon: # Replace with a single Patreon username
open_collective: lottie
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
32 changes: 32 additions & 0 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Setup
description: Setup the Lottie iOS CI Environment
inputs:
xcode:
description: The version of Xcode to select
install-mint:
description: Whether to install mint
default: true
install-carthage:
description: Whether to install Carthage
default: false
runs:
using: composite
steps:
- name: Select Xcode ${{ inputs.xcode }}
run: sudo xcode-select --switch /Applications/Xcode_${{ inputs.xcode }}.app
if: ${{ inputs.xcode }}
shell: bash

- name: Install Mint via Homebrew
run: brew install mint
if: ${{ inputs.install-mint == 'true' }}
shell: bash

- name: Install Carthage via Homebrew
run: brew install carthage
if: ${{ inputs.install-carthage == 'true' }}
shell: bash

- name: Install Ruby Gems
run: bundle install
shell: bash
29 changes: 6 additions & 23 deletions .github/issue_template.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,21 @@
<!--
## Lottie-iOS Issue
Hello! Sorry you're having an Issue! Please help us make Lottie better by filling everything below out with as much information as you can, so we can try to reproduce and fix the issue!
-->
## Check these before submitting:
- [] The issue doesn't involve an [Unsupported Feature](https://github.com/airbnb/lottie-ios/blob/master/README.md#supported-after-effects-features)
- [] This issue isn't related to another open issue
Issues are for filing bug reports about crashes, regressions, unexpected behavior, etc.
## This issue is a:
- [] Non-Crashing Bug (Visual or otherwise)
- [] Crashing Bug
- [] Feature Request
- [] Regression (Something that once worked, but doesn't work anymore)
If you have a question or feature request, please start a discussion here:
https://github.com/airbnb/lottie-ios/discussions
-->

## Which Version of Lottie are you using?

Lottie 3.0

## What Platform are you on?
<!-- (Specify Platform Version) -->
- [] MacOS
- [] iOS

## What Language are you in?
- [] Swift
- [] Objective-C
Lottie 3.x.x

## Expected Behavior
<!-- Screenshots encouraged -->

## Actual Behavior
<!-- Screenshots encouraged -->

## Code Example

## Animation JSON
<!-- Adding the animation JSON helps us debug the issue faster! If you don't want to publicly share the Animation, please email me [email protected] -->
<!-- Adding the animation JSON helps us debug the issue faster! -->
181 changes: 181 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
name: CI

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
build-package-no-visionOS:
name: "Build Package"
runs-on: macos-14
strategy:
fail-fast: false
matrix:
xcode:
- '15.0.1' # Swift 5.9, but no visionOS support
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build Package
# Only Xcode 15.2 and later support visionOS, so exclude it on earlier versions.
run: SKIP_VISION_OS=true bundle exec rake build:package:all

build-package:
name: "Build Package"
runs-on: macos-14
strategy:
fail-fast: false
matrix:
xcode:
- '15.2' # Swift 5.9
- '15.3' # Swift 5.10
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build Package
run: bundle exec rake build:package:all


build-example:
name: "Build Example App"
runs-on: macos-14
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: '15.3' # Swift 5.10
- name: Build Example
run: bundle exec rake build:example:all

test-package:
name: "Test Package"
runs-on: macos-14
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
xcode: '15.3' # Swift 5.10
- 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-14
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-minimum-supported-version:
name: "Build XCFramework"
runs-on: macos-14
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.
# This should be the minimum Xcode version permitted by the App Store.
# As of April 2024, this is Xcode 15.0: https://developer.apple.com/news/?id=fxu2qp7b
# - However, testing in https://github.com/airbnb/lottie-spm/pull/12 shows that
# Xcode 15.0 can use an XCFramework built by Xcode 15.2.
- '15.2' # Swift 5.9, first Xcode version with visionOS support.
steps:
- uses: actions/checkout@v2
- uses: apple-actions/import-codesign-certs@v2
continue-on-error: true
with:
p12-file-base64: ${{ secrets.SIGNING_CERTIFICATE_BASE_64 }}
p12-password: ${{ secrets.SIGNING_CERTIFICATE_PASSWORD }}
- uses: ./.github/actions/setup
with:
xcode: ${{ matrix.xcode }}
- name: Build XCFramework
run: bundle exec rake build:xcframework[Lottie-Xcode-${{ matrix.xcode }}]
- name: Upload XCFramework
uses: actions/upload-artifact@v2
with:
name: BuildProducts
path: .build/archives

cocoapod:
name: "Lint CocoaPods podspec"
runs-on: macos-14
strategy:
matrix:
xcode:
- '15.3' # Swift 5.10
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: false
xcode: ${{ matrix.xcode }}
- name: Lint CocoaPod Podspec
run: bundle exec rake lint:podspec

spm-xcode-15:
name: "Test Swift Package Manager"
runs-on: macos-14
strategy:
matrix:
xcode:
- '15.3' # Swift 5.10
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

carthage:
name: "Test Carthage support"
runs-on: macos-14
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
with:
install-mint: true
install-carthage: true
xcode: '15.3' # Swift 5.10
- name: Test Carthage support
run: bundle exec rake test:carthage

swiftlint:
name: "Lint Swift"
runs-on: macos-14
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-14
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/setup
- name: Lint Embedded Libraries
run: bundle exec rake lint:EmbeddedLibraries
17 changes: 17 additions & 0 deletions .github/workflows/stale_issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: 'Close stale issues'
on:
schedule:
- cron: '30 1 * * *'

jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v5
with:
only-labels: >
can't reproduce
stale-issue-message: >
This issue is stale because it is marked "can't reproduce" and has had no activity in the past week. Please comment with additional information, or this issue will be closed due to inactivity in one week.
days-before-stale: 7
days-before-close: 7
15 changes: 15 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,18 @@ build/

# macOS
.DS_Store

# Swift Package Manager
.swiftpm
.build/

# Carthage support tests
script/test-carthage/Carthage

# Test artifacts
Tests/Artifacts

# Private test animations
Tests/Samples/Private/*.json
Tests/Samples/Private/**/*.json
Tests/__Snapshots__/**/*Private*
4 changes: 4 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
_AeFiles
_Gifs
Example
script
Tests
.build
.swiftpm
6 changes: 6 additions & 0 deletions .spi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 1
builder:
configs:
- platform: ios
documentation_targets:
- Lottie
Loading

0 comments on commit b668227

Please sign in to comment.