actions-rs / tarpaulin

📈 GitHub Action for code coverage reporting with tarpaulin
MIT License
89 stars 16 forks source link

`Error: Couldn't find a release tarball containing binaries for latest` since v0.1.3 release #15

Closed S-Coyle closed 3 years ago

S-Coyle commented 3 years ago

Do the checklist before filing an issue:

Description

Error: Couldn't find a release tarball containing binaries for latest since v0.1.3 release

Workflow code

     - name: rust-tarpaulin code coverage check
        uses: actions-rs/tarpaulin@v0.1.2
        with:
          args: '-v --release --out Lcov'

Action output

`Error: Couldn't find a release tarball containing binaries for latest`

Tried with:

Expected behavior

Action should find tarball & run

Additional context

svartalf commented 3 years ago

My apologies, @S-Coyle, I should've tested it better yesterday. I just pushed the 12decd21950e1accb43d1c433d21880f31cfe86c, can you test your workflow against the master branch (- uses actions-rs/tarpaulin@master)?

S-Coyle commented 3 years ago

Thanks for taking a look so quickly @svartalf - I've re-ran in a separate PR to switch back to master but it's failing again, though this time with a different error:

Run actions-rs/tarpaulin@master
[tarpaulin] downloading cargo-tarpaulin from https://api.github.com/repos/xd009642/tarpaulin/tarball/0.17.0
/bin/tar xz --warning=no-unknown-keyword -C /home/runner/work/_temp/4130b9f5-cdac-4427-9346-26705de60a3e -f /home/runner/work/_temp/f0b436f8-5dfc-4309-b4b4-ed82837b0c3e
[tarpaulin] running tests with coverage tracking
/usr/share/rust/.cargo/bin/cargo tarpaulin --out Xml -v --release --out Lcov
error: no such subcommand: `tarpaulin`
Error: The process '/usr/share/rust/.cargo/bin/cargo' failed with exit code 101

Link to CI failure here

svartalf commented 3 years ago

Ah, okay, we were chasing the wrong problem here; coincidentally a new version of cargo-tarpaulin was released 10 hours ago and this release does not contains pre-built binaries, effectively breaking whole this action.

I'm not sure what to do with it right now, maybe we can ask @xd009642 to upload artifacts to that release?

svartalf commented 3 years ago

To add more: I had removed the 12decd21950e1accb43d1c433d21880f31cfe86c, which was a wrong attempt to solve the issue.

Another temporary solution is to use version input for this action and set it to any version with prebuilt artifacts, ex.

- uses: actions-rs/tarpaulin@v1
  with:
    version: 0.16.0

In a long term I plan to deprecate and stop supporting this action at all, https://github.com/actions-rs/install should be used instead to bring tarpaulin binary into the workspace and it will be up for user to call it.

xd009642 commented 3 years ago

So it looks like the upload of the binary failed in the CI release job but that didn't cause the CI to error... I've just hit rerun and hopefully that'll fix it. Otherwise I'll manually intervene

xd009642 commented 3 years ago

I had to intervene, but it's there so if you try again it should work

S-Coyle commented 3 years ago

Can confirm it's now working - thanks @xd009642

@svartalf strangely I still couldn't get it to work with @master, I get the same error: no such subcommand: tarpaulin, but switching it to @v0.1 did the trick for me. We've got circa 30 crates currently using @master so considering whether I should dive in & switch them over asap.

svartalf commented 3 years ago

@S-Coyle master should work now too (if you can test it maybe?), but I generally would not suggest to use it at all, as there is no policy that master branch HEAD always works correctly and in a backwards-compatible way; @v0.1, on the other hand, should work all the time.

Feel free to close this issue when you are done with testing; thank you for bug report and thank you, @xd009642, for helping us that fast!

S-Coyle commented 3 years ago

@master has indeed now started working again. Agree that I should make the switch over to @v0.1 across the board 🙂

Thanks again for your help & such a quick turnaround 🙇

wangfenjin commented 1 year ago

We need to reopen this issue, as https://github.com/xd009642/tarpaulin/releases/tag/0.25.0 had changed the release naming convention

wangfenjin commented 1 year ago

The last working version is version: 0.22.0

xd009642 commented 1 year ago

Yeah releases silently broke for some reason after 0.22.0 and GHA didn't fail so I never realised. This new one makes use of more existing and maintained by other people tools so should be more reliable.

Honestly I'd be willing to PR this repo to fix it but it seems (at least currently) abandoned. I kinda feel as the maintainer of tarpaulin I should be a contributor given users raise issues with me about these actions not working as well...

wangfenjin commented 1 year ago

Thanks for your response @xd009642

I also don’t the status of this project, I think you can try to create a PR and if the owner doesn’t respond maybe you can maintain the fork version in the long run