Skip to content

Commit 299ad7f

Browse files
authored
Merge pull request #1737 from jkotas/merge-main
Merge from dotnet/runtime
2 parents 96b0d17 + 3f3f522 commit 299ad7f

File tree

3,969 files changed

+30798
-13933
lines changed

Some content is hidden

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

3,969 files changed

+30798
-13933
lines changed

.devcontainer/devcontainer.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@
1212

1313
"settings": {
1414
// Loading projects on demand is better for larger codebases
15-
"omnisharp.enableMsBuildLoadProjectsOnDemand": true
15+
"omnisharp.enableMsBuildLoadProjectsOnDemand": true,
16+
"omnisharp.enableRoslynAnalyzers": true,
17+
"omnisharp.enableEditorConfigSupport": true,
18+
"omnisharp.enableAsyncCompletion": true,
19+
"omnisharp.testRunSettings": "${containerWorkspaceFolder}/artifacts/obj/vscode/.runsettings"
1620
},
1721

1822
// Add the IDs of extensions you want installed when the container is created.

.devcontainer/scripts/onCreateCommand.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ set -e
44

55
# prebuild the repo, so it is ready for development
66
./build.sh libs+clr -rc Release
7+
# restore libs tests so that the project is ready to be loaded by OmniSharp
8+
./build.sh libs.tests -restore
79

810
# save the commit hash of the currently built assemblies, so developers know which version was built
911
git rev-parse HEAD > ./artifacts/prebuild.sha

.github/workflows/backport.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ on:
33
issue_comment:
44
types: [created]
55

6+
permissions:
7+
contents: write
8+
issues: write
9+
pull-requests: write
10+
611
jobs:
712
backport:
813
if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/backport to')

.github/workflows/create-codespaces-prebuild.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ on:
66
workflow_dispatch:
77
jobs:
88
createPrebuild:
9+
permissions:
10+
contents: write
911
runs-on: ubuntu-latest
1012
steps:
1113
- uses: actions/checkout@v2

.github/workflows/markdownlint.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: Markdownlint
22

3+
permissions:
4+
contents: read
5+
36
on:
47
pull_request:
58
paths:

Directory.Build.props

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,9 +296,6 @@
296296
<AppDesignerFolder>Properties</AppDesignerFolder>
297297
<!-- By default the SDK produces ref assembly for 5.0 or later -->
298298
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
299-
<!-- We have very special projects that don't always contain default references. We also build MSBuild Tasks
300-
and there are some implicit namespaces that clash, i.e System.Threading.Tasks. -->
301-
<DisableImplicitNamespaceImports_DotNet>true</DisableImplicitNamespaceImports_DotNet>
302299
</PropertyGroup>
303300

304301
<PropertyGroup>

docs/area-owners.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,10 @@ Note: Editing this file doesn't update the mapping used by the `@msftbot` issue
7272
| area-System.Composition | @jeffhandley | @buyaa-n @joperezr | Consultants: @steveharter |
7373
| area-System.Configuration | @jeffhandley | @buyaa-n @joperezr | Consultants: @steveharter |
7474
| area-System.Console | @jeffhandley | @adamsitnik @carlossanlop @jozkee | Consultants: @GrabYourPitchForks |
75-
| area-System.Data | @ajcvickers | @ajcvickers @cheenamalhotra @david-engel | <ul><li>Odbc, OleDb - @saurabh500</li></ul> |
75+
| area-System.Data | @ajcvickers | @ajcvickers @davoudeshtehari @david-engel | <ul><li>Odbc, OleDb - @saurabh500</li></ul> |
7676
| area-System.Data.Odbc | @ajcvickers | @ajcvickers | |
7777
| area-System.Data.OleDB | @ajcvickers | @ajcvickers | |
78-
| area-System.Data.SqlClient | @David-Engel | @cheenamalhotra @david-engel @karinazhou @JRahnama | Archived component - limited churn/contributions (see https://devblogs.microsoft.com/dotnet/introducing-the-new-microsoftdatasqlclient/) |
78+
| area-System.Data.SqlClient | @David-Engel | @davoudeshtehari @david-engel @jrahnama | Archived component - limited churn/contributions (see https://devblogs.microsoft.com/dotnet/introducing-the-new-microsoftdatasqlclient/) |
7979
| area-System.Diagnostics | @tommcdon | @tommcdon | |
8080
| area-System.Diagnostics-coreclr | @tommcdon | @tommcdon | |
8181
| area-System.Diagnostics-mono | @lewing | @thaystg @radical | |

docs/design/libraries/DllImportGenerator/Compatibility.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ These are all part of `NetCoreApp` and will be referenced by default unless [imp
3333

3434
Marshalling of `char` will not be supported when configured with any of the following:
3535
- [`CharSet.Ansi`, `CharSet.Auto`, or `CharSet.None`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.charset) will not be supported.
36-
- [`UnmangedType.U1` or `UnmangedType.I1`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype)
36+
- [`UnmanagedType.U1` or `UnmanagedType.I1`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype)
3737
- No explicit marshalling information - either [`DllImportAttribute.CharSet`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.dllimportattribute.charset) or [`MarshalAsAttribute`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute)
3838

3939
For `CharSet.Ansi` and `CharSet.None`, the built-in system used the [system default Windows ANSI code page](https://docs.microsoft.com/windows/win32/api/stringapiset/nf-stringapiset-widechartomultibyte) when on Windows and took the first byte of the UTF-8 encoding on non-Windows platforms. The above reasoning also applies to marshalling of a `char` as `UnmanagedType.U1` and `UnmanagedType.I1`. All approaches are fundamentally flawed and therefore not supported. If a single-byte character is expected to be marshalled it is left to the caller to convert a .NET `char` into a single `byte` prior to calling the native function.
@@ -44,7 +44,7 @@ For `CharSet.Auto`, the built-in system relied upon detection at runtime of the
4444

4545
Marshalling of `string` will not be supported when configured with any of the following:
4646
- [`CharSet.None`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.charset)
47-
- [`UnmangedType.VBByRefStr`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype)
47+
- [`UnmanagedType.VBByRefStr`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype)
4848
- No explicit marshalling information - either [`DllImportAttribute.CharSet`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.dllimportattribute.charset) or [`MarshalAsAttribute`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute)
4949

5050
When converting from native to managed, the built-in system would throw a [`MarshalDirectiveException`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshaldirectiveexception) if the string's length is over 0x7ffffff0. The generated marshalling code will no longer perform this check.
@@ -63,7 +63,7 @@ Using a custom marshaller (i.e. [`ICustomMarshaler`](https://docs.microsoft.com/
6363

6464
### Array marshalling
6565

66-
Marshalling of arrays will not be supported when using [`UnmangedType.SafeArray`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype). This implies that the following `MarshalAsAttribute` fields are unsupported: [`SafeArraySubType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.safearraysubtype) and [`SafeArrayUserDefinedSubType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.safearrayuserdefinedsubtype)
66+
Marshalling of arrays will not be supported when using [`UnmanagedType.SafeArray`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype). This implies that the following `MarshalAsAttribute` fields are unsupported: [`SafeArraySubType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.safearraysubtype) and [`SafeArrayUserDefinedSubType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.safearrayuserdefinedsubtype)
6767

6868
Specifying array-specific marshalling members on the `MarshalAsAttribute` such as [`SizeConst`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.sizeconst), [`ArraySubType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.arraysubtype), and [`SizeParamIndex`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.marshalasattribute.sizeparamindex) with non-array `UnmanagedType` types is unsupported.
6969

@@ -96,6 +96,12 @@ Unlike the built-in system, the source generator does not support marshalling fo
9696
- [`HandleRef`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.handleref)
9797
- [`StringBuilder`](https://docs.microsoft.com/dotnet/api/system.text.stringbuilder)
9898

99+
The source generator also does not support marshalling objects using the following [`UnmanagedType`](https://docs.microsoft.com/dotnet/api/system.runtime.interopservices.unmanagedtype) values:
100+
- `UnmanagedType.Interface`
101+
- `UnmanagedType.IDispatch`
102+
- `UnmanagedType.IInspectable`
103+
- `UnmanagedType.IUnknown`
104+
99105
## Version 0
100106

101107
This version is the built-in IL Stub generation system that is triggered whenever a method marked with `DllImportAttribute` is invoked.

docs/project/list-of-diagnostics.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ The PR that reveals the implementation of the `<IncludeInternalObsoleteAttribute
9191
| __`SYSLIB0034`__ | CmsSigner(CspParameters) is obsolete and is not supported. Use an alternative constructor instead. |
9292
| __`SYSLIB0035`__ | ComputeCounterSignature without specifying a CmsSigner is obsolete and is not supported. Use the overload that accepts a CmsSigner. |
9393
| __`SYSLIB0036`__ | Regex.CompileToAssembly is obsolete and not supported. Use RegexGeneratorAttribute with the regular expression source generator instead. |
94+
| __`SYSLIB0037`__ | AssemblyName members HashAlgorithm, ProcessorArchitecture, and VersionCompatibility are obsolete and not supported. |
9495

9596
## Analyzer Warnings
9697

docs/workflow/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ The repo can be built for the following platforms, using the provided setup and
99
| x64 | &#x2714; | &#x2714; | &#x2714; | &#x2714; |
1010
| x86 | &#x2714; | | | |
1111
| ARM | &#x2714; | &#x2714; | | |
12-
| ARM64 | &#x2714; | &#x2714; | | |
12+
| ARM64 | &#x2714; | &#x2714; | &#x2714; | |
1313
| | [Requirements](requirements/windows-requirements.md) | [Requirements](requirements/linux-requirements.md) | [Requirements](requirements/macos-requirements.md) | [Requirements](requirements/freebsd-requirements.md)
1414

1515
Before proceeding further, please click on the link above that matches your machine and ensure you have installed all the prerequisites for the build to work.

eng/CodeAnalysis.src.globalconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -386,6 +386,12 @@ dotnet_diagnostic.CA1847.severity = warning
386386
# CA1848: Use the LoggerMessage delegates
387387
dotnet_diagnostic.CA1848.severity = none
388388

389+
# CA1849: Call async methods when in an async method
390+
dotnet_diagnostic.CA1849.severity = suggestion
391+
392+
# CA1850: Prefer static 'HashData' method over 'ComputeHash'
393+
dotnet_diagnostic.CA1850.severity = warning
394+
389395
# CA2000: Dispose objects before losing scope
390396
dotnet_diagnostic.CA2000.severity = none
391397

eng/CodeAnalysis.test.globalconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,12 @@ dotnet_diagnostic.CA1847.severity = none
384384
# CA1848: Use the LoggerMessage delegates
385385
dotnet_diagnostic.CA1848.severity = none
386386

387+
# CA1849: Call async methods when in an async method
388+
dotnet_diagnostic.CA1849.severity = none
389+
390+
# CA1850: Prefer static 'HashData' method over 'ComputeHash'
391+
dotnet_diagnostic.CA1850.severity = none
392+
387393
# CA2000: Dispose objects before losing scope
388394
dotnet_diagnostic.CA2000.severity = none
389395

eng/Version.Details.xml

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -166,41 +166,41 @@
166166
<Uri>https://github.com/dotnet/llvm-project</Uri>
167167
<Sha>75fa01d7eba1a283c7f2513bffa72c6bea440ac2</Sha>
168168
</Dependency>
169-
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="7.0.0-alpha.1.21556.5">
169+
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="7.0.0-alpha.1.21562.1">
170170
<Uri>https://github.com/dotnet/runtime</Uri>
171-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
171+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
172172
</Dependency>
173-
<Dependency Name="Microsoft.NETCore.DotNetHost" Version="7.0.0-alpha.1.21556.5">
173+
<Dependency Name="Microsoft.NETCore.DotNetHost" Version="7.0.0-alpha.1.21562.1">
174174
<Uri>https://github.com/dotnet/runtime</Uri>
175-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
175+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
176176
</Dependency>
177-
<Dependency Name="Microsoft.NETCore.DotNetHostPolicy" Version="7.0.0-alpha.1.21556.5">
177+
<Dependency Name="Microsoft.NETCore.DotNetHostPolicy" Version="7.0.0-alpha.1.21562.1">
178178
<Uri>https://github.com/dotnet/runtime</Uri>
179-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
179+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
180180
</Dependency>
181-
<Dependency Name="runtime.native.System.IO.Ports" Version="7.0.0-alpha.1.21556.5">
181+
<Dependency Name="runtime.native.System.IO.Ports" Version="7.0.0-alpha.1.21562.1">
182182
<Uri>https://github.com/dotnet/runtime</Uri>
183-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
183+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
184184
</Dependency>
185-
<Dependency Name="Microsoft.NETCore.ILAsm" Version="7.0.0-alpha.1.21556.5">
185+
<Dependency Name="Microsoft.NETCore.ILAsm" Version="7.0.0-alpha.1.21562.1">
186186
<Uri>https://github.com/dotnet/runtime</Uri>
187-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
187+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
188188
</Dependency>
189-
<Dependency Name="Microsoft.NET.Sdk.IL" Version="7.0.0-alpha.1.21556.5">
189+
<Dependency Name="Microsoft.NET.Sdk.IL" Version="7.0.0-alpha.1.21562.1">
190190
<Uri>https://github.com/dotnet/runtime</Uri>
191-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
191+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
192192
</Dependency>
193-
<Dependency Name="System.Text.Json" Version="7.0.0-alpha.1.21556.5">
193+
<Dependency Name="System.Text.Json" Version="7.0.0-alpha.1.21562.1">
194194
<Uri>https://github.com/dotnet/runtime</Uri>
195-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
195+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
196196
</Dependency>
197-
<Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="7.0.0-alpha.1.21556.5">
197+
<Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="7.0.0-alpha.1.21562.1">
198198
<Uri>https://github.com/dotnet/runtime</Uri>
199-
<Sha>d40f560efbf4f85ec6d59892a6c4bafa39f66d19</Sha>
199+
<Sha>35704e44e5d1b158f21512b1c1081a0e025bde3f</Sha>
200200
</Dependency>
201-
<Dependency Name="Microsoft.NET.ILLink.Tasks" Version="7.0.100-1.21528.2">
201+
<Dependency Name="Microsoft.NET.ILLink.Tasks" Version="7.0.100-1.21562.1">
202202
<Uri>https://github.com/dotnet/linker</Uri>
203-
<Sha>a5f8466cb452f50436544572e38ff5faa17e2094</Sha>
203+
<Sha>f2dd65f51f6096f25e00e0d1e4c6af0e85d41865</Sha>
204204
</Dependency>
205205
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Xunit" Version="1.0.0-prerelease.21561.1">
206206
<Uri>https://github.com/dotnet/xharness</Uri>
@@ -214,21 +214,21 @@
214214
<Uri>https://github.com/dotnet/arcade</Uri>
215215
<Sha>fecf65bedcee9036b8ba9d8d7feef5413f294914</Sha>
216216
</Dependency>
217-
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.21560.1">
217+
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.21563.1">
218218
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
219-
<Sha>764df260bfcc87cdee8edd41bbbaadfffdedab1f</Sha>
219+
<Sha>3c8cfc49b13ac020b70585ee49b2e4a1c99a7793</Sha>
220220
</Dependency>
221-
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.21560.1">
221+
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.21563.1">
222222
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
223-
<Sha>764df260bfcc87cdee8edd41bbbaadfffdedab1f</Sha>
223+
<Sha>3c8cfc49b13ac020b70585ee49b2e4a1c99a7793</Sha>
224224
</Dependency>
225-
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.21560.1">
225+
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.21563.1">
226226
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
227-
<Sha>764df260bfcc87cdee8edd41bbbaadfffdedab1f</Sha>
227+
<Sha>3c8cfc49b13ac020b70585ee49b2e4a1c99a7793</Sha>
228228
</Dependency>
229-
<Dependency Name="optimization.PGO.CoreCLR" Version="1.0.0-prerelease.21560.1">
229+
<Dependency Name="optimization.PGO.CoreCLR" Version="1.0.0-prerelease.21563.1">
230230
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
231-
<Sha>764df260bfcc87cdee8edd41bbbaadfffdedab1f</Sha>
231+
<Sha>3c8cfc49b13ac020b70585ee49b2e4a1c99a7793</Sha>
232232
</Dependency>
233233
<Dependency Name="Microsoft.DotNet.HotReload.Utils.Generator.BuildTool" Version="1.0.2-alpha.0.21558.2">
234234
<Uri>https://github.com/dotnet/hotreload-utils</Uri>

0 commit comments

Comments
 (0)