Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Publishing your library with Carthage
Search
Frédéric Maquin
June 30, 2016
Programming
0
990
Publishing your library with Carthage
Talk given at CocoaHeads Strasbourg.
Frédéric Maquin
June 30, 2016
Tweet
Share
More Decks by Frédéric Maquin
See All by Frédéric Maquin
Bluetooth Low Energy
ephread
1
480
Trends & Patterns
ephread
0
1.7k
Seeding your library with CocoaPods
ephread
0
680
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
490
高単価案件で働くための心構え
nullnull
0
130
DartASTとその活用
sotaatos
2
130
KoogではじめるAIエージェント開発
hiroaki404
1
480
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
150
自動テストを活かすためのテスト分析・テスト設計の進め方/JaSST25 Shikoku
goyoki
3
660
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
2
440
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
140
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
220
Register is more than clipboard
satorunooshie
1
470
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
560
FlutterKaigi 2025 システム裏側
yumnumm
0
1k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
GitHub's CSS Performance
jonrohan
1032
470k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Optimizing for Happiness
mojombo
379
70k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Transcript
PUBLISHING YOUR LIBRARY WITH CARTHAGE Frédéric Maquin @ephread CocoaHeads Strasbourg
June 30th, 2016
2
Decentralised dependency manager for Xcode projects. 3
OCTOBER 2014 JUSTIN SPAHR-SUMMERS 4
OCTOBER 2014 JUSTIN SPAHR-SUMMERS 4
Written in Swift. Based on iOS 8+ dynamic frameworks. 5
VS. 6
CocoaPods is CENTRALISED, EASY but INTRUSIVE. 7
Carthage is DECENTRALISED, UNINTRUSIVE and SIMPLE. CARTHAGE 8
EASY SIMPLE ≠ 9
GETTING STARTED 10
INSTALLATION $ brew install carthage 11
INSTALLATION https://github.com/Carthage/Carthage/releases or download PREBUILT PACKAGES. 12
Cartfile github "ReactiveCocoa/ReactiveCocoa" git "https://enterprise.local/desktop/git-error-translations2.git" 13
Cartfile github "ReactiveCocoa/ReactiveCocoa" git "https://enterprise.local/desktop/git-error-translations2.git" ~> 4.0 13
Cartfile github "ReactiveCocoa/ReactiveCocoa" git "https://enterprise.local/desktop/git-error-translations2.git" "master" 13
Cartfile $ carthage update 14
Cartfile $ carthage update FETCH the code and BUILD the
framework. 14
FRAMEWORK LINKING 15
STRIP ARCHITECTURE (iOS) Work around an App Store BUG. 16
You’re ALL SET! 17
PUBLISH 18
Bundle your code in a FRAMEWORK. 19
Share your SCHEMES. PRODUCT > SCHEME > MANAGE SCHEMES… 20
It doesn’t get any SIMPLER. 21
It doesn’t get any SIMPLER. But don’t forget to TAG
versions. 21
It doesn’t get any SIMPLER. But don’t forget to TAG
versions. And PUSH the code somewhere… 21
IN SHORT 22
CocoaPods is EASY TO USE and can LINT/ANALYSE your code.
PROS 23
CocoaPods can even generate the DOCUMENTATION for you. PROS 24
CONS CocoaPods is INTRUSIVE and can be SLOW. 25
Pods require some WORK to publish. CONS 26
Carthage is FAST, UNINTRUSIVE and SIMPLE. CARTHAGE PROS 27
Carthage ONLY SUPPORTS iOS 8+. CARTHAGE CONS 28
Carthage requires more work when IMPORTING LIBRAIRIES. CARTHAGE CONS 29
By the way, I prefer CARTHAGE over COCOAPODS. :o) 30
QUESTIONS? 31