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
47
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
Flutterと Vibe Coding で個人開発!
hyshu
1
290
BLoCパターンとflutter_bloc
hyshu
0
100
Jasprが凄い話
hyshu
0
330
CanvasKitの描画の仕組みを調べてみる
hyshu
0
140
Other Decks in Programming
See All in Programming
Flutter with Dart MCP: All You Need - 박제창 2025 I/O Extended Busan
itsmedreamwalker
0
150
速いWebフレームワークを作る
yusukebe
5
1.7k
今から始めるClaude Code入門〜AIコーディングエージェントの歴史と導入〜
nokomoro3
0
180
Azure SRE Agentで運用は楽になるのか?
kkamegawa
0
2.3k
AWS発のAIエディタKiroを使ってみた
iriikeita
1
190
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
120
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
860
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
230
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
160
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
180
Rancher と Terraform
fufuhu
2
550
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Visualization
eitanlees
148
16k
GraphQLとの向き合い方2022年版
quramy
49
14k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Raft: Consensus for Rubyists
vanstee
140
7.1k
What's in a price? How to price your products and services
michaelherold
246
12k
BBQ
matthewcrist
89
9.8k
Scaling GitHub
holman
463
140k
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͕ ɹ͋ΔͷͰࢼ͍ͨ͠ํੋඇ