Add a menu checkbox to switch to canary/stable update channel
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 44.7k
- Forks
- 3.6k
- Avg merge
- 21m
- Merged PRs (30d)
- 1
Description
We really need a better way to change Hyper update channel.
The idea is to add an item Canary Releases right above Preferences... menu item in:
Hypermenu on macOSAboutmenu on Windows/Linux
This checkbox should be synchronized with config file:
- Checking it will update/add an
"updateChannel"setting with a"canary"value. - Unchecking it will set
"updateChannel"setting to"stable"value.
If config file is updated manually, checkbox should reflect the new value. If the value is not 'canary' (or missing), it should be considered as 'stable'.
All other part of config file should remain unmodified.
To achieve this, using recast could be a great option. Example CLI that modifying plugins array in config file:
- Parse file content: https://github.com/zeit/hyper/blob/76beaa32f5f3285bc8f7083fff8cd722ba97f60a/cli/api.js#L38
- Finding the right setting: https://github.com/zeit/hyper/blob/76beaa32f5f3285bc8f7083fff8cd722ba97f60a/cli/api.js#L42
- Modifying the value: https://github.com/zeit/hyper/blob/76beaa32f5f3285bc8f7083fff8cd722ba97f60a/cli/api.js#L84
- Writing modified file: https://github.com/zeit/hyper/blob/76beaa32f5f3285bc8f7083fff8cd722ba97f60a/cli/api.js#L61
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Trace the Hyper menu on macOS and the About menu on Windows/Linux, then inspect the config-editing flow in cli/api.js, especially parsing, setting lookup, modification, and writing. Confirm how the checkbox reads and updates updateChannel while preserving other config content; done means both menu locations stay synchronized with canary or stable values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100