Skip to content

Discuss 2.0 version of the protocol #1

@dbaeumer

Description

@dbaeumer

I started to implement a 2.0 version of the protocol. High level the changes are:

  • alignment of the protocol with the VSCode exension API. As a result the properties of a request param object conform to parameters in the API. So for example if the VSCode extension API takes a text document has the first parameter the corresponding parameter literal in the JSON RPC protocol now has a property textDocument.
  • consistent support for language identifiers. This means that the language ID is passed to the server via the open notification. Further references to the text document don't transfer this informaiton anymore.
  • support for version numbers on documents. The initial version number is send to the server via the open notification. Document change notification do carry information about VSCode's version number as well.

I moved to version 2.0 since especially the first item makes the changes incompatible with the 1.0 version. However I think they are worthwhile the change and easy to adopt since they are mostly JSON literal changes.

The document here describes the changes. It uses a New / Changed annotation to highlight the changes (see below).

Feedback to the new version is highly welcome.

capture

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions