Skip to content

Commit 1607c54

Browse files
dotnet-botpsfinakivzarytovskii
authored
Merge main to release/dev17.5 (#14562)
Co-authored-by: Petr <[email protected]> Co-authored-by: Vlad Zarytovskii <[email protected]>
1 parent fec2451 commit 1607c54

File tree

182 files changed

+3664
-1787
lines changed

Some content is hidden

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

182 files changed

+3664
-1787
lines changed

FSharpBuild.Directory.Build.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
<OtherFlags>$(OtherFlags) --nowarn:3384</OtherFlags>
2828
<OtherFlags>$(OtherFlags) --times --nowarn:75</OtherFlags>
2929
<OtherFlags Condition="$(ParallelCheckingWithSignatureFilesOn) == 'true'">$(OtherFlags) --test:ParallelCheckingWithSignatureFilesOn</OtherFlags>
30+
<OtherFlags Condition="$(AdditionalFscCmdFlags) != ''">$(OtherFlags) $(AdditionalFscCmdFlags)</OtherFlags>
3031
</PropertyGroup>
3132

3233
<!-- nuget -->

INTERNAL.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,13 @@ Update the `insertTargetBranch` value at the bottom of `azure-pipelines.yml` in
6666
### When VS `main` is open for insertions for preview releases of VS:
6767

6868
1. Create a new `release/dev*` branch (e.g., `release/dev17.4`) and initially set its HEAD commit to that of the previous release (e.g., `release/dev17.3` in this case).
69-
2. Set the new branch to receive auto-merges from `main`, and also set the old release branch to flow into the new one. [This PR](https://github.com/dotnet/roslyn-tools/pull/1245/files) is a good example of what to do when a new `release/dev17.4` branch is created that should receive merges from both `main` and the previous release branch, `release/dev17.3`.
70-
3. Set the packages from the new branch to flow into the correct package feeds via the `darc` tool. To do this:
69+
```console
70+
git checkout -b release/dev17.4
71+
git reset --hard upstream/release/dev17.3
72+
git push --set-upstream upstream release/dev17.4
73+
```
74+
3. Set the new branch to receive auto-merges from `main`, and also set the old release branch to flow into the new one. [This PR](https://github.com/dotnet/roslyn-tools/pull/1245/files) is a good example of what to do when a new `release/dev17.4` branch is created that should receive merges from both `main` and the previous release branch, `release/dev17.3`.
75+
4. Set the packages from the new branch to flow into the correct package feeds via the `darc` tool. To do this:
7176
1. Ensure the latest `darc` tool is installed by running `eng/common/darc-init.ps1`.
7277
2. (only needed once) Run the command `darc authenticate`. A text file will be opened with instructions on how to populate access tokens.
7378
3. Check the current package/channel subscriptions by running `darc get-default-channels --source-repo fsharp`. For this example, notice that the latest subscription shows the F# branch `release/dev17.3` is getting added to the `VS 17.3` channel.

eng/Versions.props

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,12 @@
9797
<SystemRuntimeCompilerServicesUnsafeVersion>6.0.0</SystemRuntimeCompilerServicesUnsafeVersion>
9898
<SystemValueTupleVersion>4.5.0</SystemValueTupleVersion>
9999
<!-- Versions for package groups -->
100-
<RoslynVersion>4.4.0-3.22470.1</RoslynVersion>
101-
<VisualStudioEditorPackagesVersion>17.4.196-preview</VisualStudioEditorPackagesVersion>
102-
<MicrosoftVisualStudioShellPackagesVersion>17.4.0-preview-3-32916-145</MicrosoftVisualStudioShellPackagesVersion>
103-
<VisualStudioProjectSystemPackagesVersion>17.4.342-pre</VisualStudioProjectSystemPackagesVersion>
104-
<MicrosoftVisualStudioThreadingPackagesVersion>17.4.23-alpha</MicrosoftVisualStudioThreadingPackagesVersion>
105-
<MicrosoftBuildOverallPackagesVersion>17.4.0</MicrosoftBuildOverallPackagesVersion>
100+
<RoslynVersion>4.5.0-1.22520.13</RoslynVersion>
101+
<VisualStudioEditorPackagesVersion>17.5.49-preview</VisualStudioEditorPackagesVersion>
102+
<MicrosoftVisualStudioShellPackagesVersion>17.5.0-preview-1-33020-520</MicrosoftVisualStudioShellPackagesVersion>
103+
<VisualStudioProjectSystemPackagesVersion>17.5.202-pre-g89e17c9f72</VisualStudioProjectSystemPackagesVersion>
104+
<MicrosoftVisualStudioThreadingPackagesVersion>17.4.27</MicrosoftVisualStudioThreadingPackagesVersion>
105+
<MicrosoftBuildOverallPackagesVersion>17.4.0-preview-22469-04</MicrosoftBuildOverallPackagesVersion>
106106
<!-- Roslyn packages -->
107107
<MicrosoftCodeAnalysisEditorFeaturesVersion>$(RoslynVersion)</MicrosoftCodeAnalysisEditorFeaturesVersion>
108108
<MicrosoftCodeAnalysisEditorFeaturesTextVersion>$(RoslynVersion)</MicrosoftCodeAnalysisEditorFeaturesTextVersion>
@@ -116,7 +116,7 @@
116116
<!-- Visual Studio Shell packages -->
117117
<MicrosoftVisualStudioInteropVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioInteropVersion>
118118
<MicrosoftInternalVisualStudioInteropVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftInternalVisualStudioInteropVersion>
119-
<MicrosoftVisualStudioImagingInterop140DesignTimeVersion>17.4.0-preview-3-32916-053</MicrosoftVisualStudioImagingInterop140DesignTimeVersion>
119+
<MicrosoftVisualStudioImagingInterop140DesignTimeVersion>17.5.0-preview-1-33019-447</MicrosoftVisualStudioImagingInterop140DesignTimeVersion>
120120
<MicrosoftVisualStudioShellInterop80Version>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioShellInterop80Version>
121121
<MicrosoftVisualStudioShellInterop90Version>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioShellInterop90Version>
122122
<MicrosoftVisualStudioShellInterop100Version>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioShellInterop100Version>
@@ -133,8 +133,8 @@
133133
<MicrosoftVisualStudioShellDesignVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioShellDesignVersion>
134134
<MicrosoftVisualStudioShellFrameworkVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioShellFrameworkVersion>
135135
<MicrosoftVisualStudioPackageLanguageService150Version>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioPackageLanguageService150Version>
136-
<MicrosoftVisualStudioManagedInterfacesVersion>17.4.0-preview-3-32916-053</MicrosoftVisualStudioManagedInterfacesVersion>
137-
<MicrosoftVisualStudioProjectAggregatorVersion>17.4.0-preview-3-32916-053</MicrosoftVisualStudioProjectAggregatorVersion>
136+
<MicrosoftVisualStudioManagedInterfacesVersion>17.5.0-preview-1-33019-447</MicrosoftVisualStudioManagedInterfacesVersion>
137+
<MicrosoftVisualStudioProjectAggregatorVersion>17.5.0-preview-1-33019-447</MicrosoftVisualStudioProjectAggregatorVersion>
138138
<MicrosoftVisualStudioGraphModelVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioGraphModelVersion>
139139
<MicrosoftVisualStudioImagingVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioImagingVersion>
140140
<MicrosoftVisualStudioDesignerInterfacesVersion>$(MicrosoftVisualStudioShellPackagesVersion)</MicrosoftVisualStudioDesignerInterfacesVersion>
@@ -171,7 +171,7 @@
171171
<MicrosoftVisualStudioProjectSystemManagedVersion>2.3.6152103</MicrosoftVisualStudioProjectSystemManagedVersion>
172172
<!-- Misc. Visual Studio packages -->
173173
<MicrosoftVSSDKBuildToolsVersion>17.1.4054</MicrosoftVSSDKBuildToolsVersion>
174-
<MicrosoftVisualStudioRpcContractsVersion>17.4.7-alpha</MicrosoftVisualStudioRpcContractsVersion>
174+
<MicrosoftVisualStudioRpcContractsVersion>17.5.9-alpha-g84529e7115</MicrosoftVisualStudioRpcContractsVersion>
175175
<MicrosoftVisualFSharpMicrosoftVisualStudioShellUIInternalVersion>17.0.0</MicrosoftVisualFSharpMicrosoftVisualStudioShellUIInternalVersion>
176176
<MicrosoftVisualStudioValidationVersion>17.0.64</MicrosoftVisualStudioValidationVersion>
177177
<MicrosoftVisualStudioWCFReferenceInteropVersion>9.0.30729</MicrosoftVisualStudioWCFReferenceInteropVersion>
@@ -204,8 +204,8 @@
204204
<NUnitLiteVersion>3.11.0</NUnitLiteVersion>
205205
<NunitXmlTestLoggerVersion>2.1.80</NunitXmlTestLoggerVersion>
206206
<RoslynToolsSignToolVersion>1.0.0-beta2-dev3</RoslynToolsSignToolVersion>
207-
<StreamJsonRpcVersion>2.13.23-alpha</StreamJsonRpcVersion>
208-
<NerdbankStreamsVersion>2.9.87-alpha</NerdbankStreamsVersion>
207+
<StreamJsonRpcVersion>2.14.6-alpha</StreamJsonRpcVersion>
208+
<NerdbankStreamsVersion>2.9.112</NerdbankStreamsVersion>
209209
<XUnitVersion>2.4.1</XUnitVersion>
210210
<XUnitRunnerVersion>2.4.2</XUnitRunnerVersion>
211211
<FluentAssertionsVersion>5.10.3</FluentAssertionsVersion>

src/Compiler/AbstractIL/ilsign.fs

Lines changed: 6 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -297,12 +297,6 @@ let signStream stream keyBlob =
297297
let signature = createSignature hash keyBlob KeyType.KeyPair
298298
patchSignature stream peReader signature
299299

300-
let signFile fileName keyBlob =
301-
use fs =
302-
FileSystem.OpenFileForWriteShim(fileName, FileMode.Open, FileAccess.ReadWrite)
303-
304-
signStream fs keyBlob
305-
306300
let signatureSize (pk: byte[]) =
307301
if pk.Length < 25 then
308302
raise (CryptographicException(getResourceString (FSComp.SR.ilSignInvalidPKBlob ())))
@@ -339,18 +333,9 @@ let signerOpenKeyPairFile filePath =
339333

340334
let signerGetPublicKeyForKeyPair (kp: keyPair) : pubkey = getPublicKeyForKeyPair kp
341335

342-
let signerGetPublicKeyForKeyContainer (_kcName: keyContainerName) : pubkey =
343-
raise (NotImplementedException("signerGetPublicKeyForKeyContainer is not yet implemented"))
344-
345-
let signerCloseKeyContainer (_kc: keyContainerName) : unit =
346-
raise (NotImplementedException("signerCloseKeyContainer is not yet implemented"))
347-
348336
let signerSignatureSize (pk: pubkey) : int = signatureSize pk
349337

350-
let signerSignFileWithKeyPair (fileName: string) (kp: keyPair) : unit = signFile fileName kp
351-
352-
let signerSignFileWithKeyContainer (_fileName: string) (_kcName: keyContainerName) : unit =
353-
raise (NotImplementedException("signerSignFileWithKeyContainer is not yet implemented"))
338+
let signerSignStreamWithKeyPair stream keyBlob = signStream stream keyBlob
354339

355340
let failWithContainerSigningUnsupportedOnThisPlatform () =
356341
failwith (FSComp.SR.containerSigningUnsupportedOnThisPlatform () |> snd)
@@ -364,20 +349,12 @@ type ILStrongNameSigner =
364349
| KeyPair of keyPair
365350
| KeyContainer of keyContainerName
366351

367-
static member OpenPublicKeyOptions s p =
368-
PublicKeyOptionsSigner((signerOpenPublicKeyFile s), p)
352+
static member OpenPublicKeyOptions kp p = PublicKeyOptionsSigner(kp, p)
369353

370-
static member OpenPublicKey pubkey = PublicKeySigner pubkey
371-
static member OpenKeyPairFile s = KeyPair(signerOpenKeyPairFile s)
354+
static member OpenPublicKey bytes = PublicKeySigner bytes
355+
static member OpenKeyPairFile bytes = KeyPair(bytes)
372356
static member OpenKeyContainer s = KeyContainer s
373357

374-
member s.Close() =
375-
match s with
376-
| PublicKeySigner _
377-
| PublicKeyOptionsSigner _
378-
| KeyPair _ -> ()
379-
| KeyContainer _ -> failWithContainerSigningUnsupportedOnThisPlatform ()
380-
381358
member s.IsFullySigned =
382359
match s with
383360
| PublicKeySigner _ -> false
@@ -412,9 +389,9 @@ type ILStrongNameSigner =
412389
| KeyPair kp -> pkSignatureSize (signerGetPublicKeyForKeyPair kp)
413390
| KeyContainer _ -> failWithContainerSigningUnsupportedOnThisPlatform ()
414391

415-
member s.SignFile file =
392+
member s.SignStream stream =
416393
match s with
417394
| PublicKeySigner _ -> ()
418395
| PublicKeyOptionsSigner _ -> ()
419-
| KeyPair kp -> signerSignFileWithKeyPair file kp
396+
| KeyPair kp -> signerSignStreamWithKeyPair stream kp
420397
| KeyContainer _ -> failWithContainerSigningUnsupportedOnThisPlatform ()

src/Compiler/AbstractIL/ilsign.fsi

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,20 @@
77
88
module internal FSharp.Compiler.AbstractIL.StrongNameSign
99

10+
open System
11+
open System.IO
12+
1013
//---------------------------------------------------------------------
1114
// Strong name signing
1215
//---------------------------------------------------------------------
1316
[<Sealed>]
1417
type ILStrongNameSigner =
1518
member PublicKey: byte[]
16-
static member OpenPublicKeyOptions: string -> bool -> ILStrongNameSigner
19+
static member OpenPublicKeyOptions: byte array -> bool -> ILStrongNameSigner
1720
static member OpenPublicKey: byte[] -> ILStrongNameSigner
18-
static member OpenKeyPairFile: string -> ILStrongNameSigner
21+
static member OpenKeyPairFile: byte[] -> ILStrongNameSigner
1922
static member OpenKeyContainer: string -> ILStrongNameSigner
20-
member Close: unit -> unit
2123
member IsFullySigned: bool
2224
member PublicKey: byte[]
2325
member SignatureSize: int
24-
member SignFile: string -> unit
26+
member SignStream: Stream -> unit

0 commit comments

Comments
 (0)