Skip to content

Commit 7949751

Browse files
authored
Merge pull request #5956 from dotnet/dev/arkalyan/releasesnap-0724
Snap for prerelease on 7/24 (merge commit, not squash)
2 parents 62d65d2 + 2a0535b commit 7949751

19 files changed

+791
-179
lines changed

.github/release.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# .github/release.yml
2+
3+
changelog:
4+
exclude:
5+
labels:
6+
- Infrastructure
7+
categories:
8+
- title: Exciting New Features 🎉
9+
labels:
10+
- Feature Request
11+
- title: Bug fixes 🛠️
12+
labels:
13+
- bug
14+
- title: 'C# on LSP (Omnisharp Parity)'
15+
labels:
16+
- Omnisharp-Parity
17+
- title: Omnisharp (Legacy support)
18+
labels:
19+
- Omnisharp
20+
- title: Other Changes
21+
labels:
22+
- "*"

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ out
88
.vs/
99
.debugger/
1010
.razor/
11+
.razoromnisharp/
1112
.vscode-test/
1213
dist/
1314
*.razor.json

.vscode/settings.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,14 @@
1111
"out/": true,
1212
"vsix/": true
1313
},
14+
"[typescript]": {
15+
"editor.defaultFormatter": "esbenp.prettier-vscode"
16+
},
1417
"csharp.suppressDotnetRestoreNotification": true,
1518
"typescript.tsdk": "./node_modules/typescript/lib",
1619
"mocha.enabled": true,
1720
"omnisharp.autoStart": false,
1821
"editor.formatOnSave": false,
19-
"eslint.lintTask.enable": true
20-
}
22+
"eslint.lintTask.enable": true,
23+
"dotnet.defaultSolution": "disable"
24+
}

.vscodeignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
!.roslyn/**
55
!.omnisharp/**
66
!.razor/**
7+
!.razoromnisharp/**
78
.rpt2_cache/**
89
.github/**
910
.vscode/**

CONTRIBUTING.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ To **test** do the following: `npm run test` or <kbd>F5</kbd> in VS Code with th
2323

2424
### Using a locally developed Roslyn server
2525

26-
https://github.com/dotnet/roslyn contains the server implementation. Follow the instructions there to build the repo as normal. Once built, the server executable will be located in the build output directory, typically
26+
https://github.com/dotnet/roslyn contains the server implementation. Follow the instructions there to build the repo as normal. Once built, the server DLL will be located in the build output directory, typically
2727

28-
`$roslynRepoRoot/artifacts/bin/Microsoft.CodeAnalysis.LanguageServer/Debug/net7.0/Microsoft.CodeAnalysis.LanguageServer.exe`
28+
`$roslynRepoRoot/artifacts/bin/Microsoft.CodeAnalysis.LanguageServer/Debug/net7.0/Microsoft.CodeAnalysis.LanguageServer.dll`
2929

30-
depending on which configuration is built. Then, launch the extension here and change the VSCode setting `dotnet.server.path` to point to the Roslyn executable path you built above and restart the language server.
30+
depending on which configuration is built. Then, launch the extension here and change the VSCode setting `dotnet.server.path` to point to the Roslyn dll path you built above and restart the language server.
3131

3232
If you need to debug the server, you can set the VSCode setting `dotnet.server.waitForDebugger` to true. This will trigger a `Debugger.Launch()` on the server side as it starts.
3333

azure-pipelines/loc.yml

Whitespace-only changes.

azure-pipelines/release.yml

Lines changed: 67 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,79 @@
1-
trigger: none # We only want to trigger manually or based on resources
1+
trigger: none
22
pr: none
33

4-
resources:
5-
pipelines:
6-
- pipeline: CI
7-
source: vscode-csharp-next
8-
trigger:
9-
tags:
10-
- auto-release
4+
parameters:
5+
- name: test
6+
type: boolean
7+
default: true
8+
- name: branch
9+
type: string
10+
default: prerelease
11+
values:
12+
- prerelease
13+
- release
1114

1215
variables:
13-
- group: VisualStudioMarketplace # Expected to provide VisualStudioMarketplacePAT (https://code.visualstudio.com/api/working-with-extensions/publishing-extension#get-a-personal-access-token)
16+
# This is expected to provide VisualStudioMarketplacePAT to the release (https://code.visualstudio.com/api/working-with-extensions/publishing-extension#get-a-personal-access-token)
17+
- group: vscode-csharp release secrets
1418

1519
jobs:
16-
- job: release
20+
- job: PublishToMarketplace
1721
pool:
18-
name: AzurePipelines-EO
19-
vmImage: AzurePipelinesUbuntu20.04compliant
22+
vmImage: ubuntu-latest
2023
steps:
21-
- checkout: none
22-
- powershell: |
23-
Write-Host "##vso[build.updatebuildnumber]$(resources.pipeline.CI.runName)"
24-
if ('$(resources.pipeline.CI.runName)'.Contains('-')) {
25-
Write-Host "##vso[task.setvariable variable=IsPrerelease]true"
26-
} else {
27-
Write-Host "##vso[task.setvariable variable=IsPrerelease]false"
24+
- task: DownloadPipelineArtifact@2
25+
displayName: '📦 Download artifacts from build pipeline.'
26+
inputs:
27+
buildType: 'specific'
28+
project: 'internal'
29+
definition: 1264
30+
buildVersionToDownload: 'latestFromBranch'
31+
branchName: 'refs/heads/${{ parameters.branch }}'
32+
- pwsh: |
33+
npm install --global vsce
34+
displayName: 'Install vsce'
35+
- pwsh: |
36+
# Our build pipeline would generated build based on attempt number. Publishing the latest attempt.
37+
$allArtifacts = Get-ChildItem -Path "VSIXs - Attempt*" | Sort-Object -Descending
38+
if ($allArtifacts.Length -eq 0) {
39+
throw "No Artifacts is downloaded."
2840
}
29-
displayName: ⚙ Set up pipeline
30-
- download: CI
31-
artifact: package
32-
displayName: 🔻 Download package artifact
33-
- pwsh: | # Package publishing to pre-release https://code.visualstudio.com/api/working-with-extensions/publishing-extension#prerelease-extensions
34-
$additionalPublishArgs = 'run','vsce','publish','--skip-duplicate'
35-
if ($env:ISPRERELEASE -ne 'false') {
36-
$additionalPublishArgs += '--pre-release'
41+
42+
$publishArtifacts = $allArtifacts[0]
43+
Write-Host "All artifacts: $($allArtifacts). Publishing $($publishArtifacts)."
44+
45+
$additionalPublishArgs = , "publish"
46+
# Artifacts are published to either pre-release or release based on the build branch, https://code.visualstudio.com/api/working-with-extensions/publishing-extension#prerelease-extensions
47+
If ("${{ parameters.branch }}" -eq "prerelease") {
48+
$additionalPublishArgs += "--pre-release"
49+
Write-Host "Publish to pre-release channel."
50+
} ElseIf ("${{ parameters.branch }}" -eq "release") {
51+
Write-Host "Publish to release channel."
52+
} Else {
53+
throw "Unexpected branch name: ${{ parameters.branch }}."
3754
}
3855
$additionalPublishArgs += '--packagePath'
39-
$additionalPublishArgs += Get-ChildItem *.vsix |% { $_.Name }
40-
Write-Host "##[command]yarn $additionalPublishArgs"
41-
yarn @additionalPublishArgs
42-
displayName: 📦 Publish to Marketplace
43-
workingDirectory: $(Pipeline.Workspace)/CI/package
56+
57+
$platforms = "arm64", "x64", "ia32"
58+
$allVsixs = Get-ChildItem $publishArtifacts *.vsix
59+
foreach ($vsix in $allVsixs) {
60+
foreach ($plat in $platforms) {
61+
if ($vsix.Name.Contains($plat)) {
62+
$additionalPublishArgs += $vsix
63+
}
64+
}
65+
}
66+
67+
Write-Host "Command run is: vsce $($additionalPublishArgs)."
68+
If ("${{ parameters.test }}" -eq "true") {
69+
Write-Host "In test mode, command is printed instead of run."
70+
Write-Host "🔒 Verify PAT."
71+
vsce verify-pat ms-dotnettools
72+
}
73+
Else {
74+
vsce @additionalPublishArgs
75+
}
76+
displayName: 🚀 Publish to Marketplace
77+
workingDirectory: $(Pipeline.Workspace)
4478
env:
45-
VSCE_PAT: $(VisualStudioMarketplacePAT)
79+
VSCE_PAT: $(VSCodeMarketplacePAT)

package-lock.json

Lines changed: 123 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)