| { |
| "name": "cros-ide", |
| "displayName": "CrOS IDE", |
| "description": "ChromiumOS Development", |
| "version": "0.12.0", |
| "publisher": "Google", |
| "author": { |
| "name": "ChromeOS Velocity Team at Google" |
| }, |
| "repository": "https://chromium.googlesource.com/chromiumos/chromite/+/HEAD/ide_tooling", |
| "license": "BSD-3-Clause", |
| "engines": { |
| "vscode": "^1.63.0", |
| "node": ">=14.0.0" |
| }, |
| "icon": "media/cros-device.png", |
| "categories": [ |
| "Linters", |
| "Other", |
| "Programming Languages", |
| "Testing" |
| ], |
| "activationEvents": [ |
| "onCommand:cros-ide.chrome.Build", |
| "onCommand:cros-ide.chrome.iBuild", |
| "onCommand:cros-ide.deviceManagement.addDevice", |
| "onCommand:cros-ide.deviceManagement.addExistingHosts", |
| "onCommand:cros-ide.deviceManagement.deleteDevice", |
| "onCommand:cros-ide.deviceManagement.connectToDeviceForScreen", |
| "onCommand:cros-ide.deviceManagement.connectToDeviceForShell", |
| "onCommand:cros-ide.deviceManagement.openSystemLogViewer", |
| "onCommand:cros-ide.deviceManagement.flashPrebuiltImage", |
| "onCommand:cros-ide.deviceManagement.crosfleetLogin", |
| "onCommand:cros-ide.deviceManagement.refreshLeases", |
| "onCommand:cros-ide.deviceManagement.addLease", |
| "onCommand:cros-ide.deviceManagement.abandonLease", |
| "onCommand:cros-ide.deviceManagement.copyHostname", |
| "onCommand:cros-ide.deviceManagement.runTastTests", |
| "onCommand:cros-ide.refreshBoardsPackages", |
| "onCommand:cros-ide.gerrit.refreshComments", |
| "onCommand:cros-ide.codeSearchOpenCurrentFile", |
| "onCommand:cros-ide.codeSearchCopyCurrentFile", |
| "onCommand:cros-ide.codeSearchSearchForSelection", |
| "onCommand:cros-ide.crosWorkonStart", |
| "onCommand:cros-ide.crosWorkonStop", |
| "onCommand:cros-ide.selectBoard", |
| "onCommand:cros-ide.setDefaultBoard", |
| "onCommand:cros-ide.fileIdeBug", |
| "onCommand:cros-ide.resetUserID", |
| "onCommand:cros-ide.openEbuild", |
| "onCommand:workbench.action.tasks.runTask", |
| "onView:devices", |
| "onView:boards-packages", |
| "onView:cros-ide-status", |
| "onView:cros-ide.chromium.outputDirectories", |
| "onLanguage:c", |
| "onLanguage:cpp", |
| "onLanguage:gn", |
| "onLanguage:go", |
| "onLanguage:portage", |
| "onLanguage:python", |
| "onLanguage:sepolicy", |
| "onLanguage:shellscript", |
| "onLanguage:starlark", |
| "onLanguage:typescript", |
| "onLanguage:upstart" |
| ], |
| "main": "./dist/extension.js", |
| "contributes": { |
| "commands": [ |
| { |
| "command": "cros-ide.chrome.build", |
| "category": "CrOS", |
| "title": "Build + Deploy Ash + Lacros to DUT", |
| "icon": "$(window)", |
| "enablement": "config.cros-ide.underDevelopment.chromiumBuild" |
| }, |
| { |
| "command": "cros-ide.chrome.watchBuild", |
| "category": "CrOS", |
| "title": "Build + Deploy Ash + Lacros to DUT, restarts build on save of any file", |
| "icon": "$(window)", |
| "enablement": "config.cros-ide.underDevelopment.chromiumBuild" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.browseChromeOsBuilds", |
| "category": "CrOS", |
| "title": "Browse ChromeOS Builds", |
| "icon": "$(list-flat)", |
| "enablement": "config.cros-ide.underDevelopment.deviceManagementV2" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForScreen", |
| "category": "CrOS", |
| "title": "Connect to Device (VNC)", |
| "icon": "$(window)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForShell", |
| "category": "CrOS", |
| "title": "Connect to Device (Shell)", |
| "icon": "$(terminal)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.openSystemLogViewer", |
| "category": "CrOS", |
| "title": "Open System Log Viewer", |
| "icon": "$(output)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.addDevice", |
| "category": "CrOS", |
| "title": "Add New Device", |
| "icon": "$(add)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.addExistingHosts", |
| "category": "CrOS", |
| "title": "Add Existing Device Host Names from the SSH Config File", |
| "icon": "$(add)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.deleteDevice", |
| "category": "CrOS", |
| "title": "Delete Device", |
| "icon": "$(remove)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.flashPrebuiltImage", |
| "category": "CrOS", |
| "title": "Flash Image to Device", |
| "icon": "$(cloud-download)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.crosfleetLogin", |
| "category": "CrOS", |
| "title": "Log in to crosfleet" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.refreshLeases", |
| "category": "CrOS", |
| "title": "Refresh Leased Device List", |
| "icon": "$(refresh)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.addLease", |
| "category": "CrOS", |
| "title": "Lease a Device", |
| "icon": "$(add)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.abandonLease", |
| "category": "CrOS", |
| "title": "Abandon the Device", |
| "icon": "$(close)" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.copyHostname", |
| "category": "CrOS", |
| "title": "Copy Hostname" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.runTastTests", |
| "category": "CrOS", |
| "title": "Run tast tests", |
| "icon": "$(play)" |
| }, |
| { |
| "command": "cros-ide.refreshBoardsPackages", |
| "category": "CrOS", |
| "title": "Refresh Boards and Packages", |
| "icon": "$(refresh)", |
| "enablement": "cros-ide.chrootPath" |
| }, |
| { |
| "command": "cros-ide.codeSearchOpenCurrentFile", |
| "category": "CrOS", |
| "title": "Open in Code Search" |
| }, |
| { |
| "command": "cros-ide.codeSearchCopyCurrentFile", |
| "category": "CrOS", |
| "title": "Copy Code Search URL to clipboard" |
| }, |
| { |
| "command": "cros-ide.codeSearchSearchForSelection", |
| "category": "CrOS", |
| "title": "Search for selection in Code Search" |
| }, |
| { |
| "command": "cros-ide.crosWorkonStart", |
| "category": "CrOS", |
| "title": "Start Working on a new Package", |
| "icon": "$(add)" |
| }, |
| { |
| "command": "cros-ide.crosWorkonStop", |
| "category": "CrOS", |
| "title": "Stop Working On", |
| "icon": "$(remove)" |
| }, |
| { |
| "command": "cros-ide.openEbuild", |
| "category": "CrOS", |
| "title": "Open Ebuild", |
| "icon": "$(edit)" |
| }, |
| { |
| "command": "cros-ide.selectBoard", |
| "category": "CrOS", |
| "title": "Select target board" |
| }, |
| { |
| "command": "cros-ide.setDefaultBoard", |
| "category": "CrOS", |
| "title": "Set as Default Board" |
| }, |
| { |
| "command": "cros-ide.fileIdeBug", |
| "category": "CrOS", |
| "title": "File a bug on Buganizer" |
| }, |
| { |
| "command": "cros-ide.resetUserID", |
| "category": "CrOS", |
| "title": "Generate a new random user ID for metrics collection" |
| }, |
| { |
| "command": "cros-ide.coverage.generate", |
| "category": "CrOS", |
| "title": "Generate Coverage Data", |
| "enablement": "config.cros-ide.testCoverage.enabled" |
| }, |
| { |
| "command": "cros-ide.coverage.showReport", |
| "category": "CrOS", |
| "title": "Show Coverage Report", |
| "enablement": "config.cros-ide.underDevelopment.testCoverage" |
| }, |
| { |
| "command": "cros-ide.gerrit.internal.testAuth", |
| "category": "CrOS", |
| "title": "[Internal] Test Gerrit Auth", |
| "icon": "$(bug)", |
| "enablement": "config.cros-ide.underDevelopment.gerrit" |
| }, |
| { |
| "command": "cros-ide.gerrit.refreshComments", |
| "category": "CrOS", |
| "title": "Refresh Comments", |
| "icon": "$(refresh)" |
| }, |
| { |
| "command": "cros-ide.gerrit.collapseAllCommentThreads", |
| "category": "CrOS", |
| "title": "Collapse All Comment Threads", |
| "icon": "$(collapse-all)", |
| "enablement": "config.cros-ide.gerrit.enabled" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseCommentThread", |
| "category": "CrOS", |
| "title": "Open in Gerrit", |
| "icon": "$(link)", |
| "enablement": "config.cros-ide.gerrit.enabled" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseCommentThreadAuthor", |
| "category": "CrOS", |
| "title": "Open Author's Dashboard in Gerrit", |
| "icon": "$(account)", |
| "enablement": "config.cros-ide.gerrit.enabled" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseComment", |
| "category": "CrOS", |
| "title": "Open in Gerrit", |
| "icon": "$(link)", |
| "enablement": "config.cros-ide.gerrit.enabled" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseCommentAuthor", |
| "category": "CrOS", |
| "title": "Open Author's Dashboard in Gerrit", |
| "icon": "$(account)", |
| "enablement": "config.cros-ide.gerrit.enabled" |
| }, |
| { |
| "command": "cros-ide.gerrit.reply", |
| "category": "CrOS", |
| "title": "Save draft", |
| "enablement": "!commentIsEmpty" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndResolve", |
| "category": "CrOS", |
| "title": "Save and Resolve", |
| "enablement": "!commentIsEmpty" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndUnresolve", |
| "category": "CrOS", |
| "title": "Save and Unresolve", |
| "enablement": "!commentIsEmpty" |
| }, |
| { |
| "command": "cros-ide.showHelpForBoardsPackages", |
| "title": "Show Help", |
| "icon": "$(question)" |
| }, |
| { |
| "command": "cros-ide.showHelpForDevices", |
| "title": "Show Help", |
| "icon": "$(question)" |
| }, |
| { |
| "command": "cros-ide.showHelpForGerrit", |
| "title": "CrOS IDE Help", |
| "icon": "$(question)" |
| }, |
| { |
| "command": "cros-ide.showHelpForIdeStatus", |
| "title": "Show Help", |
| "icon": "$(question)" |
| }, |
| { |
| "command": "cros-ide.showHelpForLint", |
| "title": "CrOS IDE Help", |
| "icon": "$(question)" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.editArgs", |
| "title": "Edit args.gn", |
| "category": "Chromium" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.setCurrentLink", |
| "title": "Set as output directory", |
| "category": "Chromium" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.refresh", |
| "title": "Refresh output directories", |
| "icon": "$(refresh)", |
| "category": "Chromium" |
| } |
| ], |
| "viewsContainers": { |
| "activitybar": [ |
| { |
| "id": "cros-view", |
| "title": "CrOS Development", |
| "icon": "media/cros-device.svg" |
| } |
| ] |
| }, |
| "views": { |
| "cros-view": [ |
| { |
| "id": "devices", |
| "name": "Devices" |
| }, |
| { |
| "id": "boards-packages", |
| "name": "Boards and Packages" |
| }, |
| { |
| "id": "cros-ide-status", |
| "name": "IDE Status" |
| } |
| ], |
| "explorer": [ |
| { |
| "id": "cros-ide.chromium.outputDirectories", |
| "name": "Chromium: Output Directories", |
| "when": "config.cros-ide.chrome.outputDirectories" |
| } |
| ] |
| }, |
| "menus": { |
| "comments/commentThread/title": [ |
| { |
| "command": "cros-ide.gerrit.browseCommentThread", |
| "group": "inline@1", |
| "when": "commentThread =~ /<public>/" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseCommentThreadAuthor", |
| "group": "inline@2" |
| }, |
| { |
| "command": "cros-ide.gerrit.collapseAllCommentThreads", |
| "group": "inline@3" |
| } |
| ], |
| "comments/commentThread/context": [ |
| { |
| "command": "cros-ide.gerrit.reply", |
| "group": "inline@a", |
| "when": "commentController == cros-ide-gerrit" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndResolve", |
| "group": "inline@b", |
| "when": "commentController == cros-ide-gerrit && commentThread =~ /<unresolved>/" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndUnresolve", |
| "group": "inline@b", |
| "when": "commentController == cros-ide-gerrit && commentThread =~ /<resolved>/" |
| } |
| ], |
| "comments/comment/title": [ |
| { |
| "command": "cros-ide.gerrit.browseComment", |
| "group": "inline@1", |
| "when": "comment =~ /<public>/" |
| }, |
| { |
| "command": "cros-ide.gerrit.browseCommentAuthor", |
| "group": "inline@2" |
| } |
| ], |
| "editor/context": [ |
| { |
| "command": "cros-ide.codeSearchOpenCurrentFile" |
| }, |
| { |
| "command": "cros-ide.codeSearchCopyCurrentFile" |
| }, |
| { |
| "command": "cros-ide.codeSearchSearchForSelection" |
| } |
| ], |
| "editor/title": [ |
| { |
| "command": "cros-ide.deviceManagement.runTastTests", |
| "when": "resourcePath =~ //src/platform/tast-tests[^/]*/src/chromiumos/tast/(local|remote)/bundles/[^/]+/[^/]+/[^/]+.go$/", |
| "group": "navigation" |
| } |
| ], |
| "view/title": [ |
| { |
| "command": "cros-ide.deviceManagement.browseChromeOsBuilds", |
| "when": "view == devices && config.cros-ide.underDevelopment.deviceManagementV2", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.refreshBoardsPackages", |
| "when": "view == boards-packages", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.gerrit.refreshComments", |
| "when": "view == workbench.panel.comments", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.showHelpForBoardsPackages", |
| "when": "view == boards-packages", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.showHelpForDevices", |
| "when": "view == devices", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.showHelpForGerrit", |
| "when": "view == workbench.panel.comments", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.showHelpForIdeStatus", |
| "when": "view == cros-ide-status", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.showHelpForLint", |
| "when": "view == workbench.panel.markers.view", |
| "group": "navigation" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.refresh", |
| "when": "view == cros-ide.chromium.outputDirectories", |
| "group": "navigation" |
| } |
| ], |
| "view/item/context": [ |
| { |
| "command": "cros-ide.deviceManagement.addDevice", |
| "when": "view == devices && viewItem == category-owned", |
| "group": "inline" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForScreen", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "inline@1" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForScreen", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "1_connect@1" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForShell", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "inline@2" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.connectToDeviceForShell", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "1_connect@2" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.flashPrebuiltImage", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "inline@3" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.flashPrebuiltImage", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "2_operation@1" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.openSystemLogViewer", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "inline@4" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.openSystemLogViewer", |
| "when": "view == devices && viewItem =~ /^device-/ && config.cros-ide.underDevelopment.systemLogViewer", |
| "group": "2_operation@2" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.copyHostname", |
| "when": "view == devices && viewItem =~ /^device-/", |
| "group": "8_copy" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.deleteDevice", |
| "when": "view == devices && viewItem == device-owned", |
| "group": "inline@9" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.deleteDevice", |
| "when": "view == devices && viewItem == device-owned", |
| "group": "9_delete" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.addLease", |
| "when": "view == devices && viewItem == category-leased", |
| "group": "inline@1" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.abandonLease", |
| "when": "view == devices && viewItem == device-leased", |
| "group": "inline@9" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.abandonLease", |
| "when": "view == devices && viewItem == device-leased", |
| "group": "9_delete" |
| }, |
| { |
| "command": "cros-ide.deviceManagement.refreshLeases", |
| "when": "view == devices && viewItem == category-leased", |
| "group": "inline@2" |
| }, |
| { |
| "command": "cros-ide.crosWorkonStart", |
| "when": "view == boards-packages && viewItem =~ /^board/", |
| "group": "inline" |
| }, |
| { |
| "command": "cros-ide.crosWorkonStop", |
| "when": "view == boards-packages && viewItem == package", |
| "group": "inline" |
| }, |
| { |
| "command": "cros-ide.openEbuild", |
| "when": "view == boards-packages && viewItem == package", |
| "group": "inline" |
| }, |
| { |
| "command": "cros-ide.setDefaultBoard", |
| "when": "view == boards-packages && viewItem == board" |
| }, |
| { |
| "command": "cros-ide.coverage.generate", |
| "when": "view == boards-packages && viewItem == package && config.cros-ide.testCoverage.enabled" |
| }, |
| { |
| "command": "cros-ide.coverage.showReport", |
| "when": "view == boards-packages && viewItem == package && config.cros-ide.underDevelopment.testCoverage" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.editArgs", |
| "when": "view == cros-ide.chromium.outputDirectories" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.setCurrentLink", |
| "when": "view == cros-ide.chromium.outputDirectories && viewItem == directory" |
| } |
| ], |
| "commandPalette": [ |
| { |
| "command": "cros-ide.deviceManagement.copyHostname", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.editArgs", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.setCurrentLink", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.chromium.outputDirectories.refresh", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.gerrit.reply", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndResolve", |
| "when": "false" |
| }, |
| { |
| "command": "cros-ide.gerrit.replyAndUnresolve", |
| "when": "false" |
| } |
| ] |
| }, |
| "viewsWelcome": [ |
| { |
| "view": "boards-packages", |
| "contents": "This view shows boards set up in the chroot and packages marked active with [cros_workon start](https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_guide.md#run-cros_workon-start). You can start and stop working on new packages from the UI. Selecting a new board and initializizing the build must be done on the command line. Visit [the developer guide](https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_guide.md#Select-a-board) to learn more.\n[Show Boards and Packages](command:cros-ide.dismissBoardsPkgsWelcome)", |
| "when": "config.cros-ide.boardsAndPackages.showWelcomeMessage" |
| }, |
| { |
| "view": "boards-packages", |
| "contents": "You have not yet opened a folder with ChromeOS sources (for example, platform2).\n[Open Folder](command:vscode.openFolder)\nCrOS IDE uses source location to detect the chroot and show [initialized boards](https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_guide.md#Select-a-board).", |
| "when": "!config.cros-ide.boardsAndPackages.showWelcomeMessage && !cros-ide.chrootPath" |
| } |
| ], |
| "configuration": { |
| "title": "CrOS IDE", |
| "properties": { |
| "cros-ide.board": { |
| "type": "string", |
| "description": "The board to use for generating C++ cross references and autocompletion" |
| }, |
| "cros-ide.boardsAndPackages.showWelcomeMessage": { |
| "type": "boolean", |
| "description": "Show a description of the view and a button to go to the actual content.", |
| "default": true |
| }, |
| "cros-ide.boilerplate.enabled": { |
| "type": "boolean", |
| "description": "Insert file boilerplate when creating new files. Only works in supported projects (Chromium & ChromiumOS).", |
| "default": true |
| }, |
| "cros-ide.boilerplate.guessNamespace": { |
| "type": "boolean", |
| "description": "Guess the namespace based on other files in the same folder when inserting boilerplate (currently only works for Chromium).", |
| "default": false |
| }, |
| "cros-ide.chrome.ashBuildDir": { |
| "type": "string", |
| "description": "Build directory for ash-chrome build.", |
| "default": "out/Default" |
| }, |
| "cros-ide.chrome.dutBoard": { |
| "type": "string", |
| "description": "Type of board for the DUT", |
| "default": "nocturne" |
| }, |
| "cros-ide.chrome.dutName": { |
| "type": "string", |
| "description": "Name to use for SSH to DUT for deploy chrome", |
| "default": "DUT" |
| }, |
| "cros-ide.chrome.outputDirectories": { |
| "type": "boolean", |
| "description": "Enable view for Chromium output directories in the Explorer sidebar", |
| "default": true |
| }, |
| "cros-ide.codeSearch": { |
| "type": "string", |
| "enum": [ |
| "public", |
| "internal", |
| "gitiles" |
| ], |
| "description": "Code Search instance to open files in", |
| "default": "public" |
| }, |
| "cros-ide.codeSearchHash": { |
| "type": "boolean", |
| "description": "Link to the hash of the current revision instead of TOT", |
| "default": false |
| }, |
| "cros-ide.cppCodeCompletion.useHardcodedMapping": { |
| "type": "boolean", |
| "description": "Disable the new logic to automatically detect a Portage package from the filepath, and use hardcoded mapping instead", |
| "default": false |
| }, |
| "cros-ide.gerrit.enabled": { |
| "type": "boolean", |
| "markdownDescription": "Enable Gerrit comments.", |
| "default": true |
| }, |
| "cros-ide.ownersFiles.links": { |
| "type": "boolean", |
| "description": "Make references to other OWNERS files clickable.", |
| "default": true |
| }, |
| "cros-ide.platformEC.board": { |
| "type": "string", |
| "description": "EC target, for example, bloonchipper." |
| }, |
| "cros-ide.platformEC.mode": { |
| "type": "string", |
| "enum": [ |
| "RW", |
| "RO" |
| ], |
| "description": "Firmware mode.", |
| "default": "RW" |
| }, |
| "cros-ide.platformEC.build": { |
| "type": "string", |
| "enum": [ |
| "Makefile", |
| "Zephyr" |
| ], |
| "description": "Build system.", |
| "default": "Makefile" |
| }, |
| "cros-ide.spellchecker": { |
| "type": "boolean", |
| "description": "Enable Tricium spellchecker. Requires a reload to take effect.", |
| "default": true |
| }, |
| "cros-ide.testCoverage.enabled": { |
| "type": "boolean", |
| "markdownDescription": "Show Code Coverage ([go/cros-ide-doc-boards-pkgs#code-coverage](http://go/cros-ide-doc-boards-pkgs#code-coverage)). Requires a reload to take effect.", |
| "default": true |
| }, |
| "cros-ide.underDevelopment.chromiumBuild": { |
| "type": "boolean", |
| "description": "Enable build + deploy for chromium code (incomplete)", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.crosFormat": { |
| "type": "boolean", |
| "description": "Format files with 'cros format' (under development)", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.deviceManagementV2": { |
| "type": "boolean", |
| "description": "Enable experimental Enhanced Device Management features, such as a more complete UX for DUT setup, and auto ssh configuration.", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.deviceManagementFlashV2": { |
| "type": "boolean", |
| "description": "Enable experimental Enhanced Device Flashing features.", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.deviceManagement": { |
| "type": "boolean", |
| "description": "Enable experimental Device Management features.", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.gerrit": { |
| "type": "boolean", |
| "description": "Enable new features for Gerrit (under development)", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.platform2GtestDebugging": { |
| "type": "boolean", |
| "description": "Enable platform2 gtest debugging support", |
| "default": true |
| }, |
| "cros-ide.underDevelopment.platformEC": { |
| "type": "boolean", |
| "description": "Enable Platform EC support (under development)", |
| "default": false |
| }, |
| "cros-ide.underDevelopment.systemLogViewer": { |
| "type": "boolean", |
| "description": "Enable system log viewer", |
| "default": true |
| }, |
| "cros-ide.underDevelopment.tast": { |
| "type": "boolean", |
| "description": "Enable Tast Support", |
| "default": true |
| }, |
| "cros-ide.underDevelopment.testCoverage": { |
| "type": "boolean", |
| "description": "Enable Experimental Code Coverage Features", |
| "default": false |
| }, |
| "cros-ide.deviceManagement.devices": { |
| "type": "array", |
| "scope": "machine-overridable", |
| "description": "List of developer-owned device hostnames", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "cros-ide.metrics.collectMetrics": { |
| "type": "boolean", |
| "description": "Enable pseudonymous metrics collection. Randomly generated unique user ID resets automatically every 180 days. You can also reset it anytime by running the command in the Command Palette.", |
| "default": false |
| }, |
| "cros-ide.metrics.showMessage": { |
| "type": "boolean", |
| "description": "Show information on metrics collection.", |
| "default": true |
| }, |
| "cros-ide.paths.depotTools": { |
| "type": "string", |
| "markdownDescription": "Path to depot tools. By default we search for depot tools in the `$PATH` and then in `~/depot_tools`. When set, the path specified here will be searched first. Use it to point CrOS IDE to commands such as `cipd`." |
| } |
| } |
| }, |
| "languages": [ |
| { |
| "id": "shellscript", |
| "extensions": [ |
| ".eclass" |
| ], |
| "filenames": [ |
| "make.defaults" |
| ] |
| }, |
| { |
| "id": "gn", |
| "extensions": [ |
| ".gn", |
| ".gni" |
| ] |
| }, |
| { |
| "id": "upstart", |
| "aliases": [ |
| "Upstart" |
| ], |
| "filenamePatterns": [ |
| "**/init/*.conf", |
| "**/upstart/*.conf" |
| ], |
| "configuration": "./languages/upstart-language-configuration.json" |
| }, |
| { |
| "comment": "https://chromium.googlesource.com/chromiumos/platform/ec/+/HEAD/docs/ide-support.md#odd-file-types", |
| "id": "c", |
| "filenames": [ |
| "gpio.wrap", |
| "gpio.inc" |
| ], |
| "extensions": [ |
| ".tasklist", |
| ".irqlist", |
| ".mocklist", |
| ".testlist" |
| ] |
| }, |
| { |
| "comment": "https://chromium.googlesource.com/chromiumos/platform/ec/+/HEAD/docs/ide-support.md#odd-file-types", |
| "id": "makefile", |
| "filenames": [ |
| "Makefile.rules", |
| "Makefile.toolchain" |
| ] |
| }, |
| { |
| "id": "portage", |
| "aliases": [ |
| "Portage Config" |
| ], |
| "filenames": [ |
| "package.accept_keywords", |
| "package.force", |
| "package.keywords", |
| "package.mask", |
| "package.provided", |
| "package.unmask", |
| "package.use", |
| "package.use.force", |
| "package.use.mask" |
| ], |
| "configuration": "./languages/portage-language-configuration.json" |
| }, |
| { |
| "id": "seccomp", |
| "aliases": [ |
| "Seccomp Policy" |
| ], |
| "extensions": [ |
| ".policy" |
| ] |
| }, |
| { |
| "id": "sepolicy", |
| "aliases": [ |
| "SELinux policy" |
| ], |
| "extensions": [ |
| ".te" |
| ] |
| }, |
| { |
| "id": "starlark", |
| "aliases": [ |
| "Starlark" |
| ], |
| "extensions": [ |
| ".bzl", |
| ".star" |
| ], |
| "filenames": [ |
| "BUILD", |
| "BUILD.bazel", |
| "WORKSPACE" |
| ] |
| }, |
| { |
| "id": "xml", |
| "filenamePatterns": [ |
| "org.chromium.*.conf" |
| ] |
| } |
| ], |
| "grammars": [ |
| { |
| "language": "upstart", |
| "scopeName": "source.upstart", |
| "path": "./languages/upstart.tmLanguage.json", |
| "embeddedLanguages": { |
| "meta.embedded.block.shellscript": "shellscript" |
| } |
| }, |
| { |
| "language": "portage", |
| "scopeName": "source.portage", |
| "path": "./languages/portage.tmLanguage.json" |
| } |
| ], |
| "taskDefinitions": [ |
| { |
| "type": "platform-ec-host-test", |
| "properties": { |
| "target": { |
| "type": "string", |
| "description": "Test target to run" |
| } |
| }, |
| "when": "config.cros-ide.underDevelopment.platformEC" |
| } |
| ], |
| "problemMatchers": [ |
| { |
| "name": "platform-ec-host-unittest", |
| "label": "Host unit tests in Platform EC", |
| "fileLocation": [ |
| "relative", |
| "${workspaceFolder}" |
| ], |
| "pattern": [ |
| { |
| "regexp": "(test/[^:]*):([0-9]+): (.*)", |
| "file": 1, |
| "location": 2, |
| "message": 3 |
| } |
| ] |
| } |
| ] |
| }, |
| "scripts": { |
| "build": "rm -rf dist && webpack", |
| "build-release": "rm -rf dist && webpack --mode production --devtool hidden-source-map", |
| "build-tests": "rm -rf out && tsc -p . --outDir out", |
| "build-all": "npm run build && npm run build-tests", |
| "test": "npm run unit-test && npm run integration-test", |
| "unit-test": "npm run build-tests && NODE_PATH=out/test/unit/injected_modules NODE_OPTIONS=$NODE_OPTIONS' -r source-map-support/register' jasmine --config=src/test/unit/jasmine.json", |
| "integration-test": "npm run build-all && rm -rf .vscode-test/user-data && xvfb-run -a node ./out/test/integration/runTest.js", |
| "manual-test:cpp_xrefs": "NODE_PATH=out/test/unit/injected_modules npx ts-node ./src/test/manual/cpp_xrefs/main.ts", |
| "lint": "npm run lint-code && npm run lint-license", |
| "lint-code": "gts lint", |
| "lint-license": "jsgl --local .", |
| "fix": "gts fix", |
| "preupload": "npm run lint && npm run test", |
| "vscode:prepublish": "npm run build-release" |
| }, |
| "dependencies": { |
| "@emotion/react": "^11.10.4", |
| "@emotion/styled": "^11.10.4", |
| "@mui/icons-material": "^5.10.9", |
| "@mui/lab": "^5.0.0-alpha.103", |
| "@mui/material": "^5.10.9", |
| "@mui/x-data-grid": "^5.17.14", |
| "@novnc/novnc": "^1.3.0", |
| "date-fns": "^2.28.0", |
| "glob": "^7.1.7", |
| "is-ip": "^5.0.0", |
| "is-valid-hostname": "^1.0.2", |
| "js-base64": "^3.7.2", |
| "react": "^18.2.0", |
| "react-dom": "^18.2.0", |
| "react-hotkeys": "^2.0.0", |
| "react-virtuoso": "^4.0.3", |
| "semver": "^7.3.7", |
| "source-map-support": "^0.5.21", |
| "ssh-config": "^4.1.6", |
| "uuid": "^8.3.2", |
| "ws": "^8.6.0" |
| }, |
| "devDependencies": { |
| "@types/glob": "^7.1.4", |
| "@types/jasmine": "^4.0.0", |
| "@types/mock-fs": "^4.13.1", |
| "@types/node": "^14.17.6", |
| "@types/react": "^18.0.21", |
| "@types/react-dom": "^18.0.6", |
| "@types/semver": "^7.3.9", |
| "@types/source-map-support": "^0.5.6", |
| "@types/ssh2": "^0.5.52", |
| "@types/uuid": "^8.3.4", |
| "@types/vscode": "^1.60.0", |
| "@types/vscode-webview": "^1.57.0", |
| "@types/ws": "^8.5.3", |
| "@typescript-eslint/eslint-plugin": "^5.59.1", |
| "@typescript-eslint/parser": "^5.59.1", |
| "@vscode/codicons": "^0.0.32", |
| "@vscode/test-electron": "^2.1.3", |
| "commander": "^9.4.0", |
| "copy-webpack-plugin": "^10.2.4", |
| "esbuild-loader": "^2.20.0", |
| "eslint": "^8.39.0", |
| "eslint-config-google": "^0.14.0", |
| "eslint-plugin-import": "^2.26.0", |
| "eslint-plugin-react-hooks": "^4.6.0", |
| "git-revision-webpack-plugin": "^5.0.0", |
| "gts": "^4.0.1", |
| "jasmine": "^4.1.0", |
| "js-green-licenses": "^3.0.1", |
| "mock-fs": "^5.2.0", |
| "ovsx": "^0.5.1", |
| "ssh2": "^1.10.0", |
| "ts-loader": "^9.2.6", |
| "typescript": "^5.0.4", |
| "vscode-tmgrammar-test": "^0.1.1", |
| "vscode-uri": "^3.0.3", |
| "webpack": "^5.71.0", |
| "webpack-cli": "^4.9.2" |
| } |
| } |