jiro4989 / setup-nim-action

Set up your GitHub Actions workflow with a specific version of Nim
MIT License
100 stars 13 forks source link

Bug in setup-nim-action@v1.3 when selecting nim version 1.5.0 #68

Closed SekouDiaoNlp closed 2 years ago

SekouDiaoNlp commented 2 years ago

HI @jiro4989 .

I just want to let you know there is a bug in setup-nim-action@v1.3 when selecting nim version 1.5.0.

If you have a look at this workflow run which tests nimporter on several nim versions as well as several nimporter versions you will see that the action systematically fails for nim version 1.5.0.

For example this job:

Run jiro4989/setup-nim-action@v1.3
  with:
    nim-version: 1.5.0
    no-color: false
    yes: false
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.9.7/x64
choosenim-init: Downloading choosenim-0.8.2_linux_amd64
Downloading Nim 1.6.0 from nim-lang.org
[                                                  ] 0.03364% 4kb/s[###############################                   ] 63.05% 7492kb/s[##################################################] 100.0% 0kb/s
 Extracting nim-1.6.0-linux_x64.tar.xz
 Extracting nim-1.6.0-linux_x64.tar
   Building Nim 1.6.0
  Compiler: Already built
  Installed component 'nim'
  Installed component 'nimble'
  Installed component 'nimgrep'
  Installed component 'nimpretty'
  Installed component 'nimsuggest'
  Installed component 'testament'
  Installed component 'nim-gdb'
   Switched to Nim 1.6.0
choosenim-init: ChooseNim installed in /home/runner/.nimble/bin
choosenim-init: You must now ensure that the Nimble bin dir is in your PATH.
choosenim-init: Place the following line in the ~/.profile or ~/.bashrc file.
choosenim-init:     export PATH=/home/runner/.nimble/bin:$PATH

Error: Error: Command failed: choosenim 1.5.0

/home/runner/work/_actions/jiro4989/setup-nim-action/v1.3/lib/installer.js:110
                    throw err;
                    ^

Error: Command failed: choosenim 1.5.0

    at ChildProcess.exithandler (child_process.js:295:12)
    at ChildProcess.emit (events.js:210:5)
    at maybeClose (internal/child_process.js:1021:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5) {
  killed: false,
  code: 1,
  signal: null,
  cmd: 'choosenim 1.5.0'
}

We can observe that it installs nim version 1.6.0 and throws an error before it could swith to 1.5.0.

The same thing happens if we specify nim version 1.5.X

This might be a choosenim bug though, as looking through jiro4989/setup-nim-action/lib/installer.js it seems that you are calling choosenim correctly.

Have a nice day.

SekouDiaoNlp.

jiro4989 commented 2 years ago

Thank you.

I think that Nim 1.5 is not a stable version. Nim 1.5 doesn't exist.

See: https://github.com/nim-lang/Nim/tags

SekouDiaoNlp commented 2 years ago

Thanks for the link, I will have a look at it.

Cheers.