Skip to content

Releases: muxinc/swift-upload-sdk

v1.0.1

20 Jun 18:40
b42788f
Compare
Choose a tag to compare

Improvements

  • Fix compile-time error under some optimizer mode that remove an escape from failed guard condition

v1.0.0

13 Jun 00:01
8457ea3
Compare
Choose a tag to compare

Improvements

  • Direct uploads are cancelable while inputs are standardized on the client
  • Video inputs can be standardized to 2160p (4K) resolution
  • Upload source AVAsset has the correct URL

Known Issues

  • When checking if a video input file is standard or not, the SDK compares an averaged bitrate to a resolution-dependent limit. If different parts of the video input have varying input, the video may require further processing by Mux upon ingestion.

v0.7.0

15 Mar 15:50
50d5215
Compare
Choose a tag to compare

Improvements

  • add macos deployment target (#102)
  • fix: clean up chunk memory (#101)

v0.6.0

24 Aug 17:44
c79a4e5
Compare
Choose a tag to compare

New

  • feat: Add Foundation Measurement API for chunk size (#94)

Breaking

  • refactor: Respell Version to SemanticVersion for explicitness in API (#95)

Improvements

  • chore: remove UIKit dependency from SDK (#90)
  • docs: backfill missing inline API docs (#92)

v0.5.0

31 Jul 23:59
4b1fe41
Compare
Choose a tag to compare

New

  • Add an overload initializer for UploadOptions (#81)

Breaking

  • Remove prefix use in public APIs and respell Upload as DirectUpload (#84)
  • Rename MuxUpload -> DirectUpload
  • Rename UploadManager -> DirectUploadManager
    • DirectUploadManager.allManagedUploads() -> DirectUploadManager.allManagedDirectUploads()
    • DirectUploadManager.findStartedUpload(ofFile:) -> DirectUploadManager.startedDirectUpload(ofFile:)
    • DirectUploadManager.resumeUpload(ofFile:) -> DirectUploadManager.resumeDirectUpload(ofFile:)
    • DirectUploadManager.resumeUpload(ofFile:completion:) -> DirectUploadManager.resumeDirectUpload(ofFile:completion:)
    • DirectUploadManager.resumeAllUploads() ->
      DirectUploadManager.resumeAllDirectUploads()
  • Rename UploadsUpdateDelegate -> DirectUploadManagerDelegate
    • Rename DirectUploadManagerDelegate.uploadListUpdated(with:) -> DirectUploadManagerDelegate.didUpdate(managedDirectUploads:)
  • Rename MuxUpload.UploadError -> DirectUploadError
  • Rename MuxErrorCase -> DirectUploadError.Kind
  • Rename DirectUpload.UploadError.code -> DirectUploadError.kind
  • Remove Error.asMuxUploadError
  • Remove Error.parseAsUploadError(lastSeenUploadStatus:)
  • Rename MuxUploadSDK -> SDKLogger (This only deals with logging)
  • Rename UploadOptions -> DirectUploadOptions
  • Rename and recombine DirectUpload.InputStatus
    • DirectUpload.InputStatus.uploadSucceeded and DirectUpload.InputStatus.uploadFailed to DirectUpload.InputStatus.finished
    • DirectUpload.InputStatus.awaitingUploadConfirmation to DirectUpload.InputStatus.awaitingConfirmation
    • DirectUpload.InputStatus.uploadInProgress to DirectUpload.InputStatus.transportInProgress
    • DirectUpload.InputStatus.uploadPaused to DirectUpload.InputStatus.paused
  • Rename DirectUpload.Success -> DirectUpload.SuccessDetails
  • Rename UploadResult -> DirectUploadResult

v0.4.0

21 Jul 21:38
fe4407e
Compare
Choose a tag to compare

API Changes

  • Deprecation: MuxUpload.init(uploadURL:videoFileURL:chunkSize:retriesPerChunk:) has been deprecated and will be removed in a future SDK version. Use init(uploadURL:inputFileURL:options:) instead. (#48)
  • Breaking Change: MuxUpload.startTime now returns an optional value (#48)
  • Breaking Change: MuxUpload.Status has been renamed to MuxUpload.TransportStatus (#48)
  • Add: UploadOptions struct to contain all available MuxUpload options (#48)
  • Add: Options to request or to skip input standardization (#48)
  • Add: MuxUpload initializer APIs that accept AVAsset or PHAsset (#48)
  • Add: MuxUpload.InputStatus enum to represent the current state of the upload and change handler (#48)

New

  • feat: Add support for input standardization, create a playable asset from your direct upload faster. Non-standard files go through an extra normalization step when they are ingested post-upload. When input standardization is requested from the SDK, input video is converted to a standard range of values on a best-effort basis (#48)

Fixes

  • Prevent integer overflow when calculating chunk request content ranges (#38)
  • Prevent crash from chunk worker force unwrap (#47)
  • Remove public methods from internal SDK classes (#51)
  • Prevent removal of result handler properties when passing MuxUpload via UploadManager (#61)

Co-authored-by: Emily Dixon [email protected]
Co-authored-by: AJ Lauer Barinov [email protected]
Co-authored-by: AJ Lauer Barinov [email protected]
Co-authored-by: GitHub [email protected]

v0.3.1

06 Jun 17:15
13d1b66
Compare
Choose a tag to compare

Fixes

  • fix: Manually-paused uploads don't resume again (#27)

Co-authored-by: Emily Dixon [email protected]
Co-authored-by: GitHub [email protected]

v0.3.0

05 Jun 19:48
be70b3d
Compare
Choose a tag to compare

API Changes

  • MuxUpload's initializer no longer requires a MIME type or Retry Time. These are calculated internally
  • Added methods for querying the UploadManager for the list of currenty-active uploads, and listening for changes to the list

Improvements

  • NFC: call into upload manager reference (#14)
  • api: Remove extraneous MIME type and retry time config fields, add opt-out for event tracking (#16)
  • doc: Add a much-improved example app (#15)

Fixes

  • Fix: Uploads continue without reporting progress after being resumed (#24)
  • Fix: handlers not retained unless callers retain the MuxUpload (#25)

Co-authored-by: AJ Lauer Barinov [email protected]
Co-authored-by: Liam Lindner [email protected]
Co-authored-by: Emily Dixon [email protected]
Co-authored-by: GitHub [email protected]

v0.2.1

06 Apr 18:18
63cb5ee
Compare
Choose a tag to compare

Improvements

  • Track upload statistics (#3)
  • fix: Resumed Uploads start at the beginning of the file (#7)

Co-authored-by: Liam Lindner [email protected]
Co-authored-by: Emily Dixon [email protected]

v0.2.0

10 Mar 21:13
512f84a
Compare
Choose a tag to compare

Improvements

  • Remove Alamofire Dependency
  • Merge pull request #1 from muxinc/fixes/remove-af

Co-authored-by: Emily Dixon [email protected]
Co-authored-by: GitHub [email protected]