2020-05-19 04:14:01 +07:00
|
|
|
import com.unciv.build.BuildConfig.gdxVersion
|
Multiplayer v2: networking stack, dependencies & API definition (#9589)
* Added new ktor dependency for developing multiplayer API v2
* Added the api package, including endpoint implementations, cookie helpers, serializers and structs
* Fixed a bunch of problems related to error handling
* Fixed some API incompatibilities, added getFriends() method
Rename the Api class to ApiV2Wrapper, added a chat room screen
Replaced logging dependency, renamed the endpoint implementations
* Dropped the extra logger to remove dependencies, added the APIv2 class
* Restructured the project to make ApiV2 class the center
* Improved chat handling, added server game detail caching
Added a generic HTTP request wrapper that can retry requests easily
Added a default handler to retry requests after session refreshing
* Updated the API structs based on the new OpenAPI specifications
Switched endpoint implementations to use the new 'request', updated WebSocket structs
* Updated the auth helper, added the UncivNetworkException
Fixed some more issues due to refactoring APIv2 handler
Fixed some issues and some minor incompatibilities with the new API
* Implemented the LobbyBrowserTable, added missing API endpoint
Fixed login and auth issues in the main menu screen
* Added new WebSocket structs for handling invites and friends
Updated the API reference implementation
* Added GET cache, allowed all WS messages to be Events, added missing endpoints
Added func to dispose and refresh OnlineMultiplayer, only show set username for APIv2
* Reworked the ApiV2 class to improve WebSocket handling for every login
Added small game fetch, fixed lobby start, some smaller fixes
* Change the user ID after logging in to fix later in-game issues
Attention: Afterwards, there is restoration of the
previous player ID. Therefore, it won't be possible to
revert back to APIv0 or APIv1 behavior easily (i.e., without
saving the player ID before logging in the first time).
Added serializer class for WebSocket's FriendshipEvent enum
Fixed chat room access and cancelling friendships
* Fixed WebSocket re-connecting, outsourced configs
Updated the RegisterLoginPopup to ask if the user wants to use the new servers
Implemented a self-contained API version check with side-effects
Fixed various problems with WebSocket connections
Don't show kick button for lobby owner, handle network issues during login
* Added English translations for ApiStatusCode, fixed broken APIv1 games for uncivserver.xyz
Fixed subpaths in baseUrl, added server settings button
* Added WS-based Android turn checker, added a new event channel, fixed APIWrapper
Added a logout hook, implemented ensureConnectedWebSocket
Merge branch 'master' into dev
* Throttle auto-reconnect for WS on Android in background, added reload notice for your turn popup
Implemented real pinging with awaiting responses, fixed ping-related problems
* Adapted new getAllChats API, added outstanding friend request list, improved styling
* Added the ApiVersion enum and the ApiV2 storage emulator
* Updated the APIv2 file storage emulator
* Replaced all wildcard imports with named imports
2023-06-18 22:17:59 +07:00
|
|
|
import com.unciv.build.BuildConfig.ktorVersion
|
2020-05-19 04:14:01 +07:00
|
|
|
import com.unciv.build.BuildConfig.roboVMVersion
|
|
|
|
|
2021-08-20 20:02:44 +07:00
|
|
|
|
|
|
|
// You'll still get kotlin-reflect-1.3.70.jar in your classpath, but will no longer be used
|
|
|
|
configurations.all { resolutionStrategy {
|
2021-09-05 04:28:21 +07:00
|
|
|
force("org.jetbrains.kotlin:kotlin-reflect:${com.unciv.build.BuildConfig.kotlinVersion}")
|
2021-08-20 20:02:44 +07:00
|
|
|
} }
|
|
|
|
|
|
|
|
|
2020-05-19 04:14:01 +07:00
|
|
|
buildscript {
|
|
|
|
repositories {
|
|
|
|
// Chinese mirrors for quicker loading for chinese devs - uncomment if you're chinese
|
2022-08-29 11:34:49 +07:00
|
|
|
// maven{ url = uri("https://maven.aliyun.com/repository/central") }
|
2021-03-04 23:56:05 +07:00
|
|
|
// maven{ url = uri("https://maven.aliyun.com/repository/google") }
|
|
|
|
// maven{ url = uri("https://maven.aliyun.com/repository/gradle-plugin") }
|
2020-05-19 04:14:01 +07:00
|
|
|
mavenCentral()
|
2022-05-13 19:16:54 +07:00
|
|
|
google() // needed for com.android.tools.build:gradle
|
2020-05-19 04:14:01 +07:00
|
|
|
maven { url = uri("https://oss.sonatype.org/content/repositories/snapshots/") }
|
2021-04-20 01:41:47 +07:00
|
|
|
gradlePluginPortal()
|
2020-05-19 04:14:01 +07:00
|
|
|
}
|
|
|
|
dependencies {
|
|
|
|
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${com.unciv.build.BuildConfig.kotlinVersion}")
|
2023-06-11 16:42:36 +07:00
|
|
|
classpath("com.android.tools.build:gradle:7.4.2")
|
2020-05-19 04:14:01 +07:00
|
|
|
classpath("com.mobidevelop.robovm:robovm-gradle-plugin:2.3.1")
|
|
|
|
}
|
|
|
|
}
|
2022-03-28 21:36:42 +07:00
|
|
|
|
Multiplayer v2: networking stack, dependencies & API definition (#9589)
* Added new ktor dependency for developing multiplayer API v2
* Added the api package, including endpoint implementations, cookie helpers, serializers and structs
* Fixed a bunch of problems related to error handling
* Fixed some API incompatibilities, added getFriends() method
Rename the Api class to ApiV2Wrapper, added a chat room screen
Replaced logging dependency, renamed the endpoint implementations
* Dropped the extra logger to remove dependencies, added the APIv2 class
* Restructured the project to make ApiV2 class the center
* Improved chat handling, added server game detail caching
Added a generic HTTP request wrapper that can retry requests easily
Added a default handler to retry requests after session refreshing
* Updated the API structs based on the new OpenAPI specifications
Switched endpoint implementations to use the new 'request', updated WebSocket structs
* Updated the auth helper, added the UncivNetworkException
Fixed some more issues due to refactoring APIv2 handler
Fixed some issues and some minor incompatibilities with the new API
* Implemented the LobbyBrowserTable, added missing API endpoint
Fixed login and auth issues in the main menu screen
* Added new WebSocket structs for handling invites and friends
Updated the API reference implementation
* Added GET cache, allowed all WS messages to be Events, added missing endpoints
Added func to dispose and refresh OnlineMultiplayer, only show set username for APIv2
* Reworked the ApiV2 class to improve WebSocket handling for every login
Added small game fetch, fixed lobby start, some smaller fixes
* Change the user ID after logging in to fix later in-game issues
Attention: Afterwards, there is restoration of the
previous player ID. Therefore, it won't be possible to
revert back to APIv0 or APIv1 behavior easily (i.e., without
saving the player ID before logging in the first time).
Added serializer class for WebSocket's FriendshipEvent enum
Fixed chat room access and cancelling friendships
* Fixed WebSocket re-connecting, outsourced configs
Updated the RegisterLoginPopup to ask if the user wants to use the new servers
Implemented a self-contained API version check with side-effects
Fixed various problems with WebSocket connections
Don't show kick button for lobby owner, handle network issues during login
* Added English translations for ApiStatusCode, fixed broken APIv1 games for uncivserver.xyz
Fixed subpaths in baseUrl, added server settings button
* Added WS-based Android turn checker, added a new event channel, fixed APIWrapper
Added a logout hook, implemented ensureConnectedWebSocket
Merge branch 'master' into dev
* Throttle auto-reconnect for WS on Android in background, added reload notice for your turn popup
Implemented real pinging with awaiting responses, fixed ping-related problems
* Adapted new getAllChats API, added outstanding friend request list, improved styling
* Added the ApiVersion enum and the ApiV2 storage emulator
* Updated the APIv2 file storage emulator
* Replaced all wildcard imports with named imports
2023-06-18 22:17:59 +07:00
|
|
|
// Fixes the error "Please initialize at least one Kotlin target in 'Unciv (:)'"
|
|
|
|
kotlin {
|
|
|
|
jvm()
|
|
|
|
}
|
|
|
|
|
|
|
|
// Plugins used for serialization of JSON for networking
|
|
|
|
plugins {
|
|
|
|
id("io.gitlab.arturbosch.detekt").version("1.23.0-RC3")
|
2023-09-06 16:05:07 +07:00
|
|
|
kotlin("multiplatform") version com.unciv.build.BuildConfig.kotlinVersion
|
|
|
|
kotlin("plugin.serialization") version com.unciv.build.BuildConfig.kotlinVersion
|
Multiplayer v2: networking stack, dependencies & API definition (#9589)
* Added new ktor dependency for developing multiplayer API v2
* Added the api package, including endpoint implementations, cookie helpers, serializers and structs
* Fixed a bunch of problems related to error handling
* Fixed some API incompatibilities, added getFriends() method
Rename the Api class to ApiV2Wrapper, added a chat room screen
Replaced logging dependency, renamed the endpoint implementations
* Dropped the extra logger to remove dependencies, added the APIv2 class
* Restructured the project to make ApiV2 class the center
* Improved chat handling, added server game detail caching
Added a generic HTTP request wrapper that can retry requests easily
Added a default handler to retry requests after session refreshing
* Updated the API structs based on the new OpenAPI specifications
Switched endpoint implementations to use the new 'request', updated WebSocket structs
* Updated the auth helper, added the UncivNetworkException
Fixed some more issues due to refactoring APIv2 handler
Fixed some issues and some minor incompatibilities with the new API
* Implemented the LobbyBrowserTable, added missing API endpoint
Fixed login and auth issues in the main menu screen
* Added new WebSocket structs for handling invites and friends
Updated the API reference implementation
* Added GET cache, allowed all WS messages to be Events, added missing endpoints
Added func to dispose and refresh OnlineMultiplayer, only show set username for APIv2
* Reworked the ApiV2 class to improve WebSocket handling for every login
Added small game fetch, fixed lobby start, some smaller fixes
* Change the user ID after logging in to fix later in-game issues
Attention: Afterwards, there is restoration of the
previous player ID. Therefore, it won't be possible to
revert back to APIv0 or APIv1 behavior easily (i.e., without
saving the player ID before logging in the first time).
Added serializer class for WebSocket's FriendshipEvent enum
Fixed chat room access and cancelling friendships
* Fixed WebSocket re-connecting, outsourced configs
Updated the RegisterLoginPopup to ask if the user wants to use the new servers
Implemented a self-contained API version check with side-effects
Fixed various problems with WebSocket connections
Don't show kick button for lobby owner, handle network issues during login
* Added English translations for ApiStatusCode, fixed broken APIv1 games for uncivserver.xyz
Fixed subpaths in baseUrl, added server settings button
* Added WS-based Android turn checker, added a new event channel, fixed APIWrapper
Added a logout hook, implemented ensureConnectedWebSocket
Merge branch 'master' into dev
* Throttle auto-reconnect for WS on Android in background, added reload notice for your turn popup
Implemented real pinging with awaiting responses, fixed ping-related problems
* Adapted new getAllChats API, added outstanding friend request list, improved styling
* Added the ApiVersion enum and the ApiV2 storage emulator
* Updated the APIv2 file storage emulator
* Replaced all wildcard imports with named imports
2023-06-18 22:17:59 +07:00
|
|
|
}
|
|
|
|
|
2020-05-19 04:14:01 +07:00
|
|
|
allprojects {
|
2022-03-28 21:36:42 +07:00
|
|
|
apply(plugin = "eclipse")
|
|
|
|
apply(plugin = "idea")
|
2020-05-19 04:14:01 +07:00
|
|
|
|
|
|
|
|
|
|
|
version = "1.0.1"
|
|
|
|
|
|
|
|
repositories {
|
|
|
|
// Chinese mirrors for quicker loading for chinese devs - uncomment if you're chinese
|
2022-08-29 11:34:49 +07:00
|
|
|
// maven{ url = uri("https://maven.aliyun.com/repository/central") }
|
2020-09-06 00:38:33 +07:00
|
|
|
// maven{ url = uri("https://maven.aliyun.com/repository/google") }
|
2020-05-19 04:14:01 +07:00
|
|
|
mavenCentral()
|
2022-05-13 19:16:54 +07:00
|
|
|
google()
|
2020-05-19 04:14:01 +07:00
|
|
|
maven { url = uri("https://oss.sonatype.org/content/repositories/snapshots/") }
|
|
|
|
maven { url = uri("https://oss.sonatype.org/content/repositories/releases/") }
|
2022-03-28 21:36:42 +07:00
|
|
|
maven { url = uri("https://jitpack.io") } // for java-discord-rpc
|
2020-05-19 04:14:01 +07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
project(":desktop") {
|
|
|
|
apply(plugin = "kotlin")
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
"implementation"(project(":core"))
|
2021-11-03 05:15:47 +07:00
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-backend-lwjgl3:${gdxVersion}")
|
2020-05-19 04:14:01 +07:00
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop")
|
|
|
|
|
2021-11-03 05:15:47 +07:00
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-tools:$gdxVersion") {
|
|
|
|
exclude("com.badlogicgames.gdx", "gdx-backend-lwjgl")
|
|
|
|
}
|
2020-05-19 04:14:01 +07:00
|
|
|
|
|
|
|
"implementation"("com.github.MinnDevelopment:java-discord-rpc:v2.0.1")
|
2022-08-29 11:34:49 +07:00
|
|
|
|
2022-05-06 12:42:30 +07:00
|
|
|
"implementation"("net.java.dev.jna:jna:5.11.0")
|
|
|
|
"implementation"("net.java.dev.jna:jna-platform:5.11.0")
|
2022-05-09 01:22:43 +07:00
|
|
|
}
|
|
|
|
}
|
2022-05-06 12:42:30 +07:00
|
|
|
|
2022-05-09 01:22:43 +07:00
|
|
|
// For server-side
|
|
|
|
project(":server") {
|
|
|
|
apply(plugin = "kotlin")
|
Unciv server (#6384)
* Background implementation for Unciv server with ktor.
Server ip in settings, able to copy your own ip and copy ip from clipboard for easy sharing, created stub for the client-server data transfer. No actual data storage or server implementation.
* Unciv server round 2 - implementing crud for files and it works!
metadata seems to only be in use for mutex, which is currently unused
That's all for today
* When starting a new multiplayer game the files are correctly saved in the server, and the server can return the files, but the function in the game to retrieve the game info is non-blocking so it doesn't work. Still, progress!
* Changed the Gdx http to basic Java http, as used for Dropbox, and now everything works!!!!
* Documentation for running and using the server
* Better texts, translations, etc
* Trog is right this should be a PUT not POST
2022-03-22 02:05:02 +07:00
|
|
|
|
2022-05-09 01:22:43 +07:00
|
|
|
dependencies {
|
|
|
|
// For server-side
|
Unciv server (#6384)
* Background implementation for Unciv server with ktor.
Server ip in settings, able to copy your own ip and copy ip from clipboard for easy sharing, created stub for the client-server data transfer. No actual data storage or server implementation.
* Unciv server round 2 - implementing crud for files and it works!
metadata seems to only be in use for mutex, which is currently unused
That's all for today
* When starting a new multiplayer game the files are correctly saved in the server, and the server can return the files, but the function in the game to retrieve the game info is non-blocking so it doesn't work. Still, progress!
* Changed the Gdx http to basic Java http, as used for Dropbox, and now everything works!!!!
* Documentation for running and using the server
* Better texts, translations, etc
* Trog is right this should be a PUT not POST
2022-03-22 02:05:02 +07:00
|
|
|
"implementation"("io.ktor:ktor-server-core:1.6.8")
|
|
|
|
"implementation"("io.ktor:ktor-server-netty:1.6.8")
|
|
|
|
"implementation"("ch.qos.logback:logback-classic:1.2.5")
|
2022-03-28 21:36:42 +07:00
|
|
|
"implementation"("com.github.ajalt.clikt:clikt:3.4.0")
|
2020-05-19 04:14:01 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
project(":android") {
|
|
|
|
apply(plugin = "com.android.application")
|
|
|
|
apply(plugin = "kotlin-android")
|
|
|
|
|
|
|
|
val natives by configurations.creating
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
"implementation"(project(":core"))
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-backend-android:$gdxVersion")
|
2023-03-08 21:39:32 +07:00
|
|
|
"implementation"("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4")
|
2020-05-19 04:14:01 +07:00
|
|
|
natives("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a")
|
|
|
|
natives("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a")
|
|
|
|
natives("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86")
|
|
|
|
natives("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
project(":ios") {
|
|
|
|
apply(plugin = "kotlin")
|
|
|
|
apply(plugin = "robovm")
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
"implementation"(project(":core"))
|
|
|
|
"implementation"("com.mobidevelop.robovm:robovm-rt:$roboVMVersion")
|
|
|
|
"implementation"("com.mobidevelop.robovm:robovm-cocoatouch:$roboVMVersion")
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion")
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
project(":core") {
|
|
|
|
apply(plugin = "kotlin")
|
Multiplayer v2: networking stack, dependencies & API definition (#9589)
* Added new ktor dependency for developing multiplayer API v2
* Added the api package, including endpoint implementations, cookie helpers, serializers and structs
* Fixed a bunch of problems related to error handling
* Fixed some API incompatibilities, added getFriends() method
Rename the Api class to ApiV2Wrapper, added a chat room screen
Replaced logging dependency, renamed the endpoint implementations
* Dropped the extra logger to remove dependencies, added the APIv2 class
* Restructured the project to make ApiV2 class the center
* Improved chat handling, added server game detail caching
Added a generic HTTP request wrapper that can retry requests easily
Added a default handler to retry requests after session refreshing
* Updated the API structs based on the new OpenAPI specifications
Switched endpoint implementations to use the new 'request', updated WebSocket structs
* Updated the auth helper, added the UncivNetworkException
Fixed some more issues due to refactoring APIv2 handler
Fixed some issues and some minor incompatibilities with the new API
* Implemented the LobbyBrowserTable, added missing API endpoint
Fixed login and auth issues in the main menu screen
* Added new WebSocket structs for handling invites and friends
Updated the API reference implementation
* Added GET cache, allowed all WS messages to be Events, added missing endpoints
Added func to dispose and refresh OnlineMultiplayer, only show set username for APIv2
* Reworked the ApiV2 class to improve WebSocket handling for every login
Added small game fetch, fixed lobby start, some smaller fixes
* Change the user ID after logging in to fix later in-game issues
Attention: Afterwards, there is restoration of the
previous player ID. Therefore, it won't be possible to
revert back to APIv0 or APIv1 behavior easily (i.e., without
saving the player ID before logging in the first time).
Added serializer class for WebSocket's FriendshipEvent enum
Fixed chat room access and cancelling friendships
* Fixed WebSocket re-connecting, outsourced configs
Updated the RegisterLoginPopup to ask if the user wants to use the new servers
Implemented a self-contained API version check with side-effects
Fixed various problems with WebSocket connections
Don't show kick button for lobby owner, handle network issues during login
* Added English translations for ApiStatusCode, fixed broken APIv1 games for uncivserver.xyz
Fixed subpaths in baseUrl, added server settings button
* Added WS-based Android turn checker, added a new event channel, fixed APIWrapper
Added a logout hook, implemented ensureConnectedWebSocket
Merge branch 'master' into dev
* Throttle auto-reconnect for WS on Android in background, added reload notice for your turn popup
Implemented real pinging with awaiting responses, fixed ping-related problems
* Adapted new getAllChats API, added outstanding friend request list, improved styling
* Added the ApiVersion enum and the ApiV2 storage emulator
* Updated the APIv2 file storage emulator
* Replaced all wildcard imports with named imports
2023-06-18 22:17:59 +07:00
|
|
|
// Serialization features (especially JSON)
|
|
|
|
apply(plugin = "kotlinx-serialization")
|
2020-05-19 04:14:01 +07:00
|
|
|
|
|
|
|
dependencies {
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx:$gdxVersion")
|
2023-03-08 21:39:32 +07:00
|
|
|
"implementation"("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
|
2022-05-26 03:22:58 +07:00
|
|
|
"implementation"("org.jetbrains.kotlin:kotlin-reflect:${com.unciv.build.BuildConfig.kotlinVersion}")
|
2023-06-04 03:04:24 +07:00
|
|
|
|
Multiplayer v2: networking stack, dependencies & API definition (#9589)
* Added new ktor dependency for developing multiplayer API v2
* Added the api package, including endpoint implementations, cookie helpers, serializers and structs
* Fixed a bunch of problems related to error handling
* Fixed some API incompatibilities, added getFriends() method
Rename the Api class to ApiV2Wrapper, added a chat room screen
Replaced logging dependency, renamed the endpoint implementations
* Dropped the extra logger to remove dependencies, added the APIv2 class
* Restructured the project to make ApiV2 class the center
* Improved chat handling, added server game detail caching
Added a generic HTTP request wrapper that can retry requests easily
Added a default handler to retry requests after session refreshing
* Updated the API structs based on the new OpenAPI specifications
Switched endpoint implementations to use the new 'request', updated WebSocket structs
* Updated the auth helper, added the UncivNetworkException
Fixed some more issues due to refactoring APIv2 handler
Fixed some issues and some minor incompatibilities with the new API
* Implemented the LobbyBrowserTable, added missing API endpoint
Fixed login and auth issues in the main menu screen
* Added new WebSocket structs for handling invites and friends
Updated the API reference implementation
* Added GET cache, allowed all WS messages to be Events, added missing endpoints
Added func to dispose and refresh OnlineMultiplayer, only show set username for APIv2
* Reworked the ApiV2 class to improve WebSocket handling for every login
Added small game fetch, fixed lobby start, some smaller fixes
* Change the user ID after logging in to fix later in-game issues
Attention: Afterwards, there is restoration of the
previous player ID. Therefore, it won't be possible to
revert back to APIv0 or APIv1 behavior easily (i.e., without
saving the player ID before logging in the first time).
Added serializer class for WebSocket's FriendshipEvent enum
Fixed chat room access and cancelling friendships
* Fixed WebSocket re-connecting, outsourced configs
Updated the RegisterLoginPopup to ask if the user wants to use the new servers
Implemented a self-contained API version check with side-effects
Fixed various problems with WebSocket connections
Don't show kick button for lobby owner, handle network issues during login
* Added English translations for ApiStatusCode, fixed broken APIv1 games for uncivserver.xyz
Fixed subpaths in baseUrl, added server settings button
* Added WS-based Android turn checker, added a new event channel, fixed APIWrapper
Added a logout hook, implemented ensureConnectedWebSocket
Merge branch 'master' into dev
* Throttle auto-reconnect for WS on Android in background, added reload notice for your turn popup
Implemented real pinging with awaiting responses, fixed ping-related problems
* Adapted new getAllChats API, added outstanding friend request list, improved styling
* Added the ApiVersion enum and the ApiV2 storage emulator
* Updated the APIv2 file storage emulator
* Replaced all wildcard imports with named imports
2023-06-18 22:17:59 +07:00
|
|
|
// Ktor core
|
|
|
|
"implementation"("io.ktor:ktor-client-core:$ktorVersion")
|
|
|
|
// CIO engine
|
|
|
|
"implementation"("io.ktor:ktor-client-cio:$ktorVersion")
|
|
|
|
// WebSocket support
|
|
|
|
"implementation"("io.ktor:ktor-client-websockets:$ktorVersion")
|
|
|
|
// Gzip transport encoding
|
|
|
|
"implementation"("io.ktor:ktor-client-encoding:$ktorVersion")
|
|
|
|
// Content negotiation
|
|
|
|
"implementation"("io.ktor:ktor-client-content-negotiation:$ktorVersion")
|
|
|
|
// JSON serialization and de-serialization
|
|
|
|
"implementation"("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion")
|
2020-05-19 04:14:01 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Taken from https://github.com/TomGrill/gdx-testing
|
|
|
|
project(":tests") {
|
|
|
|
apply(plugin = "java")
|
|
|
|
apply(plugin = "kotlin")
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
"implementation"(project(":core"))
|
|
|
|
|
2023-03-08 21:39:32 +07:00
|
|
|
"implementation"("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
|
2022-07-14 01:58:43 +07:00
|
|
|
|
2023-03-08 21:39:32 +07:00
|
|
|
"implementation"("junit:junit:4.13.2")
|
|
|
|
"implementation"("org.mockito:mockito-core:5.1.1")
|
2020-05-19 04:14:01 +07:00
|
|
|
|
2022-07-14 01:58:43 +07:00
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-backend-lwjgl3:${gdxVersion}")
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop")
|
2020-05-19 04:14:01 +07:00
|
|
|
"implementation"("com.badlogicgames.gdx:gdx-backend-headless:$gdxVersion")
|
|
|
|
"implementation"("com.badlogicgames.gdx:gdx:$gdxVersion")
|
|
|
|
|
2023-03-08 21:39:32 +07:00
|
|
|
"testImplementation"("junit:junit:4.13.2")
|
|
|
|
"testImplementation"("org.mockito:mockito-core:5.1.1")
|
2020-05-19 04:14:01 +07:00
|
|
|
"testImplementation"("io.mockk:mockk:1.9.3")
|
|
|
|
|
|
|
|
"testImplementation"("com.badlogicgames.gdx:gdx-backend-headless:$gdxVersion")
|
|
|
|
"testImplementation"("com.badlogicgames.gdx:gdx:$gdxVersion")
|
|
|
|
"testImplementation"("com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop")
|
|
|
|
}
|
|
|
|
}
|
2020-09-06 00:38:33 +07:00
|
|
|
}
|