sqldelight icon indicating copy to clipboard operation
sqldelight copied to clipboard

`dialect` DSL does not support version catalogs (without `get()`)

Open JakeWharton opened this issue 2 years ago • 2 comments

doing dialect(libs.whevs) produces:

org.gradle.internal.typeconversion.UnsupportedNotationException: Cannot convert the provided notation to an object of type Dependency: provider(?).
The following types/formats are supported:
  - Instances of Dependency.
  - String or CharSequence values, for example 'org.gradle:gradle-core:1.0'.
  - Maps, for example [group: 'org.gradle', name: 'gradle-core', version: '1.0'].
  - FileCollections, for example files('some.jar', 'someOther.jar').
  - Projects, for example project(':some:project:path').
  - ClassPathNotation, for example gradleApi().

Comprehensive documentation on dependency notations is available in DSL reference for DependencyHandler type.
        at org.gradle.internal.typeconversion.ErrorHandlingNotationParser.parseNotation(ErrorHandlingNotationParser.java:57)
        at org.gradle.api.internal.artifacts.DefaultDependencyFactory.createDependency(DefaultDependencyFactory.java:60)
        at org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.create(DefaultDependencyHandler.java:173)
        at org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.create(DefaultDependencyHandler.java:167)
        at app.cash.sqldelight.gradle.SqlDelightDatabase.dialect(SqlDelightDatabase.kt:44)

For now you can do dialog(libs.whevs.get()), but you shouldn't have to!

JakeWharton avatar May 15 '22 02:05 JakeWharton

I doubt this is us, the gradle api we use is like DependencySet.add(Any) and that thing does all the special resolution, so either that API needs to get fixed or gradle is special casing implementation/api/etc, which I don't really wanna do

AlecKazakova avatar May 16 '22 14:05 AlecKazakova

I believe when I looked the code did configuration.add(dependencies.create(any)). I'll look into it more.

JakeWharton avatar May 16 '22 15:05 JakeWharton