Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
221 commits
Select commit Hold shift + click to select a range
99854ff
Initial plan
Copilot Nov 27, 2025
a289b2d
Fix Razor grammar to properly tokenize attribute values in nested tem…
Copilot Nov 27, 2025
3735d6c
Add comprehensive tests for inline template attribute tokenization
Copilot Nov 27, 2025
c7aff05
Add C# tokens and directive attributes to inline template tests
Copilot Nov 27, 2025
8fb819e
Fix ESLint/Prettier formatting errors in test file
Copilot Nov 27, 2025
b82e74e
Add multi-line template test case
Copilot Nov 27, 2025
b577fcd
Add test for C# in attribute value on non-first line of template
Copilot Nov 27, 2025
588f797
Update main version
siramvikram Dec 3, 2025
a350898
[automated] Update main version (#8828)
dotnet-policy-service[bot] Dec 3, 2025
00e5671
Merge branch 'main' into dev/rigibson/fbp-second-flag
RikkiGibson Dec 3, 2025
33d74db
Add second opt-out flag for file-based programs (#8823)
RikkiGibson Dec 3, 2025
7f42b2e
Create Razor tags based on the razorExtension component
JoeRobich Dec 4, 2025
6af0154
Create Razor tags based on the razorExtension component (#8830)
JoeRobich Dec 4, 2025
b24cc60
Localization result of 6af0154bdd33f944d812ed0e0bbe5de40de19534.
dotnet-bot Dec 4, 2025
f7692c4
Bump jws
dependabot[bot] Dec 4, 2025
ea1edeb
Localization result based on 6af0154bdd33f944d812ed0e0bbe5de40de19534…
dotnet-policy-service[bot] Dec 4, 2025
b8ee507
Localization result of ea1edeb29a7adc3022bad51ee97385c9cf78617c.
dotnet-bot Dec 4, 2025
6a6944e
Localization result based on ea1edeb29a7adc3022bad51ee97385c9cf78617c…
dotnet-policy-service[bot] Dec 4, 2025
00252cd
Localization result of 6a6944ea2401a68dff5b79c575791330d5177dd5.
dotnet-bot Dec 4, 2025
092c5a3
Localization result based on 6a6944ea2401a68dff5b79c575791330d5177dd5…
dotnet-policy-service[bot] Dec 4, 2025
35535ec
Bump jws (#8833)
JoeRobich Dec 5, 2025
d7dba74
Use .NET 10 release version in CI
JoeRobich Dec 5, 2025
eba3bef
Use the .NET 10 runtime
JoeRobich Dec 5, 2025
c62d6cc
Update Roslyn to 5.3.0-2.25604.5
JoeRobich Dec 5, 2025
ae08146
Update LowestSupportedTargetFramework to net8.0
JoeRobich Dec 5, 2025
03adbc2
Update changelog
JoeRobich Dec 5, 2025
5b7e0b7
Update extension to run on .NET 10 (#8839)
JoeRobich Dec 5, 2025
6868e40
Localization result of 5b7e0b701a05578d58fa8ed3db94f80cfe816733.
dotnet-bot Dec 5, 2025
c6916cf
Localization result based on 5b7e0b701a05578d58fa8ed3db94f80cfe816733…
dotnet-policy-service[bot] Dec 5, 2025
ca7edf2
Bump Razor to 10.0.0-preview.25603.3
davidwengier Dec 7, 2025
a84d546
Remove last little bit of unused code
davidwengier Dec 7, 2025
ac190d1
Update contributing docs
davidwengier Nov 27, 2025
244caed
Update Razor to 10.0.0-preview.25608.3
JoeRobich Dec 8, 2025
fa4d722
Update Razor to 10.0.0-preview.25608.3 (#8844)
JoeRobich Dec 8, 2025
72f2e39
Merge branch 'main' into BumpRazor
JoeRobich Dec 8, 2025
c00db47
Razor logging cleanup and documentation update (#8843)
JoeRobich Dec 8, 2025
a24f969
Trim Razor changelog
davidwengier Dec 8, 2025
6743a5a
Trim Razor changelog (#8845)
JoeRobich Dec 8, 2025
3c6d7e0
Update main CHANGELOG
JoeRobich Dec 10, 2025
7877182
Merge main into copilot/update-razor-grammar-for-attribute-values
Copilot Dec 11, 2025
c62cac1
Regenerate snapshots after merging main
Copilot Dec 11, 2025
c10353a
Initial plan
Copilot Dec 11, 2025
00f0891
Update CONTRIBUTING.md to clarify vsts-npm-auth is only needed for ad…
Copilot Dec 11, 2025
654012a
Fix Razor grammar to tokenize attribute values in inline templates as…
davidwengier Dec 11, 2025
86fead4
Update main version
siramvikram Dec 11, 2025
04246df
[automated] Update main version (#8854)
dotnet-policy-service[bot] Dec 11, 2025
cb69382
Apply suggestion from @JoeRobich
JoeRobich Dec 11, 2025
c28005c
[automated] Update main CHANGELOG (#8846)
JoeRobich Dec 11, 2025
a13928d
Apply suggestion from @JoeRobich
JoeRobich Dec 11, 2025
6f8b899
Update version number to 2.112
JoeRobich Dec 11, 2025
2c7b38b
Update version in CHANGELOG to 2.112.x
JoeRobich Dec 11, 2025
add05f8
Initial plan
Copilot Dec 11, 2025
a6128a9
Update createTagsTasks.ts to fetch package.json from GitHub
Copilot Dec 11, 2025
1a1bae4
Improve type safety in getCommitFromNugetAsync
Copilot Dec 11, 2025
2e0045e
Change repository from dotnet/roslyn to dotnet/vscode-csharp
Copilot Dec 11, 2025
ea2a651
Use releaseCommit instead of branch for fetching package.json
Copilot Dec 11, 2025
a8b943f
Add authentication to package.json fetch request
Copilot Dec 11, 2025
b6f831d
Update version number to 2.112 (#8855)
JoeRobich Dec 11, 2025
b324a07
Apply suggestion from @JoeRobich
JoeRobich Dec 11, 2025
586ed6b
Modify Git checkout settings in tag release stage
JoeRobich Dec 11, 2025
24814e2
[automated] Merge branch 'main' => 'prerelease' (#8853)
dotnet-policy-service[bot] Dec 11, 2025
b213217
Fetch package.json from dotnet/vscode-csharp GitHub repo for tag crea…
JoeRobich Dec 11, 2025
275d778
Bump Razor to 10.0.0-preview.25613.1
davidwengier Dec 14, 2025
2454253
Make sure to use .npmrc from the powershell commands (#8859)
phil-allen-msft Dec 15, 2025
a9286cf
Bump Razor to 10.0.0-preview.25613.1 (#8858)
davidwengier Dec 15, 2025
68eb5d0
Initial plan
Copilot Dec 19, 2025
0581813
Fix JavaScript syntax highlighting after C# if statements without bra…
Copilot Dec 19, 2025
53050ea
Fix JavaScript highlighting in Razor files after C# control structure…
davidwengier Dec 19, 2025
edca1ad
Bump Razor to 10.0.0-preview.25619.1
davidwengier Dec 21, 2025
fa0de12
Bump qs and body-parser
dependabot[bot] Jan 1, 2026
d5cac8c
Bump qs and body-parser (#8871)
dibarbet Jan 6, 2026
deb7591
Bump Razor to 10.0.0-preview.25619.1 (#8867)
davidwengier Jan 6, 2026
c573e2f
Initial plan
Copilot Jan 6, 2026
4a1c9cd
Fix .NET 10+ TFM detection for launch.json generation
Copilot Jan 6, 2026
55337d3
Use regex literals for better readability
Copilot Jan 6, 2026
ccfd7f7
Fix whitespace
JoeRobich Jan 6, 2026
c43cd40
Fix parsing of `net100` and `net110`
JoeRobich Jan 6, 2026
9e65a73
Fix code comments
JoeRobich Jan 6, 2026
1160935
Update main CHANGELOG
JoeRobich Jan 7, 2026
a341c89
Fix TFM detection for .NET 10+ to enable launch.json generation (#8873)
JoeRobich Jan 7, 2026
2dc9fb2
Update changelog
JoeRobich Jan 7, 2026
9560861
[automated] Update main CHANGELOG (#8874)
JoeRobich Jan 7, 2026
36ecddf
Add indent option
davidwengier Jan 11, 2026
a8c6a10
Bump Razor to 10.0.0-preview.26059.2
davidwengier Jan 11, 2026
28fdbe1
Bump Roslyn to 5.4.0-2.26060.1
davidwengier Jan 12, 2026
424b3e1
Update Razor and Roslyn (#8877)
JoeRobich Jan 12, 2026
867ca73
Add project context refresh support
JoeRobich Jan 9, 2026
f568e04
Localization result of 424b3e1acaa69e587e14fb3f43e3e6defcc083b6.
dotnet-bot Jan 12, 2026
12a074e
Update timeout and comments
JoeRobich Jan 12, 2026
8df55c4
Localization result based on 424b3e1acaa69e587e14fb3f43e3e6defcc083b6…
dotnet-policy-service[bot] Jan 12, 2026
bb7f7ca
Remove reference to onAutoInsert
JoeRobich Jan 12, 2026
d48eca9
Add project context refresh support (#8876)
JoeRobich Jan 12, 2026
21ed6a9
Add ability to select a documents project context.
JoeRobich Jul 2, 2024
8e5b3b8
Use the feature providers refresh notfication
JoeRobich Jan 13, 2026
303c38c
Update CHANGELOG.md
JoeRobich Jan 13, 2026
f514321
Reworked to request contexts less often
JoeRobich Jan 13, 2026
4a9c044
Rename project context query method
JoeRobich Jan 13, 2026
d5b7441
Add comments and rename map for clarity
JoeRobich Jan 13, 2026
f7ee56f
Remove active context cache entries when no documents refer to a give…
JoeRobich Jan 13, 2026
0857640
Move code and add comment.
JoeRobich Jan 13, 2026
5ec5883
Tweak comment
JoeRobich Jan 13, 2026
1cbc23f
Add ability to select a document's project context (#7328)
JoeRobich Jan 14, 2026
7f55194
Localization result of 1cbc23f6a300ad2f7159d3affcd6a42062745c69.
dotnet-bot Jan 14, 2026
ef3e7e2
Localization result based on 1cbc23f6a300ad2f7159d3affcd6a42062745c69…
dotnet-policy-service[bot] Jan 14, 2026
6bead86
Update main CHANGELOG
JoeRobich Jan 14, 2026
1f10df0
Trim changelog entries
JoeRobich Jan 14, 2026
71510da
[automated] Update main CHANGELOG (#8882)
JoeRobich Jan 14, 2026
bb75a1a
Update main version
siramvikram Jan 14, 2026
97862cd
[automated] Update main version (#8884)
dotnet-policy-service[bot] Jan 14, 2026
157e4d2
Merge branch 'prerelease' into merge/main-to-prerelease
JoeRobich Jan 14, 2026
ab3a21f
[automated] Merge branch 'main' => 'prerelease' (#8883)
dotnet-policy-service[bot] Jan 14, 2026
b4fb56b
Update required node version to v22 and required dotnet to 10.0
JoeRobich Jan 14, 2026
5d3dce3
Revert dotnet change to vsix signing pipeline
JoeRobich Jan 15, 2026
f7b5085
Update to node 24
JoeRobich Jan 15, 2026
33d4ec4
Fix typo
JoeRobich Jan 15, 2026
f48ba78
Sort context by label in the selector
JoeRobich Jan 15, 2026
3740c37
Update labels used in project context status item
JoeRobich Jan 15, 2026
b9e9a06
Use a newer prerelease of devkit in CI
JoeRobich Jan 15, 2026
bb44ec6
Update another use of node
JoeRobich Jan 16, 2026
c479955
Small fixes for project context selector (#8889)
JoeRobich Jan 16, 2026
0b32904
Localization result of c479955c14c99b193fc54ca011fcbd55c8e22e06.
dotnet-bot Jan 16, 2026
2492bad
Localization result based on c479955c14c99b193fc54ca011fcbd55c8e22e06…
dotnet-policy-service[bot] Jan 16, 2026
64956c3
Localization result of 2492bad4e70c191c8ff02e2ca38f8d67aa0c1bec.
dotnet-bot Jan 18, 2026
777f9d5
Localization result based on 2492bad4e70c191c8ff02e2ca38f8d67aa0c1bec…
dotnet-policy-service[bot] Jan 18, 2026
f472a12
Bump Razor to 10.0.0-preview.26066.2
davidwengier Jan 19, 2026
3c85e40
Initial plan
Copilot Jan 20, 2026
4288757
Add file context menu item for changing project context
Copilot Jan 20, 2026
fe772bd
Bump Razor to 10.0.0-preview.26066.2 (#8894)
davidwengier Jan 20, 2026
614a828
add new menu command and fix refresh of status bar
dibarbet Jan 20, 2026
76de7e6
Localization result of fe772bd0700c7def6c3c210ccabed6837aa5630c.
dotnet-bot Jan 20, 2026
2013078
remove commented line
dibarbet Jan 20, 2026
4d8e5d4
switch to resource langid
dibarbet Jan 20, 2026
c4c8462
include command in both file and editor context menu
dibarbet Jan 20, 2026
e7a2a1c
Localization result based on fe772bd0700c7def6c3c210ccabed6837aa5630c…
dotnet-policy-service[bot] Jan 21, 2026
a7e8959
feedback and stabilization
dibarbet Jan 21, 2026
436d49f
feedback
dibarbet Jan 21, 2026
53de89e
fix lint errors
dibarbet Jan 21, 2026
5feb124
Add explorer context menu item for changing project context (#8896)
JoeRobich Jan 21, 2026
0e434a4
Localization result of 5feb124664097d9dbbfae53db7587ef80a78251d.
dotnet-bot Jan 21, 2026
90c7a68
Update main CHANGELOG
JoeRobich Jan 21, 2026
0c960a2
[automated] Update main CHANGELOG (#8899)
JoeRobich Jan 21, 2026
1a3a4e3
Localization result of 0c960a248b4760a1eee7f796f8db5213fd390d9d.
dotnet-bot Jan 21, 2026
5742dd1
Update main version
siramvikram Jan 21, 2026
47eac52
[automated] Update main version (#8902)
dotnet-policy-service[bot] Jan 21, 2026
b434069
Localization result of 47eac529ac0f692f3bb93b177a9b9bb806118366.
dotnet-bot Jan 21, 2026
8eca75a
Clarify vsts-npm-auth only required when adding new packages (#8850)
dibarbet Jan 21, 2026
e6d6b21
Localization result based on 0c960a248b4760a1eee7f796f8db5213fd390d9d…
dotnet-policy-service[bot] Jan 21, 2026
462c543
Give server more time to exit before timing out in tests
dibarbet Jan 21, 2026
01c3a6d
Localization result based on 5feb124664097d9dbbfae53db7587ef80a78251d…
dotnet-policy-service[bot] Jan 21, 2026
7daced9
[automated] Merge branch 'main' => 'prerelease' (#8901)
dotnet-policy-service[bot] Jan 21, 2026
fe97f35
Merge branch 'main' into localization/47eac529ac0f692f3bb93b177a9b9bb…
JoeRobich Jan 21, 2026
ec059cc
Localization result based on 47eac529ac0f692f3bb93b177a9b9bb806118366…
dotnet-policy-service[bot] Jan 21, 2026
e6c9828
Initial plan
Copilot Jan 21, 2026
a83c9df
Replace vsts-npm-auth with ado-npm-auth in CONTRIBUTING.md and init.ps1
Copilot Jan 21, 2026
3d6fe96
Exclude init.ps1 from CI
JoeRobich Jan 21, 2026
44f6889
Give server more time to exit before timing out in tests (#8905)
dibarbet Jan 22, 2026
256441f
Use .NET Install Tool 3.0.0 in integration tests
JoeRobich Jan 22, 2026
ca0dbca
Update required node version to v24 and required dotnet to 10.0 (#8886)
JoeRobich Jan 22, 2026
294fc5a
Replace vsts-npm-auth with ado-npm-auth in documentation and scripts …
JoeRobich Jan 22, 2026
806a81d
Adjust Select Project Context editor menu item location
JoeRobich Jan 22, 2026
b383889
Adjust Select Project Context editor menu item location (#8907)
JoeRobich Jan 22, 2026
4e941f9
Localization result of b3838898e238351bfc99cd8dd29f2bf63e701886.
dotnet-bot Jan 22, 2026
50989b3
Localization result based on b3838898e238351bfc99cd8dd29f2bf63e701886…
dotnet-policy-service[bot] Jan 22, 2026
ecebf7c
Localization result of 50989b38b9fac64e8b87c1c2708adaee687dda7d.
dotnet-bot Jan 22, 2026
78b391c
Localization result based on 50989b38b9fac64e8b87c1c2708adaee687dda7d…
dotnet-policy-service[bot] Jan 23, 2026
12b4b27
Localization result of 78b391c3472379a344a28554fc652755276318cc.
dotnet-bot Jan 23, 2026
91e4fd5
Localization result based on 78b391c3472379a344a28554fc652755276318cc…
dotnet-policy-service[bot] Jan 23, 2026
3de4333
Localization result of 91e4fd5da112928740b69141021c816432e57be3.
dotnet-bot Jan 25, 2026
b5c2d8b
Localization result based on 91e4fd5da112928740b69141021c816432e57be3…
dotnet-policy-service[bot] Jan 25, 2026
57e099b
Bump Razor to 10.0.0-preview.26075.11
davidwengier Jan 26, 2026
35933de
Move Razor settings out of OmniSharp group, and clean up
davidwengier Jan 26, 2026
e8f5297
Fix unit test
davidwengier Jan 26, 2026
e446f1c
Bump Razor to 10.0.0-preview.26075.11 (#8914)
davidwengier Jan 26, 2026
58df47e
Localization result of e446f1ccefdc1f987a0661699782f835b4eacd1d.
dotnet-bot Jan 26, 2026
45b93bf
Localization result based on e446f1ccefdc1f987a0661699782f835b4eacd1d…
dotnet-policy-service[bot] Jan 26, 2026
f02a7a7
Update main version
siramvikram Jan 27, 2026
3e26d8e
[automated] Update main version (#8922)
dotnet-policy-service[bot] Jan 27, 2026
f32b97c
Update merge/main-to-prerelease CHANGELOG
JoeRobich Jan 27, 2026
2595f3c
Update CHANGELOG.md
JoeRobich Jan 27, 2026
77143e5
[automated] Update merge/main-to-prerelease CHANGELOG (#8923)
JoeRobich Jan 27, 2026
4956eeb
Update version.json
JoeRobich Jan 27, 2026
78786cf
Update Roslyn to 5.4.0-2.26076.6
JoeRobich Jan 27, 2026
64cc587
Update main branch for additional prerelease
JoeRobich Jan 27, 2026
ccb940e
Localization result of 3e26d8e92582bb37901ad46a1aa4dd17535e0fe9.
dotnet-bot Jan 27, 2026
9fe31b5
assert new structure for document symbols
dibarbet Jan 27, 2026
454a1bf
assert new structure for document symbols
JoeRobich Jan 27, 2026
fe8f90c
Localization result based on 3e26d8e92582bb37901ad46a1aa4dd17535e0fe9…
dotnet-policy-service[bot] Jan 27, 2026
b9f55d0
Update main branch for additional prerelease (#8924)
JoeRobich Jan 28, 2026
6439c05
Update Roslyn to tool version
dibarbet Jan 26, 2026
c750eff
[automated] Merge branch 'main' => 'prerelease' (#8921)
dotnet-policy-service[bot] Jan 28, 2026
4939cd9
Localization result of 3e26d8e92582bb37901ad46a1aa4dd17535e0fe9.
dotnet-bot Jan 27, 2026
91271ad
Update Roslyn to tool version (#8926)
dibarbet Jan 28, 2026
cb27c1e
[prerelease] Localization result based on 3e26d8e92582bb37901ad46a1aa…
JoeRobich Jan 28, 2026
8410e62
Bump xamlTools to add Implicit XMLNS feature for MAUI and TAP fixes
Jan 21, 2026
0eaa864
Update CHANGELOG
Jan 28, 2026
76bd708
Update CHANGELOG.md
noiseonwires Jan 28, 2026
f76622a
fix change project context from command pallette
dibarbet Jan 28, 2026
631f628
Ensure document is a relevant document when changing project context
JoeRobich Jan 28, 2026
460f8ad
Bump xamlTools to add Implicit XMLNS feature for MAUI and TAP fixes (…
JoeRobich Jan 28, 2026
ae82dfb
Run language server executable on mac
dibarbet Jan 29, 2026
3561be2
fix change project context from command palette (#8930)
dibarbet Jan 29, 2026
caf0296
Localization result of 3561be2465eb81194db4c7ae8f080636b63cf2e2.
dotnet-bot Jan 29, 2026
7776908
Localization result based on 3561be2465eb81194db4c7ae8f080636b63cf2e2…
dotnet-policy-service[bot] Jan 29, 2026
26293bb
Fix project context refresh handling on client
dibarbet Jan 30, 2026
0a698e0
See if other pools are faster
dibarbet Jan 30, 2026
fb8b568
Run language server executable on mac (#8931)
dibarbet Jan 30, 2026
1232acc
Fix project context refresh handling on client (#8933)
dibarbet Jan 30, 2026
d2445bc
Handle request error code `RoslynLspNonFatalRequestFailure` (#8935)
RikkiGibson Jan 30, 2026
0cfd11c
Update roslyn to 5.5.0-2.26080.10
dibarbet Feb 2, 2026
b98b247
See if other pools are faster (#8934)
dibarbet Feb 2, 2026
c6872a1
Update roslyn to 5.5.0-2.26080.10 (#8941)
dibarbet Feb 2, 2026
003e2bc
Merge branch 'main' into merge_main_to_prerelease
dibarbet Feb 2, 2026
326500c
fix version
dibarbet Feb 2, 2026
273ade9
Update version.json
dibarbet Feb 2, 2026
b594377
Apply suggestion from @dibarbet
dibarbet Feb 2, 2026
bf60fed
Apply suggestion from @dibarbet
dibarbet Feb 2, 2026
1709d48
Update version to 2.115 in version.json
dibarbet Feb 2, 2026
2f14b08
Update CHANGELOG for version 2.115.x
dibarbet Feb 2, 2026
c5c587b
Merge main to prerelease (#8943)
JoeRobich Feb 2, 2026
72698f8
Update version for stable release
github-actions[bot] Feb 4, 2026
9d46e00
Merge branch 'release' into merge/prerelease-to-release
dibarbet Feb 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/branch-snap.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ jobs:
- name: Install NodeJS
uses: actions/setup-node@v4
with:
node-version: '18.x'
- name: Install dependencies
node-version: '24.x'
- name: Install dependencies
run: npm ci
- name: Update version.json
run: |
Expand Down Expand Up @@ -59,8 +59,8 @@ jobs:
- name: Install NodeJS
uses: actions/setup-node@v4
with:
node-version: '18.x'
- name: Install dependencies
node-version: '24.x'
- name: Install dependencies
run: npm ci
- name: Update version.json for release
run: npx gulp updateVersionForStableRelease
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ jobs:
# Install Node.js (required for TypeScript compilation and npm packages)
- uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '24'
cache: 'npm'

# Install .NET SDK (required for some build components and MSBuild tasks)
- uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
dotnet-version: '10.0.x'

# Install npm dependencies
- name: Install dependencies
Expand All @@ -52,4 +52,4 @@ jobs:
- name: Install dependencies
run: gulp installDependencies


2 changes: 1 addition & 1 deletion .github/workflows/update-changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Install NodeJS
uses: actions/setup-node@v4
with:
node-version: '20.x'
node-version: '24.x'
- name: Install dependencies
run: npm ci
- name: Update CHANGELOG
Expand Down
92 changes: 92 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,98 @@
- Diagnostics related feature requests and improvements [#5951](https://github.com/dotnet/vscode-csharp/issues/5951)
- Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876)

# 2.120.x
* See 2.115.x for full list of changes.

# 2.115.x
* Update Roslyn to 5.5.0-2.26080.10 (PR: [#8941](https://github.com/dotnet/vscode-csharp/pull/8941))
* LSP: Tolerate non-mutating requests where we are unable to determine the language (PR: [#81660](https://github.com/dotnet/roslyn/pull/81660))
* Update SQLitePCLRaw to 2.1.6 and remove NETSDK1206 suppressions (PR: [#82156](https://github.com/dotnet/roslyn/pull/82156))
* Only report work done progress if the client supports it (PR: [#82184](https://github.com/dotnet/roslyn/pull/82184))
* Convert language server project into .NET tool (PR: [#82154](https://github.com/dotnet/roslyn/pull/82154))
* Add more details to stale project update warning (PR: [#82053](https://github.com/dotnet/roslyn/pull/82053))
* Cleanup server capabilities providers and delete unused LSP providers (PR: [#82116](https://github.com/dotnet/roslyn/pull/82116))
* Reduce allocations in LSP completion handling. (PR: [#82133](https://github.com/dotnet/roslyn/pull/82133))
* Update xamlTools to 18.4.11427.62 (PR: [#8929](https://github.com/dotnet/vscode-csharp/pull/8929))
* Implicit XML namespaces for MAUI feature (PR: AzDO#698019)
* Fix MAUI TAP initialization issue and improve logging (PR: AzDO#702593)

# 2.114.x
* Adjust Select Project Context editor menu item location (PR: [#8907](https://github.com/dotnet/vscode-csharp/pull/8907))
* Replace vsts-npm-auth with ado-npm-auth in documentation and scripts (PR: [#8906](https://github.com/dotnet/vscode-csharp/pull/8906))
* Clarify vsts-npm-auth only required when adding new packages (PR: [#8850](https://github.com/dotnet/vscode-csharp/pull/8850))
* Update Razor to 10.0.0-preview.26075.11 (PR: [#8914](https://github.com/dotnet/vscode-csharp/pull/8914))
* Add IndentByTwo attribute indent style option for Razor formatting (PR: [#12700](https://github.com/dotnet/razor/pull/12700))
* Fix ordering logic for folding ranges, to fix expression bodied method folding (PR: [#12695](https://github.com/dotnet/razor/pull/12695))
* Update Roslyn to 5.4.0-2.26076.6 (PR: [#8921](https://github.com/dotnet/vscode-csharp/pull/8921))
* [EnC] Use default encoding stored in the PDB for creating committed document SourceText (PR: [#81912](https://github.com/dotnet/roslyn/pull/81912))
* Fix setting checksum algorithm when mapping projects (PR: [#82051](https://github.com/dotnet/roslyn/pull/82051))
* Fix race in AbstractFormatEngine.GetChainedFormattingRules (PR: [#82079](https://github.com/dotnet/roslyn/pull/82079))
* Fix crash when seeing if code can be converted to collection expressions (PR: [#82104](https://github.com/dotnet/roslyn/pull/82104))
* feat: foreach completion (PR: [#81850](https://github.com/dotnet/roslyn/pull/81850))
* Use document structure in breadcrumbs, sticky scroll, and outline in VSCode (PR: [#81993](https://github.com/dotnet/roslyn/pull/81993))
* Keep comments when converting coalesce expressions (PR: [#82062](https://github.com/dotnet/roslyn/pull/82062))
* Adds an analyzer/fixer to inform the user when the compiler silently inserts a fallible explicit cast. (PR: [#82039](https://github.com/dotnet/roslyn/pull/82039))
* Don't offer "Use coalesce expression" when if-statement contains directives (PR: [#82041](https://github.com/dotnet/roslyn/pull/82041))
* Fix detection of embedded c# code (PR: [#82033](https://github.com/dotnet/roslyn/pull/82033))
* Fix issue with 'remove unnecessary suppression' and field/property initializers (PR: [#81899](https://github.com/dotnet/roslyn/pull/81899))
* Extensions: RemovedUnusedMembers should analyze symbol usages within extension blocks too (PR: [#81996](https://github.com/dotnet/roslyn/pull/81996))
* Don't offer 'use ??' when pointers are involved (PR: [#81988](https://github.com/dotnet/roslyn/pull/81988))
* Add 'find references' support for collection-expression-builder methods. (PR: [#81770](https://github.com/dotnet/roslyn/pull/81770))
* Support inference in collection expressions (PR: [#77534](https://github.com/dotnet/roslyn/pull/77534))

# 2.113.x
* Add explorer context menu item for changing project context (PR: [#8896](https://github.com/dotnet/vscode-csharp/pull/8896))
* Small fixes for project context selector (PR: [#8889](https://github.com/dotnet/vscode-csharp/pull/8889))
* Update Razor to 10.0.0-preview.26066.2 (PR: [#8894](https://github.com/dotnet/vscode-csharp/pull/8894))
* Ignore case when parsing enum values in settings in VS Code (PR: [#12667](https://github.com/dotnet/razor/pull/12667))

# 2.112.x
* Add project context refresh support (PR: [#8876](https://github.com/dotnet/vscode-csharp/pull/8876))
* Add ability to select a document's project context (PR: [#7328](https://github.com/dotnet/vscode-csharp/pull/7328))
* Fix TFM detection for .NET 10+ to enable launch.json generation (PR: [#8873](https://github.com/dotnet/vscode-csharp/pull/8873))
* Fix JavaScript highlighting in Razor files after C# control structures without braces (PR: [#8865](https://github.com/dotnet/vscode-csharp/pull/8865))
* Update Razor to 10.0.0-preview.26059.2 (PR: [#8877](https://github.com/dotnet/vscode-csharp/pull/8877))
* Encode double slash as underscore slash in hint names (PR: [#12597](https://github.com/dotnet/razor/pull/12597))
* Navigate to a Razor file when GTD/FAR/GTI is run in C# on the class name (PR: [#12580](https://github.com/dotnet/razor/pull/12580))
* Fix rename of components in the global namespace (PR: [#12577](https://github.com/dotnet/razor/pull/12577))
* Return a document symbol representing the "Render" method for a Razor file (PR: [#12568](https://github.com/dotnet/razor/pull/12568))
* Filter our html diagnostics when a tag helper attribute spans multiple lines (PR: [#12654](https://github.com/dotnet/razor/pull/12654))
* Handle Html indentation ourselves, rather than using the IDE formatter (PR: [#12623](https://github.com/dotnet/razor/pull/12623))
* Add new option to control attribute indent style (PR: [#12625](https://github.com/dotnet/razor/pull/12625))
* Fix formatting with adjacent C# templates (PR: [#12636](https://github.com/dotnet/razor/pull/12636))
* Emit the start of multiline implicit expressions the same as explicit. (PR: [#12624](https://github.com/dotnet/razor/pull/12624))
* Rename a .razor file when Roslyn renames the component type name (PR: [#12606](https://github.com/dotnet/razor/pull/12606))
* Rename component tags and type references when a Razor file is renamed (PR: [#12561](https://github.com/dotnet/razor/pull/12561))
* Handle conflict markers (PR: [#12642](https://github.com/dotnet/razor/pull/12642))
* Fix cross project span and edit mapping (PR: [#12614](https://github.com/dotnet/razor/pull/12614))
* Update Roslyn to 5.4.0-2.26062.9 (PR: [#7328](https://github.com/dotnet/vscode-csharp/pull/7328))
* Add a notification handler for project context changed. (PR: [#81942](https://github.com/dotnet/roslyn/pull/81942))
* Ensure IDE does not use .editorconfig for source generated files (PR: [#81911](https://github.com/dotnet/roslyn/pull/81911))
* Send a key across identifying contents of the project context list (PR: [#81940](https://github.com/dotnet/roslyn/pull/81940))
* Include Enc diagnostics in Razor requests (PR: [#81941](https://github.com/dotnet/roslyn/pull/81941))
* Fix completions after attribute list in lambdas (PR: [#81961](https://github.com/dotnet/roslyn/pull/81961))
* Add ProjectContext refresh queue (PR: [#81938](https://github.com/dotnet/roslyn/pull/81938))
* Add back async fixers (PR: [#81835](https://github.com/dotnet/roslyn/pull/81835))
* Fix crash in convert-if-to-switch (PR: [#81724](https://github.com/dotnet/roslyn/pull/81724))
* Add code-folding/structure-guides/sticky-scroll support for extension blocks (PR: [#81667](https://github.com/dotnet/roslyn/pull/81667))
* Improve go-to-def in situations where compiler returns multiple candidates. (PR: [#81583](https://github.com/dotnet/roslyn/pull/81583))
* Add willRenameFiles support, and an abstraction for extenders to implement (PR: [#81549](https://github.com/dotnet/roslyn/pull/81549))
* Support `// lang=c#` along with `// lang=c#-test` (PR: [#81558](https://github.com/dotnet/roslyn/pull/81558))

# 2.111.x
* Razor logging cleanup and documentation update (PR: [#8843](https://github.com/dotnet/vscode-csharp/pull/8843))
* Create Razor tags based on the razorExtension component (PR: [#8830](https://github.com/dotnet/vscode-csharp/pull/8830))
* Add second opt-out flag for file-based programs (PR: [#8823](https://github.com/dotnet/vscode-csharp/pull/8823))
* Update extension to run on .NET 10 (PR: [#8839](https://github.com/dotnet/vscode-csharp/pull/8839))
* Update Roslyn to 5.3.0-2.25604.5 (PR: [#8839](https://github.com/dotnet/vscode-csharp/pull/8839))
* Build our libraries against net10.0 (PR: [#81545](https://github.com/dotnet/roslyn/pull/81545))
* Update Roslyn LSP server to .net10 (PR: [#81508](https://github.com/dotnet/roslyn/pull/81508))
* Fix InvalidCastException in ConvertForToForEach with tuples (PR: [#81531](https://github.com/dotnet/roslyn/pull/81531))
* Update Razor to 10.0.0-preview.25608.3 (PR: [#8844](https://github.com/dotnet/vscode-csharp/pull/8844))
* Update C# code when Razor components are renamed (PR: [#12534](https://github.com/dotnet/razor/pull/12534))
* Ensure formatting can't change string literal contents (PR: [#12556](https://github.com/dotnet/razor/pull/12556))

# 2.110.x
* See 2.103.x for full list of changes.

Expand Down
39 changes: 17 additions & 22 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ Setting up your local development environment for the vscode-csharp repository i

Before you start, make sure you have the following software installed on your machine:

* Node.js v20 ([v20.17.0 LTS](https://nodejs.org/en/blog/release/v20.17.0)).
* Node.js v24 ([24.13.0 LTS](https://nodejs.org/en/blog/release/v24.13.0)).
* Note - Building with higher major versions of Node.js is not advised - it may work but we do not test it.
* Npm (The version shipped with node is fine)
* .NET 8.0 SDK (dotnet should be on your path)
* .NET 10.0 SDK (dotnet should be on your path)

Once you have these installed, you can navigate to the cloned vscode-csharp repository to proceed with building, running, and testing the repository.

Expand All @@ -38,11 +38,11 @@ Follow these steps to build, run, and test the repository:

If you have the ability to run powershell, you can invoke "init.ps1" from the root of the repo. If not, the following steps will get build going for you as well:

1. Run `npm install -g vsts-npm-auth`, then run `vsts-npm-auth -config .npmrc` - This command will configure your credentials for the next command.
a. If you have already authenticated before, but the token expired, you may need to run `vsts-npm-auth -config .npmrc -f` instead.
2. Run `npm i` - This command installs the project dependencies.
3. Run `npm i -g gulp` - This command installs Gulp globally.
4. Run `gulp installDependencies` - This command downloads the various dependencies as specified by the version in the [package.json](package.json) file.
1. Run `npm i` - This command installs the project dependencies.
2. Run `npm i -g gulp` - This command installs Gulp globally.
3. Run `gulp installDependencies` - This command downloads the various dependencies as specified by the version in the [package.json](package.json) file.

**Note**: Authentication with `ado-npm-auth` is only required when adding new packages to the feeds. For regular development with existing dependencies, authentication is not necessary. See the [Updating NPM packages](#updating-npm-packages) section for details.

You can now run `code .` - This command opens the project in Visual Studio Code.

Expand Down Expand Up @@ -86,7 +86,7 @@ The server DLL is typically at `$roslynRepoRoot/artifacts/bin/Microsoft.CodeAnal
1. Clone the [Razor repository](https://github.com/dotnet/razor). This repository contains the Razor server implementation.
2. Follow the build instructions provided in the repository.

The server DLL is typically at `$razorRepoRoot/artifacts/bin/rzls/Debug/net9.0`.
The extension is typically at `$razorRepoRoot/artifacts/bin/Microsoft.VisualStudioCode.RazorExtension/Debug/net9.0`.

### Debugging Local Language Servers

Expand Down Expand Up @@ -148,24 +148,19 @@ Or, in VSCode settings (`Ctrl+,`):
Add the following lines to your `settings.json`. Replace `<razorRepoRoot>` with the actual path to your Razor repository.

```json
"razor.languageServer.debug": true,
"razor.languageServer.directory": "<razorRepoRoot>/artifacts/bin/rzls/Debug/net9.0",
"razor.server.trace": "Debug"
"dotnet.server.componentPaths": {
"razorExtension": "<razorRepoRoot>/artifacts/bin/Microsoft.VisualStudioCode.RazorExtension/Debug/net9.0"
},
```

---

Or, in VSCode settings (`Ctrl+,`):

1. Search for `Razor`.
2. Set `razor.languageServer.directory` to the path of your Razor DLL.
3. Enable `razor.languageServer.debug`.
4. Set `razor.server.trace` to `Debug`. This gives you more detailed log messages in the output window.

### Updating NPM packages
We use the .NET eng AzDo artifacts feed https://dnceng.pkgs.visualstudio.com/public/_packaging/dotnet-public-npm/npm/registry/ with upstreams to the public npm registry.
Auth is required in order to pull new packages from the upstream. This can be done by running `vsts-npm-auth -config .npmrc`.
If you need to renew authorization, you can force it via `vsts-npm-auth -config .npmrc -F`

**Note**: Authentication is only required when adding new packages to the feeds. For installing existing dependencies during regular development, authentication is not necessary.

To add new packages, you must authenticate by running:
1. `npm install -g ado-npm-auth` (if not already installed)
2. `ado-npm-auth -c .npmrc`

## Creating VSIX Packages for the Extension

Expand Down
4 changes: 2 additions & 2 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@
Defines the lowest supported target framework for the extension.
Used by server download / integration tests to ensure they run when only this SDK is installed.
-->
<LowestSupportedTargetFramework>net6.0</LowestSupportedTargetFramework>
<LowestSupportedTargetFramework>net8.0</LowestSupportedTargetFramework>
</PropertyGroup>
</Project>
</Project>
4 changes: 3 additions & 1 deletion azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ pr:
# Changes to documentation are not functional changes.
- '**.md'
- CODEOWNERS
# Changes to init.ps1 is not exercised in CI
- 'init.ps1'
# Changes to the vesion is not a functional change. The extension version is updated by the branch-snap GH action.
- 'version.json'
# Changes to text files (e.g. third party notices) are not functional changes.
Expand Down Expand Up @@ -119,7 +121,7 @@ stages:
pool:
name: NetCore-Public
demands: ImageOverride -equals build.ubuntu.2204.amd64.open
containerName: mcr.microsoft.com/dotnet/sdk:10.0.100-rc.2-noble
containerName: mcr.microsoft.com/dotnet/sdk:10.0-noble

- stage: Test_Windows_Stage
displayName: Test Windows
Expand Down
9 changes: 4 additions & 5 deletions azure-pipelines/build-vsix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ stages:
name: netcore1espool-internal
image: 1es-ubuntu-2204
${{ else }}:
name: Azure Pipelines
vmImage: ubuntu-latest
name: NetCore-Public
demands: ImageOverride -equals build.ubuntu.2204.amd64.open
os: linux
steps:
- pwsh: |
Expand Down Expand Up @@ -98,8 +98,8 @@ stages:
name: netcore1espool-internal
image: 1es-ubuntu-2204
${{ else }}:
name: Azure Pipelines
vmImage: ubuntu-latest
name: NetCore-Public
demands: ImageOverride -equals build.ubuntu.2204.amd64.open
os: linux
dependsOn: SetRunVariables
variables:
Expand Down Expand Up @@ -138,7 +138,6 @@ stages:
displayName: Use .NET Core sdk 8.0.x
inputs:
version: 8.0.x

# If we're in an official build, install the signing plugin
- ${{ if eq(parameters.isOfficial, true) }}:
- task: MicroBuildSigningPlugin@4
Expand Down
6 changes: 1 addition & 5 deletions azure-pipelines/green-insertion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,7 @@ jobs:
vmImage: ubuntu-latest
steps:
- checkout: none
- task: NodeTool@0
displayName: ⚙️ Install Node.js
inputs:
versionSource: spec
versionSpec: 16.x
- template: /azure-pipelines/install-node.yml@self
- powershell: |
"registry=https://pkgs.dev.azure.com/devdiv/DevDiv/_packaging/vs-green/npm/registry/`nalways-auth=true`n" | Tee-Object -FilePath '$(Pipeline.Workspace)/.npmrc'
displayName: ⚙️ Prepare for publish
Expand Down
4 changes: 2 additions & 2 deletions azure-pipelines/install-node.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
steps:
- task: NodeTool@0
displayName: 'Install Node.js 20.x'
displayName: 'Install Node.js 24.x'
inputs:
versionSpec: '20.x'
versionSpec: '24.x'
12 changes: 5 additions & 7 deletions azure-pipelines/loc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ extends:
name: netcore1espool-internal
image: 1es-windows-2022
os: windows
settings:
networkIsolationPolicy: Permissive,CFSClean
stages:
- stage: LocalizationStage
condition: eq(variables['Build.SourceBranch'], 'refs/heads/main')
Expand All @@ -56,19 +58,15 @@ extends:
condition: ${{ parameters.publishLocalizationFile }}
artifactName: l10n
steps:
- task: NodeTool@0
displayName: 'Install Node.js 18.x'
inputs:
# Octokit client needs 18.x to have 'fetch' function.
versionSpec: '18.x'
- template: /azure-pipelines/install-node.yml@self
- checkout: self
clean: true
submodules: true
fetchTags: false
fetchDepth: 0
- pwsh: |
- pwsh: |
npm install
npm install -g gulp
npm install -g gulp --globalconfig $(Build.SourcesDirectory)/.npmrc
displayName: 'Install tools'
- pwsh: npm run compile
displayName: 'Compile'
Expand Down
7 changes: 2 additions & 5 deletions azure-pipelines/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -154,13 +154,10 @@ extends:
steps:
- checkout: self
clean: true
submodules: true
submodules: false
fetchTags: false
fetchDepth: 0
fetchDepth: 1
- template: /azure-pipelines/install-node.yml@self
- pwsh: |
git checkout $(resources.pipeline.officialBuildCI.sourceCommit)
displayName: 'Checkout build source branch'
- pwsh: |
npm ci
npm install
Expand Down
Loading