From 56440fa4423f62b5b953ce08041560d3ac2ba034 Mon Sep 17 00:00:00 2001 From: Josh Spicer <23246594+joshspicer@users.noreply.github.com> Date: Mon, 10 Mar 2025 18:51:51 -0700 Subject: [PATCH] @vscode/policy-watcher 1.2.0 (#243132) * mac policy support (code changes) * adopt @vscode/policy-watcher 1.2.0 --- package-lock.json | 8 ++++---- package.json | 2 +- src/vs/base/common/product.ts | 1 + src/vs/code/electron-main/main.ts | 13 ++++++++++--- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 75139c612fb5..83a411ed2031 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "@types/semver": "^7.5.8", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.0", - "@vscode/policy-watcher": "^1.1.10", + "@vscode/policy-watcher": "^1.2.0", "@vscode/proxy-agent": "^0.32.0", "@vscode/ripgrep": "^1.15.11", "@vscode/spdlog": "^0.15.0", @@ -2830,9 +2830,9 @@ } }, "node_modules/@vscode/policy-watcher": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/@vscode/policy-watcher/-/policy-watcher-1.1.10.tgz", - "integrity": "sha512-erRJiryjhP//MnRZo+j0LxjVSFa4eZMR9HeAGxIuxlZCQrnvrIG5nv/4qBxiMH0+uE4Z74YY/Ct0wus6l9U/xg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@vscode/policy-watcher/-/policy-watcher-1.2.0.tgz", + "integrity": "sha512-6QwVEx5ibKW/hXEiDHKcqF4jv5dE8QQUgfVX2J0sDg0YCPReo+MG1oxxKTsxP8XAH11xBgDIDM0TA0ZAYpJKHw==", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index b31bd2bdf4bf..323dfc555644 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ "@types/semver": "^7.5.8", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.0", - "@vscode/policy-watcher": "^1.1.10", + "@vscode/policy-watcher": "^1.2.0", "@vscode/proxy-agent": "^0.32.0", "@vscode/ripgrep": "^1.15.11", "@vscode/spdlog": "^0.15.0", diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts index 23c6e95e9b05..189d3ac16933 100644 --- a/src/vs/base/common/product.ts +++ b/src/vs/base/common/product.ts @@ -188,6 +188,7 @@ export interface IProductConfiguration { readonly 'editSessions.store'?: Omit; readonly darwinUniversalAssetId?: string; + readonly darwinBundleIdentifier?: string; readonly profileTemplatesUrl?: string; readonly commonlyUsedSettings?: string[]; diff --git a/src/vs/code/electron-main/main.ts b/src/vs/code/electron-main/main.ts index 3f819e1662b5..84c4e12898f5 100644 --- a/src/vs/code/electron-main/main.ts +++ b/src/vs/code/electron-main/main.ts @@ -198,9 +198,16 @@ class CodeMain { fileService.registerProvider(Schemas.vscodeUserData, new FileUserDataProvider(Schemas.file, diskFileSystemProvider, Schemas.vscodeUserData, userDataProfilesMainService, uriIdentityService, logService)); // Policy - const policyService = isWindows && productService.win32RegValueName ? disposables.add(new NativePolicyService(logService, productService.win32RegValueName)) - : environmentMainService.policyFile ? disposables.add(new FilePolicyService(environmentMainService.policyFile, fileService, logService)) - : new NullPolicyService(); + let policyService: IPolicyService | undefined; + if (isWindows && productService.win32RegValueName) { + policyService = disposables.add(new NativePolicyService(logService, productService.win32RegValueName)); + } else if (isMacintosh && productService.darwinBundleIdentifier) { + policyService = disposables.add(new NativePolicyService(logService, productService.darwinBundleIdentifier)); + } else if (environmentMainService.policyFile) { + policyService = disposables.add(new FilePolicyService(environmentMainService.policyFile, fileService, logService)); + } else { + policyService = new NullPolicyService(); + } services.set(IPolicyService, policyService); // Configuration