Gabriel, sorry my question was not clear enough. What is the benefit for
users in this case? Why should an IDE should warnings from their deps in a
way that capturing stderr is not enough?

On Mon, Jul 12, 2021 at 13:43 Guilherme Duarte <gjsdua...@gmail.com> wrote:

> Hey José,
>
> Thanks for the quick response.
> The *mix deps.compile* diagnostic errors could be reported similarly to
> the *mix compile* ones. I believe the logic needed to decide if the
> location of the file where the error is being reported belongs to *deps *or
> to the developer's current source code could easily be handled by either
> *elixir-ls* or the editor.
>
> The fact that the task current eagerly exits is what makes removes all
> flexibility from being able to decide what to do with the errors at a later
> stage.
>
> On Monday, July 12, 2021 at 9:18:20 AM UTC+1 José Valim wrote:
>
>> Quick question: how would the errors in mix deps.compile be used in the
>> editor? How could that be useful?
>>
>> Also note that we won't be able to do this for all dependencies... so for
>> dependencies the best choice may be to capture stderr.
>>
>> On Sat, Jul 10, 2021 at 3:16 PM Guilherme Duarte <gjsd...@gmail.com>
>> wrote:
>>
>>> 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-co...@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
>>> <https://groups.google.com/d/msgid/elixir-lang-core/03daf960-dc81-4d76-b9b5-015d2e47e72bn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> 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/cac47a1c-c153-4cec-9dbb-bc43a6bb2192n%40googlegroups.com
> <https://groups.google.com/d/msgid/elixir-lang-core/cac47a1c-c153-4cec-9dbb-bc43a6bb2192n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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/CAGnRm4%2BQn-5bf1Xe7jKO8kJh4mCCCO5U%2Bei70s9upZn5JfkMCA%40mail.gmail.com.

Reply via email to