Thread
#arrow-meta
    t

    tavish pegram

    2 years ago
    I’m trying to mess around with arrow-meta on one of my other projects (I wanted to try some of the stuff from the ArrowFx and Meta talk that @raulraja and @simon.vergauwen did) but when I try to follow the example here https://github.com/arrow-kt/arrow-meta-examples/blob/master/use-arrow-meta-compiler-plugin/build.gradle I get compilation errors. A section from my build.gradle which I think contains everything from that example
    buildscript {
        repositories {
            maven {
                url '<https://oss.jfrog.org/artifactory/oss-snapshot-local/>'
            }
        }
        dependencies {
            classpath "io.arrow-kt:gradle-plugin:1.3.61-SNAPSHOT"
        }
    }
    
    plugins {
        id "org.jetbrains.kotlin.jvm" version "1.3.61"
        id "org.jetbrains.kotlin.plugin.jpa" version "1.3.61"
        id "org.jetbrains.kotlin.plugin.spring" version "1.3.61"
        id "org.springframework.boot" version "2.1.7.RELEASE"
        id "com.adarshr.test-logger" version "2.0.0"
    }
    
    apply plugin: "java"
    apply plugin: "war"
    apply plugin: "kotlin"
    apply plugin: "kotlin-spring"
    apply plugin: "kotlin-jpa"
    apply plugin: "kotlin-kapt"
    apply plugin: "org.springframework.boot"
    apply plugin: "io.spring.dependency-management"
    apply plugin: "jacoco"
    apply plugin: "io.arrow-kt.arrow"
    
    repositories {
        jcenter()
        mavenCentral()
        maven { url "<https://splunk.jfrog.io/splunk/ext-releases-local>" }
        maven { url "<https://dl.bintray.com/arrow-kt/arrow-kt/>" }
        maven {
            url '<https://oss.jfrog.org/artifactory/oss-snapshot-local/>'
        }
    }
    dependencies {
        ...other dependencies 
        // Arrow
        implementation Dependencies.ArrowOptics
        implementation Dependencies.ArrowSyntax
        implementation Dependencies.ArrowFx
        kapt Dependencies.ArrowMeta
        compileOnly "io.arrow-kt:arrow-meta-prelude:1.3.61-SNAPSHOT"
    }
    The error message doesn’t seem super useful to me, but am I making a common mistake here or any suggestions on how to debug this? Thanks!
    Oh and the arrow dependencies are
    object Dependencies {
        const val ArrowFx = "io.arrow-kt:arrow-fx:${Versions.Arrow}"
        const val ArrowOptics = "io.arrow-kt:arrow-optics:${Versions.Arrow}"
        const val ArrowSyntax = "io.arrow-kt:arrow-syntax:${Versions.Arrow}"
        const val ArrowMeta = "io.arrow-kt:arrow-meta:${Versions.Arrow}"
        ...
    }
    and arrow version is
    const val Arrow = “0.10.5”
    raulraja

    raulraja

    2 years ago
    May want to wait for update to meta 1.4 because that errors show a suspend expression is not handled properly by IR lowering which is unrelated to meta
    t

    tavish pegram

    2 years ago
    I see, thanks!
    raulraja

    raulraja

    2 years ago
    That is because that version of IR for 1.36 is incomplete but Meta is currently being upgraded to 1.4 by @Rachel
    in that version they have issues lowering suspended lambdas and many other simple constructs that are supposed to be addressed in 1.4