This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Repository navigation
Conversation
Hyper has never had the release process written down anywhere, so RELEASE.md describes it: the two channels and the update feeds that serve them, the version bump across both package.json files, the draft release that `release` creates, and the fact that electron-builder only uploads installers into a draft that already exists. That documented pipeline cannot currently run. Every Node CI job fails before its first step with "This request has been automatically failed because it uses a deprecated version of `actions/upload-artifact: v3`", so no build has produced artifacts since the v3 artifact API was shut down. The three uploads move to actions/upload-artifact@v4, which needs a name unique to each job in the run, hence dist-<os>, dist-linux-<arch> and e2e-<os>. The pr_num artifact and the step that wrote it are dropped: their only consumer was .github/workflows/e2e_comment.yml, deleted in #8207. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Co-Authored-By: Steven <229881+styfle@users.noreply.github.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Member
Author
|
Confirming the first blocker from the description: this PR itself triggered no |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You asked how this repo publishes releases, and whether a patch could go out right now. The short answer to the second question is no, and this PR is the first part of fixing that.
How releases work today
RELEASE.mdwrites it down, since it was not recorded anywhere in the repo:masterfeedsreleases.hyper.is,canaryfeedsreleases-canary.hyper.is.app/updater.tspollshttps://<feed>/update/<platform>/<version>10s after launch and every 30 minutes after that. Both feeds mirror the GitHub Releases of this repo, and the stable one filters out pre-releases.versionin bothpackage.jsonandapp/package.json(message is the bare version), avX.Y.Ztag on it, and a GitHub Release carrying the installers.releaseturns the commits since the previous tag into a draft release;release.jsin the repo root is the hook that prompts for the one-line summary.master/canaryrunsNode CI, which builds on macOS, Windows and Ubuntu plus two cross-built Linux ARM jobs.electron-builderruns with no--publishflag, so a branch push resolves the policy toonTagOrDraft: it uploads into the draft release matchingv<version>and does nothing at all if that draft is missing. Publishing the draft is what ships the update.Why a patch cannot go out right now
GET /repos/vercel/hyper/actions/permissionsreturns{"enabled": false}, and merging fix: validate ssh:// URLs before building the ssh command #8217 earlier today produced noNode CIrun. Nothing builds until that is turned back on, and only someone with repo settings access can do it.Node CIfails before its first step. Every job in the last runs (May 2026) died onThis request has been automatically failed because it uses a deprecated version of 'actions/upload-artifact: v3'. That is what this PR fixes: the three uploads move to@v4with per-job names, and thepr_numartifact goes away because its only consumer,.github/workflows/e2e_comment.yml, was deleted in Delete .github/workflows/e2e_comment.yml #8207.build-linux-armjobs fail separately, on their own exit codes rather than the artifact action, so they need a look once the rest is green.The source tree itself is healthy — lint, the 19 unit tests,
pnpm run buildand an unsigned Linuxelectron-builderrun all pass locally on this branch.What shipping the ssh:// fix would take
#8217 landed on
canary, which is4.0.0-canary.5plus 708 commits. Stable users are on3.4.1from January 2023.4.0.0-canary.6pre-release offcanaryis the cheap path, but it only reaches people who opted into the canary channel.3.4.2offmasterreaches everyone else, and that is not mechanical: cherry-picking 890a332 ontomasterconflicts inapp/index.ts,lib/actions/ui.tsandtypings/common.d.ts.masteralso still carries the unreleased "Security fixes" commit from December 2023, whoselib/actions/ui.tsguard validates the host but not the user component.Notes
bin/notarize.jsreadsAPPLE_PASSWORD, but the workflow exports that secret asAPPLE_APP_SPECIFIC_PASSWORD, so theafterSignhook returns early every time.electron-builder's built-in notarization reads the name the workflow does set, so this is probably harmless, but the dead hook is confusing and worth deleting separately.actions/checkout,actions/setup-nodeandactions/cacheare all onv4and only emit deprecation warnings, so I left them for Dependabot.Generated via styfle's devbox