surface-ui / surface

A server-side rendering component library for Phoenix

Home Page:https://surface-ui.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"mix compile" fails on std install: lib/surface/components/form.ex:101: the function "inner_block" cannot handle clauses with the -> operator because it is not a macro.

rsieb opened this issue · comments

Describe the bug

On a clean Phoenix install, doing a standard surface install as per the instructions results in a compilation error:

== Compilation error in file lib/surface/components/form.ex ==
** (CompileError) lib/surface/components/form.ex:101: the function "inner_block" cannot handle clauses with the -> operator because it is not a macro. Please make sure you are invoking the proper name and that it is a macro
    expanding macro: Surface.sigil_F/2
could not compile dependency :surface, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile surface", update it with "mix deps.update surface" or clean it with "mix deps.clean surface"

How to reproduce it

  1. Create a new clean Phoenix app mix phx.new AppName, follow instructions to execute mix deps.get etc
  2. Add Surface to mix.exs:deps with the suggested line {:surface, "~> 0.9.4"}
  3. Execute the suggested initialization command mix surface.init
  4. The error occurs
  5. Same error occurs when issuing mix surface.init --demo

The behavior you expected

a. mix surface.init initializes
b. I can compile and launch the app with Surface components working

Your Environment

Surface: v0.9.4
LiveView: v0.18.16
Phoenix: v1.7.2
Elixir: v1.14.1

Sorry, I found it is a duplicate of #683 . Closing.