Cedar-14への移行方法
2015/11/4をもってHerokuのCedar-10 stackが終了したので、Cedar-14に移行しましょう。
現段階でCedar-10を利用している人は、push時に移行して下さいというメッセージが出てdeploy出来ない状態となっています。
1. 以下のコマンドで簡単にCedar-14 stackを利用すようにします。
$ heroku stack:migrate cedar-14 -a <app name>
2. Herokuにpushします
これでCedar-14でdeployされるようになります。簡単です。Heroku素晴らしい:D
参考リンク
Herokuでdeploy時のdowntimeをゼロにする
preboot機能を有効にします。
heroku features:enable preboot
無効にするにはdisable
heroku features:disable preboot
注意事項として、Documentに
If you make database schema changes that require downtime, we recommend disabling the preboot feature, performing the changes and code push as usual, then re-enabling preboot.
と書かれていますが、database schemaに変更を加える場合はpreboot機能をdisableにすることが推奨されています。
Gitで2つのコミット間の変更を確認する方法
SwiftでSingletonを作成する
以下の様に作成する。
Singleton.sharedInstance
と利用すれば良い。
class Singleton { class var sharedInstance: Singleton { struct Static { static var instance: Singleton? static var token: dispatch_once_t = 0 } dispatch_once(&Static.token) { Static.instance = Singleton() } return Static.instance! } }
参考リンク
Flurryの導入
Podで導入
pod 'FlurrySDK', '5.4'
最新版の6.0.0は上記Podには含まれていなかったのでPRを送信しておきました。
また、私のリポジトリで6.0.0のものを上げてるのでPrivate Spec Repoで利用する方法も可能です。
nafu/Flurry · GitHub
CocoaPodsに変わるライブラリ管理ツール?Carthageを使ってみた
使い方は簡単
1. インストール
2. Cartfile作成
3. carthage update実行
4. 各々お好きに
1. インストール
Releases · Carthage/Carthage · GitHub
githubからpkgをダウンロードして実行するだけ!
2. Cartfile作成
Quickをインストールしたい場合はこれだけ!
github "Quick/Quick" == 0.2.0 github "Quick/Nimble"
3. carthage update実行
あとは、carthageがgit cloneやらxcodebuildを実行してくれて、.frameworkファイルを生成してくれます。
4. 各々お好きに
Quickを実行する場合は、xcodeprojをテストターゲットに追加して、Carthage/Buildの.frameworkをリンクさせれば良いです。
Swiftのクラスをテストから参照する
Tests.swift内で、プロジェクトのクラスを参照する方法。
自分の作成したプロジェクトがMyProjectとします。
Tests.swift内で`import MyProject`として、importします。
ここで、注意なのはMyProjectで作成したclassはMyProject内からしか参照出来ない状態です。
publicを指定していれば、参照出来るようになります。
import Foundation public class Model { public init() { } }
これで、以下のようにテスト内で参照できます。
Tests.swift
import XCTest import MyProject class ModelTests: XCTestCase { let testObject = Model() }