Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
🚀 Start Contributing to CocoaPods
Search
Boris Bügling
June 02, 2014
Technology
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
🚀 Start Contributing to CocoaPods
Presentation given at CocoaPods 3rd WWDC Meetup, June 2014.
Boris Bügling
June 02, 2014
More Decks by Boris Bügling
See All by Boris Bügling
Testing ⌚️ Apps and Other Extensions
neonichu
1
4.7k
Cross-platform Swift
neonichu
4
18k
Building better API clients in Swift
neonichu
1
360
Cross-platform Swift
neonichu
3
960
Swift Package Manager
neonichu
2
380
Swift Package Manager
neonichu
0
89
📺
neonichu
0
2.1k
Cross-Platform Swift
neonichu
0
140
Swift Package Manager
neonichu
6
4.5k
Other Decks in Technology
See All in Technology
LT:「このままでいいのかな?」から一歩踏み出した私のデータキャリア選択〜社会人3年目に上京を決意したリアル〜Snowflake女子会 vol.8
snowwmn0824
0
110
形式手法を使って仕様をコーディングしよう
mikanichinose
0
140
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
110
なぜAI任せのゲームは面白くならないのか?
hirohasuyoutube
0
310
20260915deck.gl-raster を使ってみた
rena1208
0
160
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
380
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
100
AIに会社の文脈を理解させる技術~上流工程・非エンジニアにも広げるハーネスエンジニアリング実践~
ochtum
0
190
spanner-autoscalerに学ぶ CRD設計パターン 〜自動化と緊急時対応を両立する Kubernetesコントローラーの作り方〜
tkuchiki
0
210
Claude Designがめちゃくちゃ便利なので使ってほしい
diggymo
0
140
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.5k
How STYLIGHT went responsive
nonsquared
100
6.3k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
290
Side Projects
sachag
456
43k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Being A Developer After 40
akosma
91
590k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
960
So, you think you're a good person
axbom
PRO
2
2.2k
Designing for Timeless Needs
cassininazir
1
510
Product Roadmaps are Hard
iamctodd
55
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
! START CONTRIBUTING TO COCOAPODS COCOAPODS 3RD WWDC MEETUP, JUNE
2014 BORIS BÜGLING - @NEONACHO
HI!
Y U NO SUBMODULES?
LAST YEAR
None
INTEGRAL PART OF MY WORKFLOW
None
▸ Random assignment of issues ▸ Super helpful team ▸
Leaderboard
RAINFOREST
$ git clone https://github.com/CocoaPods/Rainforest.git $ cd Rainforest $ rake bootstrap
$ rake local_dependencies_set $ CocoaPods/bin/pod --help
▸ Core ▸ cocoapods-downloader ▸ Xcodeproj ▸ CocoaPods
CORE spec = Pod::Specification.from_file('CPDColors.podspec') puts spec.name puts spec.version $ ./core.rb
CPDColors 0.1.0
COCOAPODS-DOWNLOADER def download_head! hg! %|clone #{url} #{@target_path.shellescape}| [...] end def
download_revision! hg! %|clone "#{url}" --rev '#{options[:revision]}' #{@target_path [...] end def download_tag! hg! %|clone "#{url}" --updaterev '#{options[:tag]}' #{@target_path [...] end
XCODEPROJ wrkspace = Xcodeproj::Workspace.new_from_xcworkspace( 'CPDColors/Example/Demo.xcworkspace') puts wrkspace.schemes $ ./xcodeproj.rb {"Demo"=>"/Users/boris/Projects/CPDColors/Example/Demo.xcodeproj",
"Pods"=>"/Users/boris/Projects/CPDColors/Example/Pods/Pods.xcodeproj"}
COCOAPODS $ pod install Analyzing dependencies Pre-downloading: `DBCamera` from `https://github.com/[...]`
Downloading dependencies Installing ARASCIISwizzle (1.1.0) Installing Bolts (1.1.0) [...] Generating Pods project Integrating client project
RUBY $ irb ▸ Interactive Ruby Shell
RUBY irb(main):001:0> "Hello World" => "Hello World"
RUBY irb(main):019:0> def h(name = "World") irb(main):020:1> puts "Hello #{name.capitalize}!"
irb(main):021:1> end => :h irb(main):022:0> h "chris" Hello Chris!
RUBY irb(main):001:0> a NameError: undefined local variable or method `a'
for main:Object from (irb):1 from /usr/bin/irb:12:in `<main>' irb(main):002:0> a = b NameError: undefined local variable or method `b' for main:Object from (irb):2 from /usr/bin/irb:12:in `<main>' irb(main):003:0> a = a => nil
LEARNING MORE ABOUT RUBY ▸ http://mislav.uniqpath.com/poignant-guide/ ▸ https://www.ruby-lang.org/en/documentation/ quickstart/
PLEASE USE THE SYSTEM RUBY!
THANKS!
https://github.com/CocoaPods/Rainforest
None