docs(02): fix auth plan verification blockers
This commit is contained in:
@@ -127,24 +127,29 @@ Output: shared DTO/config files, build dependency wiring, and `docs/authentik-se
|
||||
<files>gradle/libs.versions.toml, composeApp/build.gradle.kts, server/build.gradle.kts</files>
|
||||
<action>
|
||||
In `gradle/libs.versions.toml`, keep existing `ktor = "3.4.1"` unchanged. Add version keys and aliases for:
|
||||
`appauth = "0.11.1"`, `androidx-security-crypto = "1.1.0"`, `multiplatformSettings = "1.3.0"`, `exposed = "0.55.0"`, `hikari = "6.2.1"`, plus `kotlinCocoapods` plugin.
|
||||
`appauth = "0.11.1"`, `appauth-ios = "2.0.0"`, `androidx-security-crypto = "1.1.0"`, `multiplatformSettings = "1.3.0"`, `exposed = "0.55.0"`, `hikari = "6.2.1"`, `testcontainers = "1.21.4"`, plus `kotlinCocoapods` plugin.
|
||||
|
||||
Add libraries: `appauth`, `androidx-security-crypto`, `multiplatform-settings`, `multiplatform-settings-coroutines`, Ktor client core/auth/content-negotiation/logging/okhttp/darwin/cio, `ktor-serializationKotlinxJsonMpp` using `io.ktor:ktor-serialization-kotlinx-json`, Ktor server auth/auth-jwt/call-logging/status-pages, Exposed core/jdbc/java-time, Hikari, `kotlinx-serializationJson`.
|
||||
Add libraries: `appauth`, `androidx-security-crypto`, `multiplatform-settings`, `multiplatform-settings-coroutines`, Ktor client core/auth/content-negotiation/logging/okhttp/darwin/cio, `ktor-serializationKotlinxJsonMpp` using `io.ktor:ktor-serialization-kotlinx-json`, Ktor server auth/auth-jwt/call-logging/status-pages, Exposed core/jdbc/java-time, Hikari, `kotlinx-serializationJson`, and Testcontainers `org.testcontainers:postgresql` + `org.testcontainers:junit-jupiter`.
|
||||
|
||||
In `composeApp/build.gradle.kts`, apply `alias(libs.plugins.kotlinSerialization)` and `alias(libs.plugins.kotlinCocoapods)`. Add common deps for settings, Ktor client, serialization, and platform deps: Android AppAuth + AndroidX Security Crypto + OkHttp, iOS Darwin, JVM CIO. Configure CocoaPods with `podfile = project.file("../iosApp/Podfile")`, framework `baseName = "ComposeApp"`, `isStatic = true`, and `pod("AppAuth") { version = "2.0.0" }`.
|
||||
In `composeApp/build.gradle.kts`, apply `alias(libs.plugins.kotlinSerialization)` and `alias(libs.plugins.kotlinCocoapods)`. Add common deps for settings, Ktor client, serialization, and platform deps: Android AppAuth + AndroidX Security Crypto + OkHttp, iOS Darwin, JVM CIO. Configure CocoaPods with `podfile = project.file("../iosApp/Podfile")`, framework `baseName = "ComposeApp"`, `isStatic = true`, and `pod("AppAuth") { version = libs.versions.appauth.ios.get() }`. Do not put a literal `version = "2.0.0"` in any `*.gradle.kts`; the CocoaPods version must come from the version catalog so `./tools/verify-no-version-literals.sh` can pass.
|
||||
|
||||
In `server/build.gradle.kts`, add server auth/JWT/call logging/status pages, Exposed, Hikari, and serialization deps from catalog. Do not add inline versions in build files.
|
||||
In `server/build.gradle.kts`, add server auth/JWT/call logging/status pages, Exposed, Hikari, serialization deps, and test deps `testImplementation(libs.testcontainers.postgresql)` plus `testImplementation(libs.testcontainers.junit.jupiter)` from catalog. Do not add inline versions in build files.
|
||||
</action>
|
||||
<verify>
|
||||
<automated>./gradlew :composeApp:dependencies --configuration androidMainCompileClasspath :server:dependencies --configuration runtimeClasspath</automated>
|
||||
</verify>
|
||||
<acceptance_criteria>
|
||||
- `grep -q 'ktor = "3.4.1"' gradle/libs.versions.toml`
|
||||
- `grep -q 'appauth-ios = "2.0.0"' gradle/libs.versions.toml`
|
||||
- `grep -q 'androidx-security-crypto' gradle/libs.versions.toml`
|
||||
- `grep -q 'testcontainers = "1.21.4"' gradle/libs.versions.toml`
|
||||
- `grep -q 'pod("AppAuth")' composeApp/build.gradle.kts`
|
||||
- `grep -q 'libs.versions.appauth.ios.get()' composeApp/build.gradle.kts`
|
||||
- `! grep -q 'version = "2.0.0"' composeApp/build.gradle.kts`
|
||||
- `grep -q 'libs.androidx.security.crypto' composeApp/build.gradle.kts`
|
||||
- `grep -q 'libs.ktor.serverAuthJwt' server/build.gradle.kts`
|
||||
- `grep -q 'libs.exposed.jdbc' server/build.gradle.kts`
|
||||
- `grep -q 'libs.testcontainers.postgresql' server/build.gradle.kts`
|
||||
- `./tools/verify-no-version-literals.sh` exits 0
|
||||
</acceptance_criteria>
|
||||
<done>Phase 2 dependencies are cataloged and wired while preserving the pinned Ktor version.</done>
|
||||
|
||||
Reference in New Issue
Block a user