theia icon indicating copy to clipboard operation
theia copied to clipboard

API Gap theia master vs. VS Code 1.55.2

Open tsmaeder opened this issue 2 years ago • 12 comments

This bug tracks the differences between current master Theia VS Code API and VS Code 1.55.2

  • [x] #9903
  • [x] #9965
  • [x] #9987
  • [x] #9988
  • [x] #9989
  • [x] #9991
  • [x] #10002
  • [x] #10003
  • [x] #10004
  • [x] #10005
  • [x] #10006
  • [x] #10008
  • [x] #10009
  • [x] #10011
  • [x] #10023
  • [x] #10024
  • [x] #10025
  • [x] #10026
  • [x] #10027
  • [ ] #10028
  • [x] #10029
  • [x] #10030
  • [x] #10031
  • [x] #10033
  • [x] #10200
  • [x] #8740
  • [x] #10201
  • [x] #11019
  • [ ] https://github.com/eclipse-theia/theia/issues/11127
  • [x] https://github.com/eclipse-theia/theia/issues/11128
  • [x] https://github.com/eclipse-theia/theia/issues/11129
  • [x] https://github.com/eclipse-theia/theia/issues/11131
  • [ ] https://github.com/eclipse-theia/theia/issues/11132
  • [x] https://github.com/eclipse-theia/theia/issues/11134
  • [x] https://github.com/eclipse-theia/theia/issues/11140
  • [x] https://github.com/eclipse-theia/theia/issues/11133
  • [x] https://github.com/eclipse-theia/theia/issues/11138
  • [x] https://github.com/eclipse-theia/theia/issues/11139
  • [x] https://github.com/eclipse-theia/theia/issues/11143
  • [ ] https://github.com/eclipse-theia/theia/issues/11144
  • [x] https://github.com/eclipse-theia/theia/issues/11145
  • [x] https://github.com/eclipse-theia/theia/issues/11146
  • [ ] https://github.com/eclipse-theia/theia/issues/11147
  • [x] https://github.com/eclipse-theia/theia/issues/11148
  • [x] https://github.com/eclipse-theia/theia/issues/11149
  • [x] #10662
  • [x] https://github.com/eclipse-theia/theia/issues/10661

tsmaeder avatar Aug 09 '21 09:08 tsmaeder

Types:

AccessibilityInformation missing #9965 AuthenticationProvider in theia-proposed.d.ts AuthenticationProviderAuthenticationSessionsChangeEvent in theia-proposed.d.ts CallHierarchyItem

  • missing 'tags' field #9987

CancellationError missing #9988 CodeAction

  • isPreferred missing #9989
  • disabled missing #9989

CodeActionKind

  • SourceFixAll missing #9991

CodeActionProvider no type parameter T

  • resolveCodeAction missing #9992

CodeActionProviderMetadata

  • documentation missing #9989

CommentThread

  • can reply missing #10002

CompletionItemKind

  • User missing #10003
  • Issue missing #10003

ConfigurationScope missing #10004 CustomDocumentOpenContext

  • untitledDocumentData missing #10005

DebugAdapter missing #10006 DebugAdapterDescriptor missing types DebugAdapterNampedPipeServer and DebugAdapterInlineImplementation #10006 DebugAdapterNampedPipeServer missing #10006 DebugAdapterInlineImplementation missing #10006 DebugConfigurationProviderTriggerKind missing #10008 DebugConsoleMode missing #10009 DebugProtocolBreakpoint missing #10011 DebugProtocolMessage missing #10006 DebugProtocolSource missing #10011 DebugSession

  • workspaceFolder missing #10023
  • getDebugProtocolBreakpoint missing #10011

DebugSessionOptions seems to be false positive: interface is present and looks the same. Declaration missing #10024 DiagnosticTag seems to be a false positive DocumentSelector

  • Array=>ReadonlyArray #10025

DocumentSymbolProviderMetadata missing #10026 EvaluatableExpression missing #10027 EvaluatableExpressionProvider missing #10027 Extension

  • extensionUri seems to be false positive
  • extensionKind (UI|Workspace) missing #10029

ExtensionContext

  • logURI missing #10033
  • extensionMode missing #10201
  • extension missing

ExtensionKind missing ExtensionMode missing #10201 ExtensionTerminaOptions => PseudoTerminalOptions FileSystem

  • isWritableFileSystem missing

FoldingRangeProvider

  • onDidChangeFoldingRanges missing

InlineValue missing #10028 InlineValueContext missing #10028 InlineValueEvaluatableExpression missing #10028 InlineValuesProvider missing #10028 InlineValueText missing #10028 InlineValueVariableLookup missing #10028 InputBoxOptions

  • title missing #10030

LanguageConfiguration

  • __electricCharacterSupport deprecated #10031
  • __characterPairSupport deprecated #10031

LinkedEditingRangeProvider #10200 LinkedEditingRanges #10200 LocationLink missing #10024 MarkdownString

  • constructor missing supportThemeIcons parameter
  • supportThemeIcons missing

OnEnterRule

  • previousLineText

Pseudoterminal

  • onDidChangeName

QuickPickItem

  • alwaysShow false positive

QuickPickOptions

  • title missing

Run Options missing SignatureInformation

  • activeParameter missing

SnippetParameter

  • appendChoice missing

SourcControlInputBox

  • visible missing

StatusBarItem

  • id missing #11019
  • name missing #11019
  • backgroundColor #11019
  • accessibilityInformation missing #9965

Task

  • detail missing
  • runOptions missing

TaskPresentationOptions

  • clear missing

Terminal

  • creationOptions missing
  • exitStatus missing

TerminalExitStatus missing TerminalOptions

  • strictEnv
  • hideFromUser
  • message

TextEditor

  • show missing
  • hide missing

ThemeIcon

  • color missing
  • constructor: missing color parameter

Thenable missing TreeDataProvider

  • resolveTreeItem

TreeItem

  • accessibilityInformation #9965

TreeItemLabel

  • highlights missing

TreeView

  • [x] description missing https://github.com/eclipse-theia/theia/issues/9903

TreeViewOptions

  • canSelectMany

WebviewView missing #8740 WebviewViewProvider missing #8740 WebviewViewResolveContext missing #8740

namespaces:

env

  • isNewAppInstall missing
  • isTelemetryEnabled missing
  • onDidChangeTelemetryEnabled
  • remoteName

window

  • createStatusBarItem: missing override with id parameter #10696
  • createTerminal: missing override with options parameter
  • createWebviewPanel parameter typing changed
  • registerWebviewViewProvider #8740
  • showQuickPick: missing one override
  • withScmProgress missing

workspace

  • getConfiguration parameter scope: uri => ConfigurationScope

languages

  • registerCodeActionsProvider missing parameter: metadata #9989
  • registerDocumentSymbolProvider missing parameter: metadata #10026
  • registerEvaluatableExpressionProvider missing #10027
  • registerInlineValuesProvider missing #10028
  • registerLinkedEditingRangeProvider missing #10200

debug

  • registerDebugConfigurationProvider missing parameter trigger kind #10008
  • addBreakpoints make parameter readonly
  • removeBreakpoints make parameter readonly
  • startDebugging: parameters change https://github.com/eclipse-theia/theia/pull/10656
  • stopDebugging missing https://github.com/eclipse-theia/theia/pull/10638
  • asDebugSourceUri missing https://github.com/eclipse-theia/theia/pull/10926

extensions

  • onDidChange modifier let => const

authentication

  • registerAuthenticationProvider => changed parameters

tsmaeder avatar Aug 09 '21 09:08 tsmaeder

Can you share the plan for addressing the API gap. Thanks.

SriniBlrRaman avatar Aug 24 '21 19:08 SriniBlrRaman

@SriniBlrRaman Step 1: Create issues to address 2. Get community members to sign commit resources to fixing them.

tsmaeder avatar Aug 26 '21 12:08 tsmaeder

@tsmaeder, what's the status of this project, apparently connected with Che? Is it up-to-date, and kept so automatically? If so, it might be a useful reference for this issue, and we could just rename this issue 'VSCode API Gap' and pin it (if GitHub allows that), rather than creating issues tied to particular VSCode versions? Or if we can't pin it, maybe make it a 'Project' (I don't think we have any of those yet...) so that it doesn't just sink down the issue list gradually.

Might also be nice to be able to filter the list on that page to see only unimplemented API features.

colin-grant-work avatar Aug 26 '21 15:08 colin-grant-work

@colin-grant-work I'm working on moving the code to the theia org. The problem with just pointing over there is that it's not actionable: we need to group the diffs from the API into coherent work items the community can sign up for and that can sized. My long term goal would be to move from an "ad-hoc" implementation of whatever we need right now to a release-based system where we can state "we support VS Code API v x.y.z".

See also https://dev.eclipse.org/ipzilla/show_bug.cgi?id=23652

tsmaeder avatar Aug 27 '21 07:08 tsmaeder

Really need debug.stopDebugging. It's strange to have startDebugging but not stop aye?

hzhang1902 avatar Jan 13 '22 08:01 hzhang1902

window

  • createStatusBarItem: missing override with id parameter

Fixed via https://github.com/eclipse-theia/theia/pull/10754 (issue: https://github.com/eclipse-theia/theia/issues/10696)

ndoschek avatar Feb 25 '22 09:02 ndoschek

StatusBarItem

  • id missing
  • name missing
  • backgroundColor missing

I added #11019 for these.

lucas-koehler avatar Apr 13 '22 09:04 lucas-koehler

TextDocumentChangeReason, LanguageStatusItem

I'm working on these as part of #10819.

colin-grant-work avatar Apr 15 '22 22:04 colin-grant-work

@tsmaeder I've added a couple of issues for the remaining 1.55.2 API gap and updated the notes of the vscode-theia-comparator accordingly for existing issues and the new ones I created (see PR#24).

In case you would like to update your list above too, I guess it is easiest to go through the diff of the PR.

As far as I checked all missing interfaces, there should now be an issue for everything that's still missing.

Thanks!

planger avatar May 12 '22 12:05 planger

Awesome, thx @planger

tsmaeder avatar May 12 '22 12:05 tsmaeder

@tsmaeder I believe there is actually another one for 1.55.2: https://github.com/eclipse-theia/theia/issues/11521

planger avatar Aug 03 '22 15:08 planger