valery1707 / kaitai-gradle-plugin

Gradle plugin for Kaitai: declarative language to generate binary data parsers

Home Page:https://kaitai.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Proper propagation of stderr output

jvmlet opened this issue · comments

Hi
When my ksy file is buggy (meta id has illegal characters for example), the plugin prints

Stderr unavailable as it has been consumed by user provided stream.

Executing compiler directly gives me

/meta/id: invalid meta ID: 'SomeBuggyId', expected /^[a-z][a-z0-9_]*$/

Please propagate the stderr output properly.
Thanks

@jvmlet Good point, will fix soon

Version 0.1.1 was released

Hi
Thanks for the fix.
Looks like apache.commons.io you are using contradicts with version that spring boot plugin uses.
Here is my gradle.build ;

buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.1.RELEASE")
        classpath("name.valery1707.kaitai:kaitai-gradle-plugin:0.1.1")
    }
}

apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'name.valery1707.kaitai'

When I run kaitai task with buggy ksy I get this :

Caused by: java.lang.NoSuchMethodError: org.apache.commons.io.output.ByteArrayOutputStream.toString(Ljava/nio/charset/Charset;)Ljava/lang/String;
        at name.valery1707.kaitai.KaitaiGenerator.execute(KaitaiGenerator.java:224)
        at name.valery1707.kaitai.KaitaiGenerator.generate(KaitaiGenerator.java:265)
        at name.valery1707.kaitai.KaitaiGenerator$generate$4.call(Unknown Source)
        at name.valery1707.kaitai.GenerateTask.action(GenerateTask.groovy:111)
  • Can't find the option to reopen the issue

@jvmlet I think it's better to create a separate issue.