GithubHelp home page GithubHelp logo

aswathr / aws-sdk-ios-spm Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aws-amplify/aws-sdk-ios-spm

0.0 0.0 0.0 254 KB

This repository enables Swift Package Manager support for the AWS Mobile SDK for iOS

License: Apache License 2.0

Shell 6.70% MATLAB 0.01% Swift 93.30%

aws-sdk-ios-spm's Introduction

Swift Package Manager support for AWS SDK for iOS

This repository enables Swift Package Manager support for the AWS Mobile SDK for iOS by vending a Manifest file (Package.swift) that links to binary frameworks for the SDKs.

Setup

To get started with the AWS SDK for iOS, check out the Developer Guide for iOS. You can set up the SDK and start building a new project, or you integrate the SDK in an existing project.

To use the AWS SDK for iOS, you will need the following installed on your development machine:

  • Xcode 11.0 or later
  • iOS 9 or later

Adding AWS SDK iOS via Swift Package Manager

  1. Open your project in Xcode 11.0 or above

  2. Go to File > Swift Packages > Add Package Dependency...

  3. In the field Enter package repository URL, enter "https://github.com/aws-amplify/aws-sdk-ios-spm"

  4. Pick the latest version and click Next.

    NOTE: The AWS Mobile SDK for iOS does not follow Semantic Versioning.

  5. Choose the packages required for your project and click Finish

Local Development

It you are using SPM to do development and are modifying the source in the AWS SDK iOS code base you will need to work with a locally built copy of the XCF files. Running local.sh will produce all of the XCF files and copy them to a directory in this repo so that Package.swift can be updated to reference them. Once the XCF files are in place change the value for localPathEnabled to true and the package will reference the local path. The Swift package can then be used locally with any changes made in the cloned copy of the aws-sdk-ios repo.

Requirements

In order to do local development the XCF directory must be populated with the XCF files. These files can be generated from the aws-sdk-ios repo which is expected to be cloned alongside this repo. The Python script which is used to create the XCF files for deployment will be used to prepare these files which are then copied into a folder named XCF in this repo's directory. Then Package.swift can be changed to use the local path.

  1. Clone aws-sdk-ios to the same directory as this repo
  2. Run local.sh to prepare the XCF files (this can take a while)
  3. Update Package.swift to set buildMode to localWithDictionary or localWithFilesystem

The localWithDictionary mode will use the list of packages in Package.swift while localWithFilesystem will read the filesystem for which packages are built and are found in the XCF folder. This option is useful when a subset of the packages are built which takes less time.

aws-sdk-ios-spm's People

Contributors

aws-sdk-ios-spm-ci avatar github-actions[bot] avatar royjit avatar brennanmke avatar ruisebas avatar palpatim avatar aswathr avatar harsh62 avatar atierian avatar lawmicha avatar samkudr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.