appsignal / appsignal-elixir

🟪 AppSignal for Elixir package
https://www.appsignal.com/elixir
MIT License
285 stars 82 forks source link

Don't run the installation script on windows #948

Closed luismiramirez closed 5 months ago

luismiramirez commented 5 months ago

Windows is not a supported OS. Therefore, the installation script shouldn't run when on this system.

This commit adds a check before the script runs. If the system is Windows based, the installation won't run and a message will be shown.

Closes https://github.com/appsignal/support/issues/308

tombruijn commented 5 months ago

I'm trying to understand where the problem is with the Windows install. The Intercom thread talks about an error raised by the mix task, but does not include the actual error, so I can't tell where the error comes from.

Is it the HTTP request we make with hackney? It shouldn't even get there, because it should find no matching architecture and target combination to download anything.

I can't tell now if this would fix it.

luismiramirez commented 5 months ago

What I understood is that the calls to :ssl made by the transmitter were raising errors due to the module's unavailability in Windows.

The package install script already covers this and only allows supported triples to run it, but the install script was missing that check.

Still, I can't reproduce the scenario.

backlog-helper[bot] commented 5 months ago

This is a message from the daily scheduled checks.

New issue guide | Backlog management | Rules | Feedback

unflxw commented 5 months ago

I tried testing this by locally building Erlang without SSL support -- the problem being that Hex doesn't work at all in an SSL-less Erlang.

What happens when you build Erlang without SSL support is that calling :ssl.start() throws an error. I believe it's likely that :ssl.start() is never called if Hackney is never invoked, though I have not checked this myself.

I did not reach any definitive conclusion from my testing, but I'm happy with merging this as-is and correcting from customer feedback if necessary.