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
Swift製CLIツールをMintを使わずSwiftPackageManagerで管理する
Search
Yasuharu Yanamura
February 12, 2020
Programming
2.6k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift製CLIツールをMintを使わずSwiftPackageManagerで管理する
Yasuharu Yanamura
February 12, 2020
More Decks by Yasuharu Yanamura
See All by Yasuharu Yanamura
Conditional Contents in SwiftUI
yanamura
2
22k
iOS開発からフロントエンド開発に転身
yanamura
0
2.6k
Other Decks in Programming
See All in Programming
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.7k
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
act1-costs.pdf
sumedhbala
0
210
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
8.9k
act2-costs.pdf
sumedhbala
0
110
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
410
Claude Team Plan導入・ガイド
tk3fftk
0
180
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
150
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
580
共通化で考えるべきは、実装より公開する型だった
codeegg
0
210
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
220
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
840
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.4k
WENDY [Excerpt]
tessaabrams
11
38k
Automating Front-end Workflow
addyosmani
1370
210k
Prompt Engineering for Job Search
mfonobong
0
370
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Product Roadmaps are Hard
iamctodd
55
12k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Statistics for Hackers
jakevdp
799
230k
Transcript
SwiftCLIπʔϧΛMintΛΘͣ SwiftPackageManagerͰཧ͢Δ Potatotips #68 2020/2/12 Yasuharu Yanamura
ࣗݾհ • Yasuharu Yanamura/༄ଜ ߁ • ɹ@yanamura_ɹɹ@yanamura • ίωώτגࣜձࣾ •
ϚϚϦiOSΞϓϦ։ൃ
iOSͷ։ൃͰ͏πʔϧྨ • SwiftFormat • SwiftLint • XcodeGen etc...
ཧํ๏͍Ζ͍Ζ • Homebrew • Cocoapods • Mint
Swift Package ManagerΛͬͨํ๏
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift OBNFద
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift EFQFOEFODJFTʹ͏ πʔϧΛྻڍ
͍ํ $ swift run -c release xcodegen ࣮ߦ
͍ํ $ swift run -c release xcodegen ࣮ߦ ॳճ࣮ߦϏϧυ͕ΔͷͰ͍͕ɺ ̎ճҎ߱Ωϟογϡ͞ΕΔͷͰ͍
MintͷΑ͏ͳύοέʔδཧπʔϧͷΠϯ ετʔϧͳ͠Ͱ͑Δ
طʹSwiftPMͬͯΔ߹ - Package.swiftͷdependenciesʹπʔϧྨ͍Εͨ͘ͳ͍ dependencies: [ .package(url: "https://github.com/kylef/PathKit.git", from: "1.0.0"), .package(url:
"https://github.com/jakeheis/SwiftCLI.git", from: "5.0.0"), .package(url: "https://github.com/apple/swift-format", .branch("master")), ], πʔϧผʹ͍ͨ͠
طʹSwiftPMͬͯΔ߹ - πʔϧ༻ͷσΟϨΫτϦΛ࡞ͬͯͦ͜ʹπʔϧ༻ͷ Package.swiftΛஔ͘
طʹSwiftPMͬͯΔ߹ - πʔϧ༻ͷσΟϨΫτϦΛ࡞ͬͯͦ͜ʹπʔϧ༻ͷ Package.swiftΛஔ͘ - swift runͷpackage-pathͰͦͷσΟϨΫτϦΛࢦఆ $ swift run
-c release --package-path Tools xcodegen 1BDLBHFTXJGUͷ͋Δ σΟϨΫτϦΛࢦఆ
Mintͱͷൺֱ
Ωϟογϡͷอଘઌ SwiftPackageManager: ./.buildҎԼʹอଘ Mint: /user/local/mintҎԼʹอଘ
ઃఆϑΝΠϧ SwiftPackageManager: Package.swift͕ඞਢ Mint: Mintfileͳ͠Ͱ࣮ߦͰ͖Δ $ mint run yonoskolb/
[email protected]
xcodegen
ৄͪ͘͜͠Β • SwiftCLIπʔϧΛMintΛΘͣSwiftPMͰཧ͢Δ - ίωώτ ։ൃऀϒϩά-
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ