Skip to content

2.9.1

Compare
Choose a tag to compare
@rohandubal rohandubal released this 11 Jan 03:29

Bug Fixes

  • Updated the Cartfile to depend on the correct version of the AWS iOS SDK. (Note, this is advisory only; we do not retrieve dependencies via Carthage.)
  • Added Pods to source control so Carthage users (or anyone else who builds from source) will no longer need to issue a pod update before building (#150)

This release also includes changes from the previous, broken release, 2.9.0:

Bug Fixes

  • Mutation queue handling is rewritten to use OperationQueue, to fix cases where mutations would either deadlock (#81), or not execute (#106). Thanks @larryonoff! 🎉
  • S3Objects now correctly upload whether they are included as part of a mutation's parameters or an input type (#122)

Misc. Updates

  • Breaking API Changes

    • AWSPerformMutationOperation was public, now it's internal
    • AWSAppSyncClient.perform now returns Cancellable instead of AWSPerformMutationOperation
  • Refactored internal network change notifications (#139)

  • Refactored structure & tests to make future maintenance easier. As part of this, we deprecated the AWSAppSyncClientInfo class in favor of the AWSAppSyncServiceConfigProvider protocol. We provide a default implementation AWSAppSyncServiceConfig. AWSAppSyncClientInfo will be removed in a future minor version.

    • Thanks to @larryonoff for contributing code and PR feedback to this refactor! 🎉
  • Refactored tests into Unit and Integration tests. Currently, any test that requires network activity is placed in Integration tests, even if the test hits localhost and not a valid service.

    • Updated the README to include new instructions for setting up your integration test environment.
    • The project now includes an AWS CloudFormation template to bootstrap your test setups. This will be updated in the future to include S3 buckets and associated configuration to support complex object integration tests.

Known Issues

  • The AWSAppSync.podspec file incorrectly declares a dependency on version 2.9.0 of AWSCore. The correct dependency version is 2.8.0, and is updated in the CocoaPods trunk spec repo.