Skip to content

Commit 6ab1e17

Browse files
authored
Initial extension interaction service (#9927)
* update error strings * use token and gate all methods behind auth extension-side * fix tests * add extension backchannel connection * fix syntax error, splat params * get cli version from rpc target, call extension for all non-prompting things * implement promptforselection to be able to show end to end command * update 'apphost' text in comments * remove IncompatibleException * fix e2e test * use configuration instead of env variable * Add WaitForConnectionAsync test * Catch ExtensionInputCanceledException when input is not provided, add ValidatePromptInputStringAsync to rpc target, implement prompting apis * remove ExtensionInputCanceledException, replace with OperationCanceledException * remove extension backchannel connector * remove WaitForConnectionAsync, just connect on backchannel method invocation * Use generated certificate (bidirectional communication) * remove comment * commit cert generator * remove debugger.isattached wait * allow aspire new command outside a workspace * return TemplateResult from ApplyTemplateAsync to allow additional fields * Add OpenNewProject method to interaction service, implement in extension * rename RemoveFormatting to RemoveSpectreFormatting for clarity
1 parent 0cabf49 commit 6ab1e17

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+2383
-1115
lines changed

extension/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@
7272
"@eslint/js": "^9.27.0",
7373
"@types/mocha": "^10.0.10",
7474
"@types/node": "20.x",
75+
"@types/node-forge": "^1.3.11",
7576
"@types/sinon": "^17.0.4",
7677
"@types/vscode": "^1.98.0",
7778
"@typescript-eslint/eslint-plugin": "^8.28.0",
@@ -95,6 +96,7 @@
9596
},
9697
"dependencies": {
9798
"@vscode/vsce": "^3.3.2",
99+
"node-forge": "^1.3.1",
98100
"sinon": "^20.0.0",
99101
"ts-node": "^10.9.2",
100102
"vscode-jsonrpc": "^8.2.1",

extension/package.nls.cs.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.de.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.es.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.fr.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.it.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.ja.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.ko.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

extension/package.nls.pl.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
"aspire-vscode.strings.aspireHostingSdkVersion": "Aspire Hosting SDK Version: {0}",
2626
"aspire-vscode.strings.aspireCliVersion": "Aspire CLI Version: {0}",
2727
"aspire-vscode.strings.requiredCapability": "Required Capability: {0}",
28-
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal"
28+
"aspire-vscode.strings.aspireTerminalName": "Aspire Terminal",
29+
"aspire-vscode.strings.rpcServerError": "RPC Server error: {0}"
2930
}

0 commit comments

Comments
 (0)