bitwalker / bitwalker/conform

Conform fails to parse schema for umbrella app during release generation

Open
#132 3 comments 2 reactions 0 assignees View on GitHub
Dominant language
Elixir
Stars
378
Forks
59
PR merge metrics
No merged PRs in 30d

Description

Hi

I've been migrating my umbrella project to Erlang 20 and Elixir 1.5.0. I upgraded confrom from 2.1.2 to 2.5.0 to get latest fixes for Elixir 1.5.0 but now I have an error from conform plugin during release generation with distillery.

```
==> Assembling release..
==> Building release conform_umbrella_test:0.1.0 using environment dev
==> Plugin failed: Invalid schema at line 74: syntax error before: [<<"second_app.another_var">>].
```

I looked at the schema by dumping input argument for [`Conform.Schema.parse!/1`](https://github.com/bitwalker/conform/blob/master/lib/conform/schema.ex#L117) and got this in transform section:

```
transforms: [
"first_app.my_var": #Function<6.99386804/1 in :erl_eval.expr/5>,
"second_app.another_var": #Function<6.99386804/1 in :erl_eval.expr/5> # <-- line 74
],
```

Full schema from this step can be seen [here](https://github.com/tenkai9/conform_umbrella_test/blob/master/schema.exs).

I also checked non-umbrella app release generation and it works fine with similar case (using transforms). Instead of `inspect`ed anonymous functions in transform section (like in example above), there were actual functions text, which I assume is how it should be.

I've made a demo app which reproduces umbrella case https://github.com/tenkai9/conform_umbrella_test

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.