denoland / denoland/setup-deno
Support pr N and other deno upgrade-supported specs in deno-version
- Dominant language
- TypeScript
- Stars
- 330
- Forks
- 58
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
`denoland/setup-deno`'s `deno-version` input only accepts release channels (`latest`, `lts`, `rc`, `canary`), semver ranges, or commit hashes. It does **not** accept the same specs the `deno upgrade` CLI supports, most notably `pr N` (install a specific GitHub PR build).
## Motivation
`deno upgrade` gained a `pr` positional (and `--pr` flag) that installs the CI build of a specific denoland/deno pull request, e.g.:
```
deno upgrade pr 36606
```
This is very useful for validating an unmerged deno fix in your own CI (here: fount, which runs `fount test` / server / shell verification). Without setup-deno support, workflows must work around it by installing `canary` and then running `deno upgrade pr N` as a separate step — the pin then can't be applied at install time.
## Request
Make `deno-version` accept the full set of specs that `deno upgrade` understands, or add a dedicated input (e.g. `deno-upgrade` / `deno-pr`) for these. Concretely, support values like:
- `pr 36606` (PR build)
- any other spec `deno upgrade` accepts
so that:
```yaml
- uses: denoland/setup-deno@v2
with:
deno-version: pr 36606
```
works and installs the PR build directly.
## Additional context
- `deno upgrade` usage: `deno upgrade [OPTIONS] [PR-NUMBER-POSITIONAL]`, plus `--pr `
Thanks for considering it.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the deno-version input handling and compare its accepted values with the specs supported by deno upgrade, especially `pr N` and `--pr`. Check how the installer receives and resolves the selected version. Done means a workflow using `deno-version: pr 36606` installs that PR build, while existing channels, ranges, and hashes continue to work.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- ci-cd, devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 50/100