jessewilson
05/21/2022, 9:31 PMRobert Wijas
05/24/2022, 2:36 PMNativeSqlDriver
to use in memory sqlite database?kevin.cianfarini
05/24/2022, 10:38 PMCharles Prado
05/30/2022, 2:57 PMPaul Woitaschek
06/01/2022, 3:35 PMalec
06/01/2022, 3:37 PMsourceFolders
gradle property: https://cashapp.github.io/sqldelight/multiplatform_sqlite/gradle/Paul Woitaschek
06/01/2022, 3:43 PM// An array of folders where the plugin will read your '.sq' and '.sqm'
// files. The folders are relative to the existing source set so if you
// specify ["db"], the plugin will look into 'src/main/db' or 'src/commonMain/db' for KMM.
// Defaults to ["sqldelight"]
sourceFolders = ["db"]
Paul Woitaschek
06/01/2022, 3:43 PMalec
06/01/2022, 3:45 PMsourceFolders = ["../sqldelightMain"]
alec
06/01/2022, 3:45 PMPaul Woitaschek
06/01/2022, 7:54 PMjw
06/04/2022, 12:14 PMPaul Woitaschek
06/04/2022, 12:18 PMAndromadus Naruto
06/05/2022, 7:12 AMAndromadus Naruto
06/05/2022, 7:12 AMAndromadus Naruto
06/05/2022, 7:31 AMAndromadus Naruto
06/05/2022, 7:32 AMval ktor_version: String by project
val kotlin_version: String by project
val logback_version: String by project
//val sqldelight_version = ""
plugins {
application
kotlin("jvm") version "1.6.21"
id("org.jetbrains.kotlin.plugin.serialization") version "1.6.21"
id("com.squareup.sqldelight") version "2.0.0-alpha02"
}
group = "com.andromadus.kotlin.ktor"
version = "0.0.1"
application {
mainClass.set("io.ktor.server.netty.EngineMain")
val isDevelopment: Boolean = project.ext.has("development")
applicationDefaultJvmArgs = listOf("-Dio.ktor.development=$isDevelopment")
}
repositories {
google()
mavenCentral()
maven { url = uri("<https://maven.pkg.jetbrains.space/public/p/ktor/eap>") }
maven { url = uri("<https://oss.sonatype.org/content/repositories/snapshots>") }
}
dependencies {
implementation("com.squareup.sqldelight:gradle-plugin:1.5.3")
implementation("io.ktor:ktor-server-core-jvm:$ktor_version")
implementation("io.ktor:ktor-server-websockets-jvm:$ktor_version")
implementation("io.ktor:ktor-server-content-negotiation-jvm:$ktor_version")
implementation("io.ktor:ktor-serialization-kotlinx-json-jvm:$ktor_version")
implementation("io.ktor:ktor-server-call-logging-jvm:$ktor_version")
implementation("io.ktor:ktor-server-cors-jvm:$ktor_version")
implementation("io.ktor:ktor-server-compression-jvm:$ktor_version")
implementation("io.ktor:ktor-server-host-common-jvm:$ktor_version")
implementation("io.ktor:ktor-server-status-pages-jvm:$ktor_version")
implementation("io.ktor:ktor-server-auth-jvm:$ktor_version")
implementation("io.ktor:ktor-server-auth-jwt-jvm:$ktor_version")
implementation("io.ktor:ktor-server-netty-jvm:$ktor_version")
// SQL Delight
implementation("com.squareup.sqldelight:jdbc-driver:1.5.3")
// Hikari JDBC connection pool
implementation("com.zaxxer:HikariCP:5.0.1")
// MySQL
implementation("mysql:mysql-connector-java:8.0.29")
implementation("ch.qos.logback:logback-classic:$logback_version")
testImplementation("io.ktor:ktor-server-tests-jvm:$ktor_version")
testImplementation("org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version")
}
//sqldelight {
//
//}
Andromadus Naruto
06/05/2022, 7:33 AMrootProject.name = "com.andromadus.kotlin.ktor.kontaktor"
pluginManagement {
repositories {
gradlePluginPortal()
maven(url = "<https://oss.sonatype.org/content/repositories/snapshots>")
}
}
Andromadus Naruto
06/05/2022, 7:33 AMAndromadus Naruto
06/05/2022, 7:35 AMDerek Ellis
06/05/2022, 10:09 AMmavenCentral()
to your plguinManagement.repositories {}
block. The alphas are published there.Andromadus Naruto
06/05/2022, 4:11 PMid("com.squareup.sqldelight") version "2.0.0-alpha02
with:
id("app.cash.sqldelight") version "2.0.0-alpha02"
and it worked. 🤷🏾♂️Andromadus Naruto
06/05/2022, 5:07 PMsaket
06/05/2022, 5:34 PMAndromadus Naruto
06/05/2022, 7:58 PMsaket
06/05/2022, 10:35 PMMichal Klimczak
06/07/2022, 10:17 AMTypeSpec
from KSDeclaration
like you can from TypeElement
(TypeElement.toTypeSpec(ClassInspector)
)?Matthias Geisler
06/08/2022, 8:09 AMkotlin.Function$count
?Iuhas Cezar
06/08/2022, 10:51 AMINSERT ON CONFLICT DO UPDATE
command.
After some investigation, I found that I needed to update my dialect version of SqlDelight to 3.25 which I did and it works fine, except it still crashes on Api 29 and below.
I tested it on a pixel 4 Api 29 emulator and on a physical device pixel 3 Api 28 which both crash.
On Pixel 2 Api 30 and above emulators works fine.
SqlDelight version: 1.5.3
dialect = "sqlite:3.25"
My insert statement looks like this
insertLocalPortfolioItem:
INSERT INTO localPortfolioList(name, symbol, pricePerShare, currency, cost, noOfShares, logo, availableFunds, orderAction)
VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?) ON CONFLICT(symbol) DO UPDATE SET noOfShares=excluded.noOfShares;
StackTrace:
android.database.sqlite.SQLiteException: near "ON": syntax error (code 1 SQLITE_ERROR): , while compiling: INSERT INTO localPortfolioList(name, symbol, pricePerShare, currency, cost, noOfShares, logo, availableFunds, orderAction)
VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?) ON CONFLICT(symbol) DO UPDATE SET noOfShares=excluded.noOfShares
Any ideas please?alec
06/08/2022, 10:52 AM