Skip to content

Commit 17c29e8

Browse files
authored
Merge pull request #7026 from dibarbet/merge_main
Merge main into prerelease
2 parents 9dbac87 + 34217cf commit 17c29e8

31 files changed

+232
-125
lines changed

.config/1espt/PipelineAutobaseliningConfig.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,14 @@ pipelines:
3333
lastModifiedDate: 2024-03-19
3434
spotbugs:
3535
lastModifiedDate: 2024-03-19
36+
1271:
37+
retail:
38+
source:
39+
credscan:
40+
lastModifiedDate: 2024-03-27
41+
eslint:
42+
lastModifiedDate: 2024-03-27
43+
psscriptanalyzer:
44+
lastModifiedDate: 2024-03-27
45+
armory:
46+
lastModifiedDate: 2024-03-27

.config/guardian/.gdnbaselines

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
],
2222
"tool": "credscan",
2323
"ruleId": "CSCAN-GENERAL0020",
24-
"createdDate": "2024-03-19 17:56:07Z",
25-
"expirationDate": "2024-09-05 18:18:29Z",
26-
"justification": "This error is baselined with an expiration date of 180 days from 2024-03-19 18:18:29Z"
24+
"createdDate": "2024-03-27 17:49:11Z",
25+
"expirationDate": "2024-09-13 17:51:28Z",
26+
"justification": "This error is baselined with an expiration date of 180 days from 2024-03-27 17:51:28Z"
2727
}
2828
}
2929
}

.vscode/launch.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,8 @@
169169
"updatePackageDependencies"
170170
],
171171
"env": {
172-
"NEW_DEPS_URLS": "https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/1860e8fe11872d9dfd7165d7eae3597d/razorlanguageserver-linux-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/73b9c9c57d5518a05a89c754dfaae8d4/razorlanguageserver-linux-musl-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/d3c9613d66ad9beedc02e24e3f0ed302/razorlanguageserver-linux-musl-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/3228534d690bda2e0261790a0a7bf9a8/razorlanguageserver-linux-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/be3e610daa38f1c4b0848256c6392f36/razorlanguageserver-osx-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/aa05d02de40e721a169c4c2622eda9ca/razorlanguageserver-osx-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/6d1ec2d06b58e70e164923c7afa81bc5/razorlanguageserver-platformagnostic-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/8a25847c282c29e808ffbef3e1420d00/razorlanguageserver-win-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/6e2578460774f15bced049d9d72020e1/razorlanguageserver-win-x64-7.0.0-preview.24175.3.zip",
173-
"NEW_DEPS_VERSION": "7.0.0-preview.24175.3",
172+
"NEW_DEPS_URLS": "https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/63e9bcf9df9b2dc7aed8986d02eb8a99/razorlanguageserver-linux-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/d0f2ff54001f1d3f58bf70d0969ed16e/razorlanguageserver-linux-musl-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/ed94c4a4dc938d9a428202e4ce8769ec/razorlanguageserver-linux-musl-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/84627676a361059963afd170163e21f3/razorlanguageserver-linux-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/d7ca1e9512d9f585a8145588ff09857d/razorlanguageserver-osx-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/5dd13e7a225c4c0c176f50c203a5a176/razorlanguageserver-osx-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/89988e284b82abdf29d98c8bfa14e03b/razorlanguageserver-platformagnostic-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/6c21b84932bafaf6a4be27e6cccc6434/razorlanguageserver-win-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/b602af8bccf37a92bbd6429716129140/razorlanguageserver-win-x64-7.0.0-preview.24178.4.zip",
173+
"NEW_DEPS_VERSION": "7.0.0-preview.24178.4",
174174
"NEW_DEPS_ID": "Razor"
175175
},
176176
"cwd": "${workspaceFolder}"
@@ -185,8 +185,8 @@
185185
"updatePackageDependencies"
186186
],
187187
"env": {
188-
"NEW_DEPS_URLS": "https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/6b41ddb024bfee47992a0b4d5f8ef0e1/devkittelemetry-linux-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/bc19e6cbb7d098824b80592e327a3d26/devkittelemetry-linux-musl-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/bd70cd20bb79387ea83a0b0548e67fd3/devkittelemetry-linux-musl-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/733da378a1332e8514981ba0045bea6b/devkittelemetry-linux-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/72a931e50ae1f99a5dcb6aad9a79a2a8/devkittelemetry-osx-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/65b32224373413c608a3627b8784a75c/devkittelemetry-osx-x64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/7ae52e3961b64bd158e7f0580b9f3f6a/devkittelemetry-platformagnostic-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/0053a029fe51abe51c2c10a50979a208/devkittelemetry-win-arm64-7.0.0-preview.24175.3.zip,https://download.visualstudio.microsoft.com/download/pr/d5be2742-99d9-442b-ba28-8c9c64de88e7/9cb17a23cfa811a57ebef544f6aa53ac/devkittelemetry-win-x64-7.0.0-preview.24175.3.zip",
189-
"NEW_DEPS_VERSION": "7.0.0-preview.24175.3",
188+
"NEW_DEPS_URLS": "https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/704e369c5905f9ece819ebce77fb78d8/devkittelemetry-linux-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/4049a66147717a53860bbc969bf32faa/devkittelemetry-linux-musl-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/c75e84ff813be5c9833d96dc2066a364/devkittelemetry-linux-musl-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/f58cf629939f0df77d142be881f9e233/devkittelemetry-linux-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/1c912419ea45c8d95cfa28a8a04640dc/devkittelemetry-osx-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/36545ba0998f1fc380e877e38b2f35f1/devkittelemetry-osx-x64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/0a32698e8ba1ab93489d79f34f8ae8d0/devkittelemetry-platformagnostic-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/4f16ff826fedd33ad80d265c5409588b/devkittelemetry-win-arm64-7.0.0-preview.24178.4.zip,https://download.visualstudio.microsoft.com/download/pr/534f8426-a4f4-4b2d-b3ba-c4e16a38c48c/5a98d8f4e481dbb7ae3cdb3695b75c46/devkittelemetry-win-x64-7.0.0-preview.24178.4.zip",
189+
"NEW_DEPS_VERSION": "7.0.0-preview.24178.4",
190190
"NEW_DEPS_ID": "RazorTelemetry"
191191
},
192192
"cwd": "${workspaceFolder}"

CHANGELOG.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,13 @@
33
- Diagnostics related feature requests and improvements [#5951](https://github.com/dotnet/vscode-csharp/issues/5951)
44
- Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876)
55

6-
## Latest
6+
# Latest
7+
* Bump Razor to 7.0.0-preview.24178.4 (PR: [#7017](https://github.com/dotnet/vscode-csharp/pull/7017))
8+
* Add option to force runtime code generation for razor (a.k.a fuse)
9+
* [Fix vscode fuse feature flag (10169)](https://github.com/dotnet/razor/pull/10169)
10+
* [Replace `BatchingWorkQueue` with `AsyncBatchingWorkQueue` from Roslyn (10140)](https://github.com/dotnet/razor/pull/10140)
11+
12+
## 2.24.17
713
* Add oboslete classification definitions to vs2019 themes (PR: [#7011](https://github.com/dotnet/vscode-csharp/pull/7011))
814
* Bump Roslyn to 4.11.0-1.24179.11 (PR: [#7011](https://github.com/dotnet/vscode-csharp/pull/7011))
915
* Add feature to strike out obsolete symbols (PR: [#72156](https://github.com/dotnet/roslyn/pull/72156))
@@ -16,7 +22,7 @@
1622
* Use PooledArrayBuilder<SyntaxToken> throughout parsers and tokenizer (PR [#10095](https://github.com/dotnet/razor/pull/10095))
1723
* Fix hot path string allocations from ProjectKey (PR: [#10138](https://github.com/dotnet/razor/pull/10138))
1824
* Disable latest runtime patch (PR: [#10133](https://github.com/dotnet/razor/pull/10133))
19-
25+
2026
## 2.23.x
2127
* Rename RazorComponentAttribute semantic token to razorComponentAttribute (PR: [#6867](https://github.com/dotnet/vscode-csharp/pull/6867))
2228
* Drop win32-ia32 platform support (PR: [#6983](https://github.com/dotnet/vscode-csharp/pull/6983))

Directory.Build.props

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<Project>
2+
<PropertyGroup>
3+
<!--
4+
Defines the lowest supported target framework for the extension.
5+
Used by server download / integration tests to ensure they run when only this SDK is installed.
6+
-->
7+
<LowestSupportedTargetFramework>net6.0</LowestSupportedTargetFramework>
8+
</PropertyGroup>
9+
</Project>

azure-pipelines.yml

Lines changed: 48 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -18,27 +18,58 @@ stages:
1818
parameters:
1919
isOfficial: false
2020

21-
- stage: Test
22-
displayName: Test
21+
- stage: Test_Linux_Stage
22+
displayName: Test Linux
2323
dependsOn: []
2424
jobs:
25-
- template: azure-pipelines/test.yml
26-
parameters:
27-
jobName: Linux
28-
poolName: NetCore-Public
29-
demandsName: 1es-ubuntu-2004-open
25+
- job: Test_Linux_Job
26+
displayName: Test Linux
27+
strategy:
28+
matrix:
29+
DotNet6:
30+
containerName: mcr.microsoft.com/dotnet/sdk:6.0
31+
DotNet7:
32+
containerName: mcr.microsoft.com/dotnet/sdk:7.0
33+
DotNet8:
34+
containerName: mcr.microsoft.com/dotnet/sdk:8.0
35+
pool:
36+
name: NetCore-Public
37+
demands: ImageOverride -equals 1es-ubuntu-2004-open
38+
container: $[ variables['containerName'] ]
39+
steps:
40+
- template: azure-pipelines/test.yml
41+
parameters:
42+
# Prefer the dotnet from the container.
43+
installDotNet: false
44+
installAdditionalLinuxDependencies: true
3045

31-
- template: azure-pipelines/test.yml
32-
parameters:
33-
jobName: Windows
34-
poolName: NetCore-Public
35-
demandsName: 1es-windows-2022-open
46+
- stage: Test_Windows_Stage
47+
displayName: Test Windows
48+
dependsOn: []
49+
jobs:
50+
- job: Test_Windows_Job
51+
displayName: Test Windows
52+
pool:
53+
name: NetCore-Public
54+
demands: ImageOverride -equals 1es-windows-2022-open
55+
steps:
56+
- template: azure-pipelines/test.yml
57+
parameters:
58+
installDotNet: true
3659

37-
- template: azure-pipelines/test.yml
38-
parameters:
39-
jobName: MacOS
40-
poolName: Azure Pipelines
41-
vmImageName: macOS-13
60+
- stage: Test_MacOS_Stage
61+
displayName: Test MacOS
62+
dependsOn: []
63+
jobs:
64+
- job: Test_MacOS_Job
65+
displayName: Test MacOS
66+
pool:
67+
name: Azure Pipelines
68+
vmImage: macOS-13
69+
steps:
70+
- template: azure-pipelines/test.yml
71+
parameters:
72+
installDotNet: true
4273

4374
- stage: Test_OmniSharp
4475
displayName: Test OmniSharp

azure-pipelines/prereqs.yml

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ parameters:
22
- name: versionNumberOverride
33
type: string
44
default: 'default'
5+
- name: installDotNet
6+
type: boolean
7+
default: true
58

69
steps:
710

@@ -13,13 +16,18 @@ steps:
1316
inputs:
1417
versionSpec: '18.x'
1518

16-
- task: UseDotNet@2
17-
displayName: 'Install .NET Core SDKs'
18-
inputs:
19-
version: '8.x'
19+
# Some tests use predefined docker images with a specific version of .NET installed.
20+
# So we avoid installing .NET in those cases.
21+
- ${{ if eq(parameters.installDotNet, true) }}:
22+
- task: UseDotNet@2
23+
displayName: 'Install .NET Core SDKs'
24+
inputs:
25+
version: '8.x'
2026

21-
- script: |
22-
dotnet tool install --tool-path $(Agent.BuildDirectory) nbgv
27+
- script: dotnet --info
28+
displayName: Display dotnet info
29+
30+
- script: dotnet tool install --tool-path $(Agent.BuildDirectory) nbgv
2331
displayName: Install nbgv
2432

2533
# If we want to override the version, update the version.json here - vsix packaging will see this value
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
steps:
2+
- script: echo "##vso[task.setvariable variable=containerId;]$(docker ps --latest --quiet)"
3+
displayName: Set containerId variable
4+
target: host
5+
condition: eq(variables['Agent.OS'], 'Linux')
6+
7+
- script: echo "containerId is $(containerId)"
8+
displayName: Read containerId variable
9+
target: host
10+
condition: eq(variables['Agent.OS'], 'Linux')
11+
12+
# The docker containers we use for linux require some additional dependencies to run VSCode.
13+
# Installing the dependencies requires root, but the docker image we're using doesn't have root permissions (nor sudo)
14+
# We can exec as root from outside the container from the host machine.
15+
# Really we should create our own image with these pre-installed, but we'll need to figure out how to publish the image.
16+
- script: docker exec --user root $(containerId) bash -c 'apt-get update -y && apt-get install -y libglib2.0-0 libnss3 libatk-bridge2.0-dev libdrm2 libgtk-3-0 libgbm-dev libasound2 xvfb'
17+
displayName: 'Install additional Linux dependencies'
18+
target: host
19+
condition: eq(variables['Agent.OS'], 'Linux')

azure-pipelines/test.yml

Lines changed: 40 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,47 @@
11
parameters:
2-
- name: jobName
3-
type: string
4-
- name: poolName
5-
type: string
6-
- name: demandsName
7-
type: string
8-
default: ''
9-
- name: vmImageName
10-
type: string
11-
default: ''
2+
- name: installDotNet
3+
type: boolean
4+
- name: installAdditionalLinuxDependencies
5+
type: boolean
6+
default: false
127

13-
jobs:
14-
- job: Test_${{ parameters.jobName }}
15-
displayName: 'Test ${{ parameters.jobName }}'
16-
pool:
17-
${{ if ne(parameters.poolName, '') }}:
18-
name: ${{ parameters.poolName }}
19-
${{ if ne(parameters.demandsName, '') }}:
20-
demands: ImageOverride -equals ${{ parameters.demandsName }}
21-
${{ if ne(parameters.vmImageName, '') }}:
22-
vmImage: ${{ parameters.vmImageName }}
23-
steps:
24-
- checkout: self
25-
clean: true
26-
submodules: true
27-
fetchTags: false
28-
fetchDepth: 1
8+
steps:
9+
- checkout: self
10+
clean: true
11+
submodules: true
12+
fetchTags: false
13+
fetchDepth: 1
2914

30-
- template: prereqs.yml
15+
- template: prereqs.yml
16+
parameters:
17+
installDotNet: ${{ parameters.installDotNet }}
3118

32-
- template: test-prereqs.yml
19+
- ${{ if eq(parameters.installAdditionalLinuxDependencies, true) }}:
20+
- template: test-linux-docker-prereqs.yml
3321

34-
- script: npm run test
35-
displayName: 🧪 Run unit and integration tests
36-
env:
37-
DISPLAY: :99.0
22+
- template: test-prereqs.yml
23+
parameters:
24+
installAdditionalLinuxDependencies: ${{ parameters.installAdditionalLinuxDependencies }}
3825

39-
- task: PublishTestResults@2
40-
condition: succeededOrFailed()
41-
displayName: 'Publish Test Results'
42-
inputs:
43-
testResultsFormat: 'JUnit'
44-
testResultsFiles: '*junit.xml'
45-
searchFolder: '$(Build.SourcesDirectory)/out'
46-
publishRunAttachments: true
47-
mergeTestResults: true
48-
testRunTitle: $(Agent.JobName) (Attempt $(System.JobAttempt))
26+
- script: npm run test
27+
displayName: 🧪 Run unit and integration tests
28+
env:
29+
DISPLAY: :99.0
4930

50-
- task: PublishPipelineArtifact@1
51-
condition: failed()
52-
displayName: 'Upload integration test logs'
53-
inputs:
54-
targetPath: '$(Build.SourcesDirectory)/.vscode-test/user-data/logs'
55-
artifactName: 'VSCode Test Logs ($(Agent.JobName)-$(System.JobAttempt))'
31+
- task: PublishTestResults@2
32+
condition: succeededOrFailed()
33+
displayName: 'Publish Test Results'
34+
inputs:
35+
testResultsFormat: 'JUnit'
36+
testResultsFiles: '*junit.xml'
37+
searchFolder: '$(Build.SourcesDirectory)/out'
38+
publishRunAttachments: true
39+
mergeTestResults: true
40+
testRunTitle: $(Agent.JobName) (Attempt $(System.JobAttempt))
41+
42+
- task: PublishPipelineArtifact@1
43+
condition: failed()
44+
displayName: 'Upload integration test logs'
45+
inputs:
46+
targetPath: '$(Build.SourcesDirectory)/.vscode-test/user-data/logs'
47+
artifactName: 'VSCode Test Logs ($(Agent.JobName)-$(System.JobAttempt))'

0 commit comments

Comments
 (0)