plugins Ġ{ ĊĠĠĠ Ġval Ġkotlin Version Ġ= Ġ" 1 . 6 . 2 0 " ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġkotlin Version ĊĠĠĠ Ġkotlin (" plugin . serialization ") Ġversion Ġkotlin Version ĊĠĠĠ Ġid (" org . jetbrains . dok ka ") Ġversion Ġ" 1 . 6 . 1 0 " ĊĠĠĠ Ġid (" org . jetbrains . kotlin x . binary - compatibility - validator ") Ġversion Ġ" 0 . 8 . 0 " ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġsigning ĊĠĠĠ Ġid (" io . github . gradle - nexus . publish - plugin ") Ġversion Ġ" 1 . 1 . 0 " ĊĠĠĠ Ġid (" org . h ild an . github . changelog ") Ġversion Ġ" 1 . 1 1 . 1 " Ċ } Ċ Ċ group Ġ= Ġ" org . h ild an . chrome " Ċ description Ġ= Ġ" A ĠKotlin Ġclient Ġfor Ġthe ĠChrome ĠDev Tools ĠProtocol " Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġapi (" org . h ild an . k ross bow : k ross bow - websocket - core : 3 . 3 . 1 ") ĊĠĠĠ Ġimplementation (" org . jetbrains . kotlin x : kotlin x - coroutines - core : 1 . 6 . 1 ") ĊĠĠĠ Ġimplementation (" org . jetbrains . kotlin x : kotlin x - serialization - json : 1 . 3 . 2 ") ĊĊĠĠĠ Ġval Ġk tor Version Ġ= Ġ" 1 . 6 . 8 " ĊĠĠĠ Ġapi (" io . ktor : ktor - client - c io :$ ktor Version ") ĊĠĠĠ Ġapi (" io . ktor : ktor - client - serialization - jvm :$ ktor Version ") ĊĊĠĠĠ Ġtest Implementation ( kotlin (" test ")) ĊĠĠĠ Ġtest Implementation (" org . slf 4 j : slf 4 j - simple : 1 . 7 . 3 6 ") ĊĠĠĠ Ġtest Implementation (" org . test containers : test containers : 1 . 1 6 . 3 ") ĊĠĠĠ Ġtest Implementation (" org . test containers : junit - jupiter : 1 . 1 6 . 3 ") Ċ } Ċ Ċ kotlin Ġ{ ĊĠĠĠ Ġsource Sets . main Ġ{ ĊĠĠĠĠĠĠĠ Ġkotlin . src Dirs ( kotlin . src Dirs Ġ+ Ġfile (" src / main / generated ")) ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġupdate Protocol Definitions Ġby Ġtasks . register ing ( org . h ild an . chrome . devtools . build . Update Protocol Definitions Task :: class ) Ċ Ċ val Ġgenerate Protocol Api Ġby Ġtasks . register ing ( org . h ild an . chrome . devtools . build . Generate Protocol Api Task :: class ) Ċ Ċ tasks Ġ{ ĊĠĠĠ Ġcompile Kotlin Ġ{ ĊĠĠĠĠĠĠĠ Ġkotlin Options . free Compiler Args Ġ+= Ġ"- X opt - in = kotlin . Requires Opt In " ĊĠĠĠĠĠĠĠ Ġdepends On ( generate Protocol Api ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcompile Test Kotlin Ġ{ ĊĠĠĠĠĠĠĠ Ġkotlin Options . free Compiler Args Ġ+= Ġ"- X opt - in = kotlin . Requires Opt In " ĊĠĠĠ Ġ} ĊĠĠĠ Ġtest Ġ{ ĊĠĠĠĠĠĠĠ Ġuse JUnit Platform () ĊĠĠĠĠĠĠĠ Ġtest Logging Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevents (" failed ", Ġ" standard Out ", Ġ" standard Error ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexception Format Ġ= Ġorg . gradle . api . tasks . testing . logging . Test Exception Format . FULL ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Stack Tr aces Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ changelog Ġ{ ĊĠĠĠ Ġfuture Version Tag Ġ= Ġproject . version . toString () ĊĠĠĠ Ġsince Tag Ġ= Ġ" 0 . 5 . 0 " Ċ } Ċ Ċ val Ġsources Jar Ġby Ġtasks . creating ( Jar :: class ) Ġ{ ĊĠĠĠ Ġarchive Classifier . set (" sources ") ĊĠĠĠ Ġfrom ( source Sets . main . get (). all Source ) Ċ } Ċ Ċ val Ġdok ka Javadoc Jar Ġby Ġtasks . creating ( Jar :: class ) Ġ{ ĊĠĠĠ Ġgroup Ġ= ĠJava Base Plugin . DOCUMENT ATION _ GROUP ĊĠĠĠ Ġdescription Ġ= Ġ" As semb les ĠKotlin Ġdocs Ġwith ĠD ok ka Ġinto Ġa ĠJ avadoc Ġjar " ĊĠĠĠ Ġarchive Classifier . set (" javadoc ") ĊĠĠĠ Ġfrom ( tasks . dok ka Javadoc ) Ċ } Ċ Ċ nexus Publishing Ġ{ ĊĠĠĠ Ġpackage Group . set (" org . h ild an ") ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġson atype () ĊĠĠĠ Ġ} Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġpublications Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate < Maven Publication >(" maven ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ( components [" java "]) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġartifact ( sources Jar ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġartifact ( dok ka Javadoc Jar ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgithub User Ġ= Ġfind Property (" github User ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" GITHUB _ USER ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgithub Slug Ġ= Ġ"$ github User /${ root Project . name }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgithub Repo Url Ġ= Ġ" https :// github . com /$ github Slug " ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġpom Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set ( project . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription . set ( project . description ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set ( github Repo Url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicenses Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicense Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set (" The ĠMIT ĠLicense ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set (" https :// opensource . org / licenses / MIT ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdevelopers Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid . set (" j off rey - b ion ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set (" J off rey ĠB ion ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemail . set (" j off rey . b ion @ gmail . com ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsc m Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconnection . set (" scm : git :$ github Repo Url . git ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper Connection . set (" scm : git : git @ github . com :$ github Slug . git ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set ( github Repo Url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ signing Ġ{ ĊĠĠĠ Ġval Ġsigning Key : ĠString ? Ġby Ġproject ĊĠĠĠ Ġval Ġsigning Password : ĠString ? Ġby Ġproject ĊĠĠĠ Ġuse InMemory P gp Keys ( signing Key , Ġsigning Password ) ĊĠĠĠ Ġsign ( publishing . publications [" maven "]) Ċ } Ċ