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
Melos x Pub Workspaces で 沢山のアプリとパッケージを管理するのに 苦労した話
Search
Hayami Shuhei
April 10, 2025
Programming
1
48
Melos x Pub Workspaces で 沢山のアプリとパッケージを管理するのに 苦労した話
YOUTRUST x Omiai Flutter LT会
Hayami Shuhei
April 10, 2025
Tweet
Share
More Decks by Hayami Shuhei
See All by Hayami Shuhei
Claude Agent SDK を使ってみよう
hyshu
0
320
Flutterと Vibe Coding で個人開発!
hyshu
1
310
BLoCパターンとflutter_bloc
hyshu
0
100
Jasprが凄い話
hyshu
0
340
CanvasKitの描画の仕組みを調べてみる
hyshu
0
160
Other Decks in Programming
See All in Programming
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
170
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
830
CSC305 Lecture 05
javiergs
PRO
0
210
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
190
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.7k
CSC305 Lecture 08
javiergs
PRO
0
200
Le côté obscur des IA génératives
pascallemerrer
0
150
Advance Your Career with Open Source
ivargrimstad
0
540
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
390
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
460
Devoxx BE - Local Development in the AI Era
kdubois
0
130
オープンソースソフトウェアへの解像度🔬
utam0k
15
2.9k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Invisible Side of Design
smashingmag
302
51k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Designing for Performance
lara
610
69k
A Tale of Four Properties
chriscoyier
161
23k
Typedesign – Prime Four
hannesfritz
42
2.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Facilitating Awesome Meetings
lara
56
6.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
YOUTRUST x Omiai Flutter LTձ 2025/04/11 aq (Hayami Shuhei) Melos
x Pub Workspaces Ͱ ࢁͷΞϓϦͱύοέʔδΛཧ͢Δͷʹ ۤ࿑ͨ͠
എܠ • ݱࡏ6ຊͷΞϓϦΛެ։த • ͝ͱʹύοέʔδ͚ • αʔόʔଆD a rt •
ύοέʔδ100ݸҎ্ʹ વdependenciesͷखಈཧແཧ
എܠ • ͦ͜Ͱɺ1ͭͷMelosͰશͯͷdependenciesͷόʔδ ϣϯΛ·ͱΊͯཧ • rpsύοέʔδShellεΫϦϓτͱΈ߹Θͤɺ Θ͟Θ͟ݸผͷΞϓϦʹҠಈ͠ͳͯ͘ f lutter run
Ұׅ git st a tus & commit & push ͕ग़དྷΔ։ൃମ੍ʹ
• ͦΜͳதɺD a rt 3.6.0Ͱ Pub Worksp a ces ͕ొ͠ɺ
Melos 7.0.0-dev ͰରԠ͞ΕΔΑ͏ʹʢࠓͷ1݄ͷʣ • 100ݸҎ্ͷpubspec.lockͱ pubspec_overrides.y a ml ͕ Ұͭͷpubspec.lockʹͳΓ melos bootstr a p ߴԽ • ૣಋೖͯ͠ΈΔ͜ͱʹ
None
ͦͷ݁Ռ… શͯͷΞϓϦͱύοέʔδͷґଘ͕ؔҰͭͷ pubspec.lockʹʂ વ͜ͷ··ΞϓϦΛϦϦʔε͢Δͱɺ શͯͷΞϓϦʹશͯͷίʔυؚ͕·ΕΔΑ͏ʹͳͬͯ͠·͏…
ͦ͜ͰΞϓϦ͝ͱʹ Pub Worksp a ces Λઃஔͯ͠ΈΔ - pubspec.yaml (Melos &
Pub Workspaces) - appA/ - pubspec.yaml (Pub Workspaces) - (directories per package) - pubspec.yaml - appB/ - pubspec.yaml (Pub Workspaces) - (directories per package) - pubspec.yaml Ճ Ճ
- pubspec.yaml (Melos & Pub Workspaces) - pubspec.lock - appA/
- pubspec.yaml (Pub Workspaces) - (directories per package) - pubspec.yaml - appB/ - pubspec.yaml (Pub Workspaces) - (directories per package) - pubspec.yaml melos bootstr a p ࣮ߦ࣌
- pubspec.yaml (Melos & Pub Workspaces) - appA/ - pubspec.yaml
(Pub Workspaces) - pubspec.lock - (directories per package) - pubspec.yaml - appB/ - pubspec.yaml (Pub Workspaces) - (directories per package) - pubspec.yaml appA Ͱ f lutter run ࣮ߦ࣌
ʮ͜Ε৽͍͠։ൃମݧʯͱɺ ࣌ a qͷςϯγϣϯ࠷ߴை͕ͩͬͨ…
ͳΜͱ D a rt 3.6.1 Ͱ͜ͷΓํΤϥʔ͕ग़ΔΑ͏ʹ Θ͔ͣޙͷग़དྷࣄͰ͋ͬͨ
• ͜ͷΤϥʔॲཧ͕Ճ͞Εͨཧ༝ΛIssue͔ΒௐͯΈΔͱɺ ґଘؔղܾͷෆ۩߹ճආ͕తͩͬͨ • melos bootstr a p όʔδϣϯ౷Ұ͢Δ͚ͩͳͷͰେৎ https://github.com/d
a rt-l a ng/pub/pull/4446 https://d a rt.dev/tools/pub/worksp a ces#str a y- f iles
pubϦϙδτϦʔΛfork͠ɺΤϥʔϋϯυϦϯάΛίϝϯτΞτ melos༻pubspec.y a mlͱಉ͡֊ʹΫϩʔϯ͠ɺ d a rt run pub/bin/pub.d a
rt run melos Ͱ࣮ߦՄೳʹ͢Δ
melosͰ d a rt pub ͕ΘΕ͍ͯΔͷͰforkͯ͠ d a rt run
pub/bin/pub.d a rt ʹஔ dev_dependenciesʹՃ͠ (p a th: p a ck a ges/melos) rpsʹొͯ͠ rps melos <໋ྩ> ͰݺΔΑ͏ʹͨ͠
pubspec.y a mlʹҎԼͷઃఆΛՃ (rps d a rt pub glob a
l a ctiv a te)
ཧͷMelos͕ੜ • rps melos bs ͰશύοέʔδͷόʔδϣϯΛ౷Ұ • ͍ͭͰʹෆཁͳpubspec.lockͱ.d a rt_toolsআͯ͘͠ΕΔ
• forkͨ͠pubͱmelosmelosίϚϯυͰͷΈ༻͢ΔͷͰɺ f lutterd a rtͷϏϧυʹӨڹΛ༩͑ͳ͍ • (ࣗݾͰ͓ئ͍͍ͨ͠·͢)
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ X: @aqhayami GitHub: @hyshu ↑ forkͨ͠pubͱmelos͕ ɹ͋ΔͷͰࢼ͍ͨ͠ํੋඇ