-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PLANNING: sql-psi 1.0 #155
Comments
I think these are probably the next steps:
i think since postgres is the dialect that has a bunch of bugs blocked by this we start with that so we can make sure we're moving in the right direction. I think we start by creating some new modules:
and copy/paste the existing I think using the gradle testkit integration tests in
in buildscript {
dependencies {
classpath "com.squareup.sqldelight:gradle-plugin"
}
}
apply plugin: "com.squareup.sqldelight"
sqldelight {
Database {
dialect "com.squareup.sqldelight:postgres-dialect"
}
} in includeBuild("../../../") {
dependencySubstitution {
substitute module("com.squareup.sqldelight:gradle-plugin") with project(":sqldelight-gradle-plugin")
substitute module("com.squareup.sqldelight:postgres-dialect") with project(":dialects:postgres-dialect")
}
} I'm pretty confident in that approach making it the easiest to work on sqldelight 2.0, but I am less confident about the grammar/ide stuff - so those are going to be my initial focus once I switch back on to working on sqldelight. |
The postgres-dialect will need to have a codegen component to it that ensures that all references to |
The main feature here is to have the individual dialects be their own artifacts, with a net result of being able to do something like this in sqldelight:
sql-psi would become the API and ANSI-SQL grammar which sqldelight depends on, and individual dialects would be able to provide:
getBoolean
for postgres)As part of this we probably want to publish tests in sql-psi as well so that individual grammars can just run the existing sql test suite.
The text was updated successfully, but these errors were encountered: