Snap supports fine-grained short-lived (30 day) releases called "branches" which would correspond well to a git branch/PR which we may like to be able to easily test.
Users/devs could do snap refresh dvc --channel=stable/pr-1337 which would install a version corresponding to the given PR, and which would revert to tracking --channel=stable automatically (after 30 days or when closed, whichever is first).
Perhaps CI should push such branches? It already builds snap in PRs so wouldn't add much runtime to jobs.
Probably this is excessive. At this point, we release very often, and try to process PRs as quickly as possible, so user will be able to use edge or stable channels very quickly. Would not spend time on this for now. https://github.com/iterative/dvc/issues/3860 is much more useful in my opinion.
Sure. I also realise that if we really want to, we can push a feature branch having manually altered a couple of lines in .travis.yml to force a branch release.
Closing for now, doesn't look like anyone else is interested in this.