diff --git a/common/changes/@rushstack/heft-vscode-extension-plugin/bmiddha-vscode-tls-activation-event_2025-08-28-17-59.json b/common/changes/@rushstack/heft-vscode-extension-plugin/bmiddha-vscode-tls-activation-event_2025-08-28-17-59.json new file mode 100644 index 00000000000..eb987016805 --- /dev/null +++ b/common/changes/@rushstack/heft-vscode-extension-plugin/bmiddha-vscode-tls-activation-event_2025-08-28-17-59.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/heft-vscode-extension-plugin", + "comment": "add extraPackagingFlags plugin option", + "type": "patch" + } + ], + "packageName": "@rushstack/heft-vscode-extension-plugin" +} \ No newline at end of file diff --git a/heft-plugins/heft-vscode-extension-plugin/src/VSCodeExtensionPackagePlugin.ts b/heft-plugins/heft-vscode-extension-plugin/src/VSCodeExtensionPackagePlugin.ts index 5bb8e63c061..ada8af53bdc 100644 --- a/heft-plugins/heft-vscode-extension-plugin/src/VSCodeExtensionPackagePlugin.ts +++ b/heft-plugins/heft-vscode-extension-plugin/src/VSCodeExtensionPackagePlugin.ts @@ -28,6 +28,10 @@ interface IVSCodeExtensionPackagePluginOptions { * This manifest is used for signing the VS Code extension. */ manifestPath: string; + /** + * Additional flags to pass to the VSCE packaging command. + */ + extraPackagingFlags?: string[]; } const PLUGIN_NAME: 'vscode-extension-package-plugin' = 'vscode-extension-package-plugin'; @@ -41,7 +45,7 @@ export default class VSCodeExtensionPackagePlugin pluginOptions: IVSCodeExtensionPackagePluginOptions ): void { heftTaskSession.hooks.run.tapPromise(PLUGIN_NAME, async (runOptions: IHeftTaskRunHookOptions) => { - const { unpackedFolderPath, vsixPath, manifestPath } = pluginOptions; + const { unpackedFolderPath, vsixPath, manifestPath, extraPackagingFlags = [] } = pluginOptions; const { buildFolderPath } = heftConfiguration; const { logger: { terminal } @@ -53,7 +57,14 @@ export default class VSCodeExtensionPackagePlugin const packageResult: IWaitForExitResult = await executeAndWaitAsync( terminal, 'node', - [vsceScriptPath, 'package', '--no-dependencies', '--out', path.resolve(vsixPath)], + [ + vsceScriptPath, + 'package', + '--no-dependencies', + '--out', + path.resolve(vsixPath), + ...extraPackagingFlags + ], { currentWorkingDirectory: path.resolve(buildFolderPath, unpackedFolderPath) } diff --git a/vscode-extensions/debug-certificate-manager-vscode-extension/config/heft.json b/vscode-extensions/debug-certificate-manager-vscode-extension/config/heft.json index e1dd458ed26..7def96a81f3 100644 --- a/vscode-extensions/debug-certificate-manager-vscode-extension/config/heft.json +++ b/vscode-extensions/debug-certificate-manager-vscode-extension/config/heft.json @@ -1,5 +1,19 @@ { "$schema": "https://developer.microsoft.com/json-schemas/heft/v0/heft.schema.json", - "extends": "@rushstack/heft-vscode-extension-rig/profiles/default/config/heft.json" + "extends": "@rushstack/heft-vscode-extension-rig/profiles/default/config/heft.json", + + "phasesByName": { + "build": { + "tasksByName": { + "package-vsix": { + "taskPlugin": { + "options": { + "extraPackagingFlags": ["--allow-star-activation"] + } + } + } + } + } + } } diff --git a/vscode-extensions/debug-certificate-manager-vscode-extension/package.json b/vscode-extensions/debug-certificate-manager-vscode-extension/package.json index ad94ab5c49b..8083fc5169f 100644 --- a/vscode-extensions/debug-certificate-manager-vscode-extension/package.json +++ b/vscode-extensions/debug-certificate-manager-vscode-extension/package.json @@ -1,6 +1,6 @@ { "name": "debug-certificate-manager", - "version": "0.0.3", + "version": "0.0.4", "repository": { "type": "git", "url": "https://github.com/microsoft/rushstack.git", @@ -54,7 +54,7 @@ }, { "command": "debugCertificateManager.sync", - "title": "Sync TLS Certificates", + "title": "Ensure and Sync TLS Certificates", "category": "Debug Certificate Manager" }, { @@ -107,7 +107,7 @@ }, "enabledApiProposals": [], "activationEvents": [ - "workspaceContains:/.vscode/debug-certificate-manager.json" + "*" ], "dependencies": { "@rushstack/debug-certificate-manager": "workspace:*", diff --git a/vscode-extensions/debug-certificate-manager-vscode-extension/src/extension.ts b/vscode-extensions/debug-certificate-manager-vscode-extension/src/extension.ts index 806f7183dea..88d629431b3 100644 --- a/vscode-extensions/debug-certificate-manager-vscode-extension/src/extension.ts +++ b/vscode-extensions/debug-certificate-manager-vscode-extension/src/extension.ts @@ -189,9 +189,6 @@ export function activate(context: vscode.ExtensionContext): void { keyFilename: parsedConfig.keyFilename || 'rushstack-serve.key' }; } catch (error) { - void vscode.window.showErrorMessage( - 'Failed to read or parse the configuration file. Ensure that .vscode/debug-certificate-manager.json exists and is valid.' - ); terminal.writeLine( `Error reading or parsing configuration file: ${ error instanceof Error ? error.message : 'Unknown error'