DroidKaigi.onCompletion { 2023@Online } (https://yumemi.connpass.com/event/289949/ ) の資料
CI ͰϥΠϒϥϦͷόʔδϣϯͷมԽΛϨϙʔτ͢Δ2023.9.25 DroidKaigi.onCompletion { 2023@Online }Hiroyuki Kusu ( @hkusu_ )
View Slide
About me
ࠓͳ͢͜ͱ
ϥΠϒϥϦͷґଘؔͷ֬ೝʢGradle dependencies λεΫʣ
ಉҰͷϥΠϒϥϦʹ͓͍ͯෳόʔδϣϯͷڞଘͰ͖ͳ͍ɻґଘؔͷதͰ࠷৽͍͠όʔδϣϯ͕ద༻͞ΕΔ
ʢྫʣԿ͔ͷϥΠϒϥϦͷόʔδϣϯΛมߋͨ͠߹..มߋͨ͠ϥΠϒϥϦ͕ lifecycle-runtime ͷ v2.3.0ʹґଘ͢ΔΑ͏ʹͳͬͨͷͰͪ͜Β v2.3.0 ͕ΘΕΔ
ڍಈ͕มΘͬͯ͠·͏Մೳੑ..
ϥΠϒϥϦͷόʔδϣϯ͕มΘΕɺґଘ͢ΔϥΠϒϥϦͷछྨͦͷόʔδϣϯมΘͬͯ͘ΔՄೳੑ
ಉҰͷϥΠϒϥϦ࠷৽όʔδϣϯἧ͑ΒΕΔ͜Εͷ܁Γฦ͠
• ͻͱͭͷϥΠϒϥϦͷόʔδϣϯͷมߋ͕ɺޒ݄Ӎతʹٴ• ࢥΘ͵ϥΠϒϥϦͷόʔδϣϯΞοϓڍಈͷมԽΛى͜͢Մೳੑ• Renovate Dependabot ͕ࣗมߋͨ͠ϥΠϒϥϦͷ͜ͱ͔͠ڭ͑ͯ͘Εͳ͍• ϓϧϦΫ͕ͨͩཷ·͍ͬͯ͘..͍͠
Google ͷͷϝδϟʔͳϥΠϒϥϦ·ͩΑ͍ͱͯ͠ɺ3rd party ͷ• ࠂܥͷ SDK• ܭଌܥͷ SDK• Android ϞδϡʔϧܥͷϥΠϒϥϦ͜ΕΒͷϥΠϒϥϦ͕ AppCompat ܥ Kotlin ͷόʔδϣϯΛҾ্͖͛ͯ͠·͏͜ͱଟʑ..
ͬͨํ͕Α͍͜ͱ → ґଘؔͷࠩͷ֬ೝ• ϓϧϦΫલޙͷ Gradle dependencies λεΫͷґଘؔͷπϦʔΛɺखݩͰൺֱ͢Δ• ࠩΛݟ͘͢͢Δπʔϧ• Dependency Tree Diff• https://github.com/JakeWharton/dependency-tree-diff• dependency-diff-tldr• https://github.com/careem/dependency-diff-tldr
CI ͰࣗಈԽʢGitHub Actionsʣ• DroidKaigi 2023 ΞϓϦͷࢀߟίʔυ• https://github.com/DroidKaigi/conference-app-2023/blob/main/scripts/dependency_diff.sh• Dependency Tree Diff• https://github.com/usefulness/dependency-tree-diff-action• Gradle Dependency Diff Report• https://github.com/yumemi-inc/gradle-dependency-diff-report
Gradle Dependency Diff Reportʢ࡞ʣhttps://github.com/yumemi-inc/gradle-dependency-diff-report
ࠓޙͰ͖ΔͱΑͦ͞͏ͳ͜ͱ• ϥΠϒϥϦͷόʔδϣϯมߋ࣌ʹɺCI ͰΞϓϦͷىಈ֬ೝˍओཁͳը໘ભҠͷςετ࣮ߦ͢Δ• ґଘؔҎ֎ͷͷʹ͍ͭͯϓϧϦΫલޙͰൺֱ• ΞϓϦͷαΠζ• permission• feature
Thank you !@hkusu_ฐࣾ Android ΤϯδχΞΛ ઈࢍืूத Ͱ͢ʂ