setup-deno
setup-deno copied to clipboard
Support Deno canary channel
From https://github.com/denolib/setup-deno/issues/47#issuecomment-736301440
steps:
- uses: denolib/setup-deno@v3
with:
deno-version: 973af61d8bb03c1709f61e456581d58386ed4952
deno-canary: true
It seems that deno-canary is redundant
We can check whether it is a hash from deno-version
steps:
- uses: denolib/setup-deno@v3
with:
deno-version: 973af61d8bb03c1709f61e456581d58386ed4952
- deno-canary: true
If deno-canary
is set, users can omit deno-version
to get the latest canary release
you can also do: set deno-version
to canary
to get latest canary. similar to nightly
.
edit: typo
I would prefer that actually.
steps:
- uses: denolib/setup-deno@v3
with:
deno-version: canary
steps:
- uses: denolib/setup-deno@v3
with:
deno-version: 973af61d8bb03c1709f61e456581d58386ed4952
I personally prefer not to bring any BREAKING CHANGES.
I want users to always use v2.
Especially this PR(https://github.com/actions/starter-workflows/pull/604) have been merged.
steps:
- uses: denolib/setup-deno@v2
with:
deno-version: canary
# canary = nightly
# deno-version: nightly
# deno-version: <HASH>
Just need to do two things
- Support HASH
- Use nightly as an alias for canary, and it is no longer recommended in the document, and output a warning when using.
I don't think keeping the version at v2 would help with https://github.com/actions/starter-workflows/pull/604 as it is locked to a commit hash rather than a tag.
I'd suggest go forward with the breaking change and even phase out nightly altogether as it was a temporary solution until there was an official solution, which there is now - canaries. My nightly solution is prone to breaking and has some builds missing because of refactors in Deno's code that I didn't catch in time. the reason setup-deno
didn't break was that I had a latest
tag which would always have the latest available build even if the workflow breaks.
imo v3 should be:
# Latest version
- uses: denolib/setup-deno@v3
# Latest version in a range
- uses: denolib/setup-deno@v3
with:
version: 1.5 # (resolve to 1.5.4)
# Locked version
- uses: denolib/setup-deno@v3
with:
version: 1.5.4
# Latest canary
- uses: denolib/setup-deno@v3
with:
version: canary
# Locked canary
- uses: denolib/setup-deno@v3
with:
version: 5f05e1783e9f08d1be4b71f2099601458da78dcd
I agree with Axetroy's view that nightly will be an alias for canary. In addition, we also need to update the version of setup-deno in starter-workflows to prevent the unofficial nightly mirror breaking
starter-workflows is not accepting changes and won't for a while.
Ref: https://github.com/actions/starter-workflows/issues/631