Hello,

*Proposal:*

In order to facilitate the implementation of development tooling, such as 
*elixir-ls*, I propose the propagation of the *--return-errors *flag from 
Mix.Tasks.Compile to Mix.Tasks.Deps.Compile.

With this,  it would be possible to report diagnostic errors during 
dependency compilation.
With the current behavior, the *mix compile --return-errors *task does an 
early exit when dependency compilation fails, making it extremely hard to 
report error reasons.

This behavior change would be especially helpful when path dependencies 
exist.

*Proposed Implementation:*

In order to achieve this, the flag should be passed down from 
Mix.Tasks.Compile -> Mix.Tasks.Loadpaths -> Mix.Tasks.Deps.Loadpaths -> 
Mix.Tasks.Deps.Compile.
Mix.Tasks.Deps.Compile.compile should then accumulate the diagnostics 
messages returned by Mix.Tasks.Compile for each compiled dependency, and 
the returned values propagated back up call tree to be reported by the 
original task invocation (mix compile --return-errors)

Thanks for considering this! 

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/03daf960-dc81-4d76-b9b5-015d2e47e72bn%40googlegroups.com.

Reply via email to