vercel / vercel/hyper

Hyper crashes whilst idle after update

Open
#2,168 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

🐛 Type: Bug
Dominant language
TypeScript
Stars
44.7k
Forks
3.6k
Avg merge
21m
Merged PRs (30d)
1

Description

  • I am on the latest Hyper.app version
  • I have searched the issues of this repo and believe that this is not a duplicate
  • OS version and name: Mac OS 10.12.6 (16G29)
  • Hyper.app version: 1.4.2 (Failed to update to 1.4.3)
  • Link of a Gist with the contents of your .hyper.js: https://gist.github.com/CodeTheory/a3a770ed8bfb593e87f0dbeb378b737f
  • Relevant information from devtools (CMD+ALT+I on Mac OS, CTRL+SHIFT+I elsewhere): N/A
  • The issue is reproducible in vanilla Hyper.app: Couldn't test on Vanilla since the steps to reproduce are odd

Issue

image

Here's how I got this:
  • Opened hyper yesterday, idle until this morning
  • Update notification for 1.4.3, clicked to restart
  • Didn't open Hyper again and about 30 minutes later, get that error since the icon was bouncing I noticed it
  • Hyper didn't update to 1.4.3

Error text:

A JavaScript error occurred in the main process
Uncaught Exception:
Error: Object has been destroyed
at notify (/Applications/Hyper.app/Contents/Resources/app.asar/notify.js:36:8)
at err (/Applications/Hyper.app/Contents/Resources/app.asar/plugins.js:86:11)
at err (/Applications/Hyper.app/Contents/Resources/app.asar/plugins/install.js:43:7)
at cp.exec.err (/Applications/Hyper.app/Contents/Resources/app.asar/plugins/install.js:28:13)
at ChildProcess.exithandler (child_process.js:214:7)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:885:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with notify.js:36 and trace the error through plugins.js:86 and plugins/install.js:28-43, using the reported failed update and idle sequence as context. Determine why the main process handles the update failure after the relevant object is destroyed; done means the sequence no longer produces the reported uncaught "Object has been destroyed" error.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, javascript
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.