asdf-vm / asdf-vm/asdf-elixir

Unable to install from source due to :enotsup error in the test with `:io.get_password` call.

Open
#147 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
528
Forks
79
PR merge metrics
No merged PRs in 30d

Description

```bash
$ asdf install elixir ref:main
(…)
1) test I/O protocol with get password (ExUnit.CaptureIOTest)
test/ex_unit/capture_io_test.exs:183
Assertion with == failed
code: assert :io.get_password() == :eof
left: {:error, :enotsup}
right: :eof
stacktrace:
(ex_unit 1.19.0-dev) lib/ex_unit/capture_io.ex:319: ExUnit.CaptureIO.do_capture_gl/2
(ex_unit 1.19.0-dev) lib/ex_unit/capture_io.ex:277: ExUnit.CaptureIO.do_with_io/3
(ex_unit 1.19.0-dev) lib/ex_unit/capture_io.ex:146: ExUnit.CaptureIO.capture_io/1
test/ex_unit/capture_io_test.exs:184: (test)
(…)
```

> I'm unable to reproduce it no matter how much I tried to run those tests **by hand**. In my last try I even used a simple `go` file that calls an `sh` file that calls `make clean test …` in a sub-shell and even this works. I don't know … maybe it's some `asdf` implementation specific issue, but it fails every time I try to call `asdf install elixir ref:main`.

More information in: elixir-lang/elixir#14148

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with test/ex_unit/capture_io_test.exs:183 and the stack trace through lib/ex_unit/capture_io.ex. Compare the failing `asdf install elixir ref:main` path with running the test by hand, and consult elixir-lang/elixir#14148; done means the named test passes during source installation without `{:error, :enotsup}`.

Written by the indexing model from the issue text.

Assessment

Tech stack
elixir, shell
Domain
build-system, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.