Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Workspace does not exist when opening tunnel on root #8212

Closed
aeschli opened this issue Mar 16, 2023 · 5 comments
Closed

Workspace does not exist when opening tunnel on root #8212

aeschli opened this issue Mar 16, 2023 · 5 comments
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug important Issue identified as high-priority

Comments

@aeschli
Copy link
Contributor

aeschli commented Mar 16, 2023

Ubuntu 22.10

  • use the cli to start tunnel service code-insiders tunnel service install
  • service is installed and prompts: Open this link in your browser https://insiders.vscode.dev/tunnel/aeschli-VirtualBox

Open this link. vscode.dev opens with error dialog
image

Open the link with a slash at the end (https://insiders.vscode.dev/tunnel/aeschli-VirtualBox/)

Now it works and vscode.dev shows the content of the root file system

I suspect the error is in the remote-tunnel extension when creating the workspace path out of the browser location

@aeschli
Copy link
Contributor Author

aeschli commented Mar 16, 2023

Very likely related:

  • on the Workspace does not exist dialog, press cancel
  • press the Open Folder dialog
  • select a folder from the folder picker
  • the window reloads but again shows the same error dialog

@connor4312
Copy link
Member

This was caused by https://github.com/microsoft/vscode-dev/pull/840, which removed the ability of router extensions to open empty workspaces. It affects tunnels on vscode.dev, blocking flow of connecting to a new remote tunnel via the Remote Explorer, since then you land on a broken workspace and also can't open folders.

@joaomoreno it looks like the underlying code path that PR was fixing something that the "profile" route already fixed by explicitly returning a workspace in tmp:// -- should the PR just be reverted?

@connor4312 connor4312 added bug Issue identified by VS Code Team member as probable bug important Issue identified as high-priority labels Mar 16, 2023
@joaomoreno
Copy link
Member

@connor4312 The problem is that the issue the PR fixed can always come back from any other route. The PR fixes it for good, according to @bpasero's summary: https://github.com/microsoft/vscode-dev/issues/812#issuecomment-1406198813

Why is this workspace "broken"? Can't the feature work on these tmp: workspaces?

@connor4312
Copy link
Member

connor4312 commented Mar 20, 2023

We want an empty workspace still connected to the remote so that "Open Folder" and other management actions work. It seems like tmp doesn't get resolved in remote workspaces. Fixing that would could also work, though I didn't dive into why tmp was failing to open. It seemed like setting the workspace to undefined was the more "proper" way to signify an empty workspace.

@connor4312
Copy link
Member

connor4312 commented Mar 21, 2023

The issue is that vscode has a RemoteInvalidWorkspaceDetector which is generating this error for remote workspaces. With the PR, VS Code will always try to open tmp:///default.code-workspace instead of an empty workspace. This doesn't actually exist, but no error is shown, at least in most cases, when there's no remote...

image

So from this we should probably either:

  • Have a way for router extensions to properly return empty workspaces (still my preferred route), or
  • Add some special casing in the RemoteInvalidWorkspaceDetector to allow things in the tmp workspace

@github-actions github-actions bot locked and limited conversation to collaborators May 5, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug important Issue identified as high-priority
Projects
None yet
Development

No branches or pull requests

3 participants