How to make an official card.io-iOS-SDK release:
- To make any changes to
acknowledgments.md,LICENSE.md,README.md,CardIO.podspec, orrelease_notes.txt, you'll find the original files in your card.io-iOS-SDK project'sReleasefolder. - Update
release_notes.txtwith any public-facing changes. - Update
CardIO.podspecto reflect the new version number. (Also double-check iOS version forspec.platformandspec.ios.deployment-target.) - Run
fab build:outdir=~(or specify some other output directory). - In the resulting directory, take a pass through all public-facing files (header files, release notes, etc.) to make sure they're up to date, clear, and perfect. Except for the card.io version number, which we'll fix in just a bit.
- If needed, get someone else to read all public-facing files. Making them pretty and flawless is very important. :)
- Test the generated library in a new project (e.g. the Sample App), as a sanity check.
- Run
pod lib lintto confirm that CardIO.podspec isn't broken. If it is, fix as necessary. - Tag the card.io-iOS-SDK commit used for the release. The convention for the tag is of the form "iOS_x.y.z".
[Note to GUI-using people: make an annotated tag, via command line
git tag -a iOS_x.y.z -m 'iOS_x.y.z'.] - Run the
fab build:outdir=~command again, and confirm that now the correct version number appears in the header files. - Merge and push to card.io-iOS-source
master - Now we'll update the card.io-iOS-SDK repo:
- From the folder created by the second
fab buildyou did, just a couple of steps ago, copy all files and folders to your local clone of the github.comcard.io-iOS-SDKrepo. - Commit to your local clone of the github
card.io-iOS-SDKrepo with a commit message of the form "Release x.y.z". - Tag the card.io-iOS-SDK commit used for the release. The convention for the tag is of the form "x.y.z".
[Note to GUI-using people: make an annotated tag, via command line
git tag -a x.y.z -m x.y.z.] - Push to github.com card.io-iOS-SDK.
- From the folder created by the second
- Next, we'll create the "Release" on github.com:
- Go to
https://github.com/card-io/card.io-iOS-SDK/releases. - Click the
Draft a new releasebutton. - For
Tag versionenterx.y.z, wherex.y.zis the new SDK version number. (GitHub should then indicate that this is an existing tag.) - Fill in
Release titleandDescribe this releaseas you please. (See previous Releases for examples.) - Click
Publish release. - Back on the "Releases" page, admire your results.
- Go to
- Next, we'll update CocoaPods.
- In Terminal,
cdto your local card.io-iOS-SDK directory. - Run
pod trunk push CardIO.podspec.
- In Terminal,
- Post appropriate notifications on (1) Twitter and (2) https://groups.google.com/forum/#!forum/card-io-sdk-announce
- Update the library in our Cordova/Phonegap Plugin repo under
src/ios/CardIO. - And don't forget to update PayPal-iOS-SDK!