Slide 1

Slide 1 text

CONTRIBUTING TO SWIFT @giginet

Slide 2

Slide 2 text

@giginet • iOS Engineer @ Cookpad • ։ൃج൫΍ͬͯ·͢ • झຯɿήʔϜ։ൃ • Contributor of fasltane • &⌚ͷਓ

Slide 3

Slide 3 text

giginet/Toybox

Slide 4

Slide 4 text

giginet/xcprofile

Slide 5

Slide 5 text

ࠓ೔࿩͢͜ͱ • SwiftʹContributionͯ͠Έ͔ͨͬͨͷͰ ͪΐͬͱࢼͯ͠Έͨ࿩

Slide 6

Slide 6 text

apple/Swift

Slide 7

Slide 7 text

։ൃ؀ڥΛ࡞Δ

Slide 8

Slide 8 text

։ൃ؀ڥ • جຊతʹREADME௨Γʹ΍Ε͹ྑ͍ • Xcode 9betaɺPython 2.7ɺ͍͔ͭ͘ͷґଘ ύοέʔδ͕ඞཁ

Slide 9

Slide 9 text

$ brew install cmake ninja $ mkdir swift-source $ git clone https://github.com/apple/ swift.git $ ./swift/utils/update-checkout —clone $ ./swift/utils/build-script -x

Slide 10

Slide 10 text

Ϗϧυ • ΊͬͪΌ͔͔࣌ؒΔ • Ϗϧυʹ3~4࣌ؒ

Slide 11

Slide 11 text

Xcode Project • -xΦϓγϣϯͰXcodeϓϩδΣΫτ͕ੜ੒͞Ε Δ • build/swift-macosx-x86_64/swift-macosx- x86_64/Swift.xcworkspace

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

ςετΛ࣮ߦ͢Δ • docs/Testing.md $ ./Swift/utils/build-script --test

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

swift-source • update-checkoutsʹΑͬͯෳ਺ͷϦϙδτϦ ͕clone͞ΕΔ

Slide 16

Slide 16 text

swift-source • Swift • swift-corelibs-foundation • swift-corelibs-libdispatch • swift-corelibs-xctest • swift-xcode-playground-support • swift-integration-tests

Slide 17

Slide 17 text

swift-source • Swift • swift-corelibs-foundation • swift-corelibs-libdispatch • swift-corelibs-xctest • swift-xcode-playground-support • swift-integration-tests

Slide 18

Slide 18 text

$ mkdir swift-foundation $ cd swift-foundation $ git clone [email protected]:apple/ swift-corelibs-foundation.git $ git clone [email protected]:apple/ swift-corelibs-xctest.git $ open swift-corelibs-foundation/ Foundation.xcworkspace

Slide 19

Slide 19 text

swift-corelibs-foundation • https://swift.org ͔Β࠷৽ͷtoolchainΛऔಘ • Xcode > Preferences > ComponentsͰઃఆ

Slide 20

Slide 20 text

swift-corelibs-foundation

Slide 21

Slide 21 text

ωλΛ୳͢

Slide 22

Slide 22 text

• 1. issueτϥοΧʔΛݟΔ • 2. FIXME୳͢ • 3. warning௵͢ ωλͷ୳͠ํ

Slide 23

Slide 23 text

Issue TrackerΛݟΔ

Slide 24

Slide 24 text

https://bugs.swift.org/

Slide 25

Slide 25 text

issueͷݟ͚ͭํ • Foundation΍XCTest͸SwiftͰॻ͔Ε͍ͯΔͷ ͰखΛ෇͚΍͍͢ • ίϯύΠϥ΍LLVM͸ݫ͍͠ • ʮContributing to Open Source SwiftʯݟΔ

Slide 26

Slide 26 text

https://news.realm.io/jp/news/tryswift-jesse- squires-contributing-open-source-swift/

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

FIXMEΛ௚͢

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

$ git grep 'FIXME' | wc -l > 3367

Slide 31

Slide 31 text

WARNINGΛ௵͢

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

PRΛૹΔ

Slide 34

Slide 34 text

PRΛૹΔ • CONTRIBUTING GUIDEಡΉ • https://swift.org/contributing • ଞͷPRݟΔ

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

CI • PR͝ͱʹউखʹ͸ճΒͳ͍ • ϨϏϡΞʔ͕ඞཁʹԠͯ͡ճͯ͘͠ΕΔ • 1PRʹ30෼͙Β͍͔͔Δ

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

·ͱΊ • ؀ڥ࡞ͬͯwarning௵͚ͩ͢ͳΒ୭Ͱ΋Ͱ͖Δ • FIXME΋௚͢ͱ͜Ζଟͦ͏ʢ௅ઓதʣ • Ϗϧυ͕ͱʹ͔͘௕ͯ͘ٳ೔͕௵ΕΔ

Slide 41

Slide 41 text

͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠