Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: remove binary packaging #215

Merged
merged 22 commits into from
Oct 31, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
80bcf30
build: remove binary packaging
andrewjl-mux Oct 27, 2023
45aefa7
chore: clean-up
andrewjl-mux Oct 27, 2023
ce08d3e
adjust tools version, remove xcframework steps from CI scripts
andrewjl-mux Oct 27, 2023
4ea0aad
fix GHA job name
andrewjl-mux Oct 27, 2023
ecfea96
Downgrade tools version in order to use older Xcode
andrewjl-mux Oct 27, 2023
e075c4b
GHA cleanup
andrewjl-mux Oct 27, 2023
f47ea6a
switch Xcode
andrewjl-mux Oct 27, 2023
883ddc4
fix import
andrewjl-mux Oct 27, 2023
27b7dae
remove unused test case
andrewjl-mux Oct 27, 2023
9e0d7ce
Select the right Xcode version
andrewjl-mux Oct 27, 2023
aba6a62
Test on iOS 17.0.1
andrewjl-mux Oct 27, 2023
5fe8e45
fix: when not using modules import the right MuxCore header based on …
andrewjl-mux Oct 28, 2023
dfdac1a
ci: try iPhone 15
andrewjl-mux Oct 28, 2023
09f8d46
test: remove temporal filler
andrewjl-mux Oct 28, 2023
e7a3a11
test: add .xctestplan
andrewjl-mux Oct 30, 2023
e3c1e22
docs: update release steps to account for source based packaging
andrewjl-mux Oct 30, 2023
4b1f0d5
build: add shared scheme for Carthage support
andrewjl-mux Oct 30, 2023
954f1fa
ci: add a check for carthage build command
andrewjl-mux Oct 30, 2023
34f5231
build: exclude include folder from pod sources
andrewjl-mux Oct 30, 2023
099a202
docs: revise the README
andrewjl-mux Oct 30, 2023
c39239f
ci: update to Cocoapods 1.14 when using Xcode 15.0.1
andrewjl-mux Oct 30, 2023
432656a
test: activate the application after launching
andrewjl-mux Oct 30, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 12 additions & 42 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,72 +4,42 @@ on:
push:

jobs:
build:
name: Run unit tests and build dynamic SDK binary
unit-tests:
name: Run SDK unit tests
runs-on: macos-13
steps:
- name: Install xcbeautify
run: brew install xcbeautify
- name: Checkout
uses: actions/checkout@v3
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_15.0.1.app/Contents/Developer'
- name: "Baseline Unit Test Pass"
run: ./scripts/run-baseline-unit-test-pass.sh
- name: "Switch to Xcode 14.3.1"
run: sudo xcode-select -switch /Applications/Xcode_14.3.1.app
- name: "🔨 Build Dynamic XCFramework"
run: ".github/workflows/scripts/build.sh"
- name: "Upload xcframework artifact"
uses: actions/upload-artifact@v3
with:
name: "MUXSDKStats.xcframework.zip"
path: "MUXSDKStats.xcframework.zip"
tests:
name: Test the SDK with a Demo App
needs: build
demo-application-tests-ventura:
name: (macOS Ventura) Test the SDK with a Demo App
runs-on: macos-13
steps:
- name: Install xcbeautify
run: brew install xcbeautify
- name: Checkout
uses: actions/checkout@v3
- name: Download framework artifact
uses: actions/download-artifact@v3
with:
name: "MUXSDKStats.xcframework.zip"
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_15.0.1.app/Contents/Developer'
- name: Update Cocoapods to 1.14
run: gem install cocoapods
- name: Run cocoapods example application tests
run: "scripts/run-tests-cocoapods-ventura.sh"
- name: Run Swift package manager example application tests
run: "scripts/run-tests-swift-package-manager-ventura.sh"
build-static:
name: Build static SDK binary
runs-on: macos-13
steps:
- name: Install xcbeautify
run: brew install xcbeautify
- name: Checkout
uses: actions/checkout@v3
- name: "Switch to Xcode 14.3.1"
run: sudo xcode-select -switch /Applications/Xcode_14.3.1.app
- name: "🔨 Build Static XCFramework"
run: ".github/workflows/scripts/build-static.sh"
- name: "Upload xcframework artifact"
uses: actions/upload-artifact@v3
with:
name: "MUXSDKStats-static.xcframework.zip"
path: "MUXSDKStats-static.xcframework.zip"
tests-iOS-15:
name: (iOS 15) Test the SDK with a Demo App
needs: build
demo-application-tests-monterey:
name: (macOS Monterey) Test the SDK with a Demo App
runs-on: macos-12
steps:
- name: Install xcbeautify
run: brew install xcbeautify
- name: Checkout
uses: actions/checkout@v3
- name: Download framework artifact
uses: actions/download-artifact@v3
with:
name: "MUXSDKStats.xcframework.zip"
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_13.4.1.app/Contents/Developer'
- name: Run tests
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/scripts/build-static.sh

This file was deleted.

5 changes: 0 additions & 5 deletions .github/workflows/scripts/build.sh

This file was deleted.

10 changes: 10 additions & 0 deletions .github/workflows/validate-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,16 @@ jobs:
uses: actions/checkout@v3
- name: "Validate Podspec"
run: "scripts/validate-podspec.sh"
validate-carthage:
name: Validate Carthage
runs-on: macos-13
steps:
- name: Install xcbeautify
run: brew install xcbeautify
- name: Checkout
uses: actions/checkout@v3
- name: "Validate Carthage Build"
run: "scripts/validate-carthage.sh"
unit-test-ventura:
runs-on: macos-13
name: Complete Unit Test Pass on macOS Ventura
Expand Down
941 changes: 0 additions & 941 deletions MUXSDKStats/MUXSDKStats.xcodeproj/project.pbxproj

This file was deleted.

This file was deleted.

24 changes: 0 additions & 24 deletions MUXSDKStats/MUXSDKStats/Info.plist

This file was deleted.

11 changes: 0 additions & 11 deletions MUXSDKStats/MUXSDKStats/MUXSDKPlayerBindingConstants.h

This file was deleted.

22 changes: 0 additions & 22 deletions MUXSDKStats/MUXSDKStatsTests/Info.plist

This file was deleted.

24 changes: 0 additions & 24 deletions MUXSDKStats/MUXSDKStatsTv/Info.plist

This file was deleted.

1 change: 0 additions & 1 deletion MUXSDKStats/MUXSDKStatsTv/MUXSDKStatsTv.h

This file was deleted.

6 changes: 0 additions & 6 deletions MUXSDKStats/MUXSDKStatsTv/module.modulemap

This file was deleted.

12 changes: 7 additions & 5 deletions Mux-Stats-AVPlayer.podspec
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
Pod::Spec.new do |s|
s.name = 'Mux-Stats-AVPlayer'

s.version = '3.4.2'
s.version = '4.0.0'
s.source = { :git => 'https://github.com/muxinc/mux-stats-sdk-avplayer.git',
:tag => "v#{s.version}" }
s.module_name = 'MUXSDKStats'

s.summary = 'The Mux Stats SDK'
s.description = 'The Mux stats SDK connect with AVPlayer to performance analytics and QoS monitoring for video.'
Expand All @@ -16,11 +17,12 @@ Pod::Spec.new do |s|

s.dependency 'Mux-Stats-Core', '4.6.0'

s.ios.deployment_target = '11.0'
s.ios.vendored_frameworks = 'XCFramework/MUXSDKStats.xcframework'
s.ios.deployment_target = '12.0'
s.ios.frameworks = 'AVKit', 'AVFoundation', 'SystemConfiguration', 'CoreMedia'

s.tvos.deployment_target = '11.0'
s.tvos.vendored_frameworks = 'XCFramework/MUXSDKStats.xcframework'
s.tvos.deployment_target = '12.0'
s.tvos.frameworks = 'AVKit', 'AVFoundation', 'SystemConfiguration', 'CoreMedia'

s.source_files = 'Sources/MUXSDKStatsObjc/**/*'
s.exclude_files = 'Sources/MUXSDKStatsObjc/include/**/*'
end
40 changes: 25 additions & 15 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -1,35 +1,45 @@
// swift-tools-version:5.3
// swift-tools-version:5.7

import PackageDescription

let package = Package(
name: "MUXSDKStats",
platforms: [
.iOS(.v11),
.tvOS(.v11)
.iOS(.v12),
.tvOS(.v12)
],
products: [
.library(name: "MUXSDKStats", targets: ["MUXSDKStatsTargets"])
.library(
name: "MUXSDKStats",
targets: ["MUXSDKStatsObjc"]
)
],
dependencies: [
.package(
name: "MuxCore",
url: "https://github.com/muxinc/stats-sdk-objc.git",
.exactItem("4.6.0")
url: "https://github.com/muxinc/stats-sdk-objc.git",
exact: "4.6.0"
)
],
targets: [
.binaryTarget(
name: "MUXSDKStats",
path: "XCFramework/MUXSDKStats.xcframework"
),
.target(
name: "MUXSDKStatsTargets",
name: "MUXSDKStatsObjc",
dependencies: [
"MuxCore",
.target(name: "MUXSDKStats")
.product(
name: "MuxCore",
package: "stats-sdk-objc"
)
],
path: "SwiftPM"
publicHeadersPath: "include"
),
.testTarget(
name: "MUXSDKStatsObjcTests",
dependencies: [
"MUXSDKStatsObjc",
.product(
name: "MuxCore",
package: "stats-sdk-objc"
)
]
)
]
)
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# mux-stats-sdk-avplayer

Mux integration with `AVPlayer` and `AVPlayerLayer` for iOS native applications.
Mux Data integration for monitoring video performance and QoS for `AVPlayer`, `AVPlayerViewController`, and `AVPlayerLayer` in iOS, iPadOS, and tvOS applications.

This integration is built on top of [Mux's core Objective-C library](https://github.com/muxinc/stats-sdk-objc), allowing thinner wrappers for each new player, such as any third-party players that do not use (or expose) an underlying `AVPlayer` and/or `AVPlayerLayer`.
This integration is built on top of [Mux's core Objective-C library](https://github.com/muxinc/stats-sdk-objc) for Mux Data monitoring. The core library is intended to be used with third-party players or to implement a completely custom integration.

## Integration Instructions
Full integration instructions can be found here: https://docs.mux.com/docs/avplayer-integration-guide.
Expand Down
Loading