Skip to content

Commit 91fe687

Browse files
authored
Merge branch 'main' into tyriar/node-pty-39
2 parents 5005cf4 + 1027a1a commit 91fe687

File tree

100 files changed

+1844
-1004
lines changed

Some content is hidden

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

100 files changed

+1844
-1004
lines changed

.github/CODENOTIFY

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,6 @@ src/vs/workbench/contrib/files/** @bpasero
103103
src/vs/workbench/contrib/chat/browser/chatListRenderer.ts @roblourens
104104
src/vs/workbench/contrib/chat/browser/chatSetup/** @bpasero
105105
src/vs/workbench/contrib/chat/browser/chatStatus/** @bpasero
106-
src/vs/workbench/contrib/chat/browser/chatInputPart.ts @bpasero
107-
src/vs/workbench/contrib/chat/browser/chatWidget.ts @bpasero
108106
src/vs/workbench/contrib/chat/browser/chatViewPane.ts @bpasero
109107
src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.ts @bpasero
110108
src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css @bpasero

.github/prompts/data.prompt.md renamed to .github/agents/data.md

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
---
2-
agent: agent
3-
description: 'Answer telemetry questions with data queries'
4-
tools: ['search', 'runCommands/runInTerminal', 'Azure MCP/kusto_query', 'githubRepo', 'extensions', 'todos']
2+
name: Data
3+
description: Answer telemetry questions with data queries using Kusto Query Language (KQL)
4+
tools:
5+
['vscode/extensions', 'execute/runInTerminal', 'read/readFile', 'search', 'web/githubRepo', 'azure-mcp/kusto_query', 'todo']
56
---
67

7-
<overview>
8+
# Role and Objective
9+
810
You are a Azure Data Explorer data analyst with expert knowledge in Kusto Query Language (KQL) and data analysis. Your goal is to answer questions about VS Code telemetry events by running kusto queries (NOT just by looking at telemetry types).
9-
</overview>
1011

11-
<workflow>
12+
# Workflow
13+
1214
1. Read `vscode-telemetry-docs/.github/copilot-instructions.md` to understand how to access VS Code's telemetry
1315
- If the `vscode-telemetry-docs` folder doesn't exist (just check your workspace_info, no extra tool call needed), run `npm run mixin-telemetry-docs` to clone the telemetry documentation.
1416
2. Analyze data using kusto queries: Don't just describe what could be queried - actually execute Kusto queries to provide real data and insights:
@@ -18,10 +20,10 @@ You are a Azure Data Explorer data analyst with expert knowledge in Kusto Query
1820
- Default to a rolling 28-day window if no specific timeframe is requested
1921
- Format and present the query results clearly to answer the user's question
2022
- Track progress of your kusto analysis using todos
21-
- If kusto queries keep failing (up to 3 repeated attempts of fixing parametersor queries), stop and inform the user.
22-
</workflow>
23+
- If kusto queries keep failing (up to 3 repeated attempts of fixing parameters or queries), stop and inform the user.
24+
25+
# Kusto Best Practices
2326

24-
<kusto-best-practices>
2527
When writing Kusto queries, follow these best practices:
2628
- **Explore data efficiently.** Use 1d (1-day) time window and `sample` operator to quickly understand data shape and volume
2729
- **Aggregate usage in proper time windows.** When no specific timeframe is provided:
@@ -30,13 +32,12 @@ When writing Kusto queries, follow these best practices:
3032
- Follow the time filtering patterns from the telemetry documentation
3133
- **Correctly map names and keys.** EventName is the prefix (`monacoworkbench/` for vscode) and lowercase event name. Properties/Measurements keys are lowercase. Any properties marked `isMeasurement` are in the Measurements bag.
3234
- **Parallelize queries when possible.** Run multiple independent queries as parallel tool calls to speed up analysis.
33-
</kusto-best-practices>
3435

35-
<format>
36+
# Output Format
37+
3638
Your response should include:
3739
- The actual Kusto query executed (formatted nicely)
3840
- Real query results with data to answer the user's question
3941
- Interpretation and analysis of the results
4042
- References to specific documentation files when applicable
4143
- Additional context or insights from the telemetry data
42-
</format>
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Prevent engineering system changes in PRs
2+
3+
on: pull_request
4+
permissions: {}
5+
6+
jobs:
7+
main:
8+
name: Prevent engineering system changes in PRs
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Get file changes
12+
uses: trilom/file-changes-action@a6ca26c14274c33b15e6499323aac178af06ad4b # v1.2.4
13+
id: file_changes
14+
- name: Check if engineering systems were modified
15+
id: engineering_systems_check
16+
run: |
17+
if cat $HOME/files.json | jq -e 'any(test("^\\.github\\/workflows\\/|^build\\/|package\\.json$"))' > /dev/null; then
18+
echo "engineering_systems_modified=true" >> $GITHUB_OUTPUT
19+
echo "Engineering systems were modified in this PR"
20+
else
21+
echo "engineering_systems_modified=false" >> $GITHUB_OUTPUT
22+
echo "No engineering systems were modified in this PR"
23+
fi
24+
- name: Prevent Copilot from modifying engineering systems
25+
if: ${{ steps.engineering_systems_check.outputs.engineering_systems_modified == 'true' && github.event.pull_request.user.login == 'Copilot' }}
26+
run: |
27+
echo "Copilot is not allowed to modify .github/workflows, build folder files, or package.json files."
28+
echo "If you need to update engineering systems, please do so manually or through authorized means."
29+
exit 1
30+
- uses: octokit/request-action@dad4362715b7fb2ddedf9772c8670824af564f0d # v2.4.0
31+
id: get_permissions
32+
if: ${{ steps.engineering_systems_check.outputs.engineering_systems_modified == 'true' && github.event.pull_request.user.login != 'Copilot' }}
33+
with:
34+
route: GET /repos/microsoft/vscode/collaborators/${{ github.event.pull_request.user.login }}/permission
35+
env:
36+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37+
- name: Set control output variable
38+
id: control
39+
if: ${{ steps.engineering_systems_check.outputs.engineering_systems_modified == 'true' && github.event.pull_request.user.login != 'Copilot' }}
40+
run: |
41+
echo "user: ${{ github.event.pull_request.user.login }}"
42+
echo "role: ${{ fromJson(steps.get_permissions.outputs.data).permission }}"
43+
echo "is dependabot: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }}"
44+
echo "should_run: ${{ !contains(fromJson('["admin", "maintain", "write"]'), fromJson(steps.get_permissions.outputs.data).permission) }}"
45+
echo "should_run=${{ !contains(fromJson('["admin", "maintain", "write"]'), fromJson(steps.get_permissions.outputs.data).permission) && github.event.pull_request.user.login != 'dependabot[bot]' }}" >> $GITHUB_OUTPUT
46+
- name: Check for engineering system changes
47+
if: ${{ steps.engineering_systems_check.outputs.engineering_systems_modified == 'true' && steps.control.outputs.should_run == 'true' }}
48+
run: |
49+
echo "Changes to .github/workflows/, build/ folder files, or package.json files aren't allowed in PRs."
50+
exit 1

.npmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
disturl="https://electronjs.org/headers"
22
target="39.2.3"
3-
ms_build_id="12857560"
3+
ms_build_id="12869810"
44
runtime="electron"
55
build_from_source="true"
66
legacy-peer-deps="true"

ThirdPartyNotices.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2675,6 +2675,10 @@ the avoidance of doubt, this paragraph does not form part of the
26752675
public licenses.
26762676

26772677
Creative Commons may be contacted at creativecommons.org.
2678+
2679+
---
2680+
2681+
Git Logo by [Jason Long](https://bsky.app/profile/jasonlong.me) is licensed under the [Creative Commons Attribution 3.0 Unported License](https://creativecommons.org/licenses/by/3.0/).
26782682
---------------------------------------------------------
26792683

26802684
---------------------------------------------------------

build/azure-pipelines/win32/sdl-scan-win32.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,16 @@ steps:
115115
Get-ChildItem '$(Agent.BuildDirectory)\scanbin' -Recurse -Filter "*.pdb"
116116
displayName: List files
117117
118+
- task: PublishSymbols@2
119+
displayName: 'Publish Symbols to Artifacts'
120+
inputs:
121+
SymbolsFolder: '$(Agent.BuildDirectory)\scanbin'
122+
SearchPattern: '**/*.pdb'
123+
IndexSources: false
124+
PublishSymbols: true
125+
SymbolServerType: 'TeamServices'
126+
SymbolsProduct: 'vscode-client'
127+
118128
- task: CopyFiles@2
119129
displayName: 'Collect Symbols for API Scan'
120130
inputs:

cli/ThirdPartyNotices.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4422,7 +4422,7 @@ DEALINGS IN THE SOFTWARE.
44224422
---------------------------------------------------------
44234423

44244424
keyring 2.3.3 - MIT OR Apache-2.0
4425-
https://github.com/hwchen/keyring-rs
4425+
https://github.com/open-source-cooperative/keyring-rs
44264426

44274427
Copyright (c) 2016 keyring Developers
44284428

extensions/git/src/artifactProvider.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,13 @@
44
*--------------------------------------------------------------------------------------------*/
55

66
import { LogOutputChannel, SourceControlArtifactProvider, SourceControlArtifactGroup, SourceControlArtifact, Event, EventEmitter, ThemeIcon, l10n, workspace, Uri, Disposable } from 'vscode';
7-
import { dispose, filterEvent, fromNow, getStashDescription, IDisposable } from './util';
7+
import { dispose, filterEvent, IDisposable } from './util';
88
import { Repository } from './repository';
99
import { Ref, RefType } from './api/git';
1010
import { OperationKind } from './operation';
1111

1212
function getArtifactDescription(ref: Ref, shortCommitLength: number): string {
1313
const segments: string[] = [];
14-
if (ref.commitDetails?.commitDate) {
15-
segments.push(fromNow(ref.commitDetails.commitDate));
16-
}
1714
if (ref.commit) {
1815
segments.push(ref.commit.substring(0, shortCommitLength));
1916
}
@@ -130,7 +127,8 @@ export class GitArtifactProvider implements SourceControlArtifactProvider, IDisp
130127
description: getArtifactDescription(r, shortCommitLength),
131128
icon: this.repository.HEAD?.type === RefType.Head && r.name === this.repository.HEAD?.name
132129
? new ThemeIcon('target')
133-
: new ThemeIcon('git-branch')
130+
: new ThemeIcon('git-branch'),
131+
timestamp: r.commitDetails?.commitDate?.getTime()
134132
}));
135133
} else if (group === 'tags') {
136134
const refs = await this.repository
@@ -142,16 +140,18 @@ export class GitArtifactProvider implements SourceControlArtifactProvider, IDisp
142140
description: getArtifactDescription(r, shortCommitLength),
143141
icon: this.repository.HEAD?.type === RefType.Tag && r.name === this.repository.HEAD?.name
144142
? new ThemeIcon('target')
145-
: new ThemeIcon('tag')
143+
: new ThemeIcon('tag'),
144+
timestamp: r.commitDetails?.commitDate?.getTime()
146145
}));
147146
} else if (group === 'stashes') {
148147
const stashes = await this.repository.getStashes();
149148

150149
return stashes.map(s => ({
151150
id: `stash@{${s.index}}`,
152151
name: s.description,
153-
description: getStashDescription(s),
154-
icon: new ThemeIcon('git-stash')
152+
description: s.branchName,
153+
icon: new ThemeIcon('git-stash'),
154+
timestamp: s.commitDate?.getTime()
155155
}));
156156
}
157157
} catch (err) {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "code-oss-dev",
33
"version": "1.107.0",
4-
"distro": "4c2f5059e83090f81ce2d12de556a3a6790dc24c",
4+
"distro": "f7daaf68414ef6e47bec698f8babc297f0d90f0d",
55
"author": {
66
"name": "Microsoft Corporation"
77
},

resources/linux/snap/snapcraft.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,8 @@ parts:
7878
7979
apps:
8080
@@NAME@@:
81-
command: electron-launch $SNAP/usr/share/@@NAME@@/bin/@@NAME@@ --no-sandbox
81+
command: electron-launch $SNAP/usr/share/@@NAME@@/bin/@@NAME@@ --no-sandbox --ozone-platform=x11
8282
common-id: @@NAME@@.desktop
8383

8484
url-handler:
85-
command: electron-launch $SNAP/usr/share/@@NAME@@/bin/@@NAME@@ --open-url --no-sandbox
85+
command: electron-launch $SNAP/usr/share/@@NAME@@/bin/@@NAME@@ --open-url --no-sandbox --ozone-platform=x11

0 commit comments

Comments
 (0)