sveltejs / sveltejs/kit

Client error only in Safari, `Cannot access uninitialized variable.`

Open
#8,529 9 comments 9 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
20.8k
Forks
2.3k
Avg merge
1d 16h
Merged PRs (30d)
156

Description

Describe the bug

Was instructed to create a new issue with repro from convo in #2889.

Reproduction

https://github.com/pheuter/safari-repro

Logs
[Error] ReferenceError: Cannot access uninitialized variable.
	handleError (client-manifest.js:16)
	handle_error (client.js:1692)
	(anonymous function) (client.js:1630)
	asyncFunctionResume
	(anonymous function)
	promiseReactionJobWithoutPromise
	promiseReactionJob

[Error] Unhandled Promise Rejection: ReferenceError: Cannot access uninitialized variable.
	(anonymous function) (start.js:38)
	asyncFunctionResume
	(anonymous function)
	promiseReactionJobWithoutPromise
	promiseReactionJob
System Info
System:
    OS: macOS 13.1
    CPU: (10) arm64 Apple M1 Max
    Memory: 4.93 GB / 32.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 19.4.0 - /opt/homebrew/bin/node
    npm: 9.2.0 - /opt/homebrew/bin/npm
    Watchman: 2022.11.14.00 - /opt/homebrew/bin/watchman
  Browsers:
    Chrome: 109.0.5414.87
    Safari: 16.2
  npmPackages:
    @sveltejs/adapter-node: 1.1.1 => 1.1.1
    @sveltejs/kit: 1.1.0 => 1.1.0
    svelte: 3.55.1 => 3.55.1
    vite: 4.0.4 => 4.0.4
Severity

blocking all usage of SvelteKit

Additional Information

Blocks all client-side usage of SvelteKit on latest versions of Safari.

Contributor guide

Open the contributing guide

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 the Safari reproduction at https://github.com/pheuter/safari-repro and reproduce the error using the versions listed in the issue. Trace the reported locations in client-manifest.js, client.js, and start.js, comparing Safari with Chrome. Done means client-side SvelteKit usage works on the affected Safari version without either reported error.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.