Skip to content

Remove usage of URI and ServerId as identifier for Jupyter Servers #13632

@DonJayamanne

Description

@DonJayamanne
  • The term Uri is used in a number of places to point to the address of the Jupyter Server as well as an identifyer for a Jupyter Server.
    • Without inspecting the Uri we have no idea what it is, hence we have if conditions in a number of places
    • Unfortunately there are places where this if condition isn't used and has caused bugs (password storage and connection)
    • Error messages and the like assume the Url is the Jupyter Server Uri, but its not.
    • Basically its just too complex
  • The Uri is constructed from the Jupyter Provider Id and Handle, however without the extensionId it is not unique.
    • Its possible to have two extensions with the same provider id, and this can cause issues when we try to connect to them.
  • The Uri is constructed from the Jupyter Provider Id and Handle
    • Hence Uri is kind of always unique (provided we include the extension id into the mix)
    • Thus we do not need computeServerId
    • We have serverId used as identifiers in a number of places, along with this Uri as well
    • We have two types of identifiers
### Tasks
- [x] Remove Server Id
- [x] Remove `serverId`
- [x] Replace `serverId` with the `Uri`
- [x] Replace Uri with an object, today its called `idAndHandle`, its basically a Jupyter Server Identifier (lets call this `JupyterServerProviderHandle` and will include `extensionId` as a new property

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions