platform/upstream/dotnet/runtime.git
3 years agoMore xml docs (#57039)
Dan Moseley [Thu, 12 Aug 2021 23:49:53 +0000 (17:49 -0600)]
More xml docs (#57039)

* Update Handle docs

* Some easy xmldoc updates

* typo

* typo

* another

* Build breaks with M.IO.R.csproj

* updates

3 years agoTurn on disabled tracing tests (#56507)
John Salem [Thu, 12 Aug 2021 22:16:12 +0000 (15:16 -0700)]
Turn on disabled tracing tests (#56507)

3 years agoObsolete some System.Security.Cryptography.Pkcs APIs
Kevin Jones [Thu, 12 Aug 2021 22:13:48 +0000 (18:13 -0400)]
Obsolete some System.Security.Cryptography.Pkcs APIs

These members have never worked in .NET/.NET Core

3 years agoUpgrade SDK to 6.0.100-rc.1.21411.13 (#57143)
Viktor Hofer [Thu, 12 Aug 2021 22:09:01 +0000 (00:09 +0200)]
Upgrade SDK to 6.0.100-rc.1.21411.13 (#57143)

* Upgrade SDK to 6.0.100-rc.1.21379.2

Both the AzDO and the Core-Eng team believe believe that the issue is on our side and was caused by a thread pool regression. The assumption stands that we need to update to a newer SDK which contains the fix for the thread pool hang.

Pros:
- AzDO and Core-Eng believe that this will mitigate the AzDO feed restore issues.
Cons:
- We will upgrade to an unsigned SDK build. Arcade and other repos already did the same to workaround the issue.
- That SDK build isn’t officially released and won’t until RC 1 ships. This means that developers need to install that build via the nightly channel (from https://github.com/dotnet/installer) if they want to use their globally installed SDK in combination with dotnet/runtime.
- Even though this is a breaking change, we can’t wait for the next monthly infrastructure rollout.

* set StaticWebAssetsEnabled=false

* Remove IsSupported2 since asserting it is true when it might not be

* Try enabling the runtimeconfig generator everywhere

* Revert part of runtimeconfig parser change

* Fix System.Text.Json tests to run with trimming by setting MetadataUpdaterSupport=true.

Work around SDK issue by overwriting EnableUnsafeUTF7Encoding in System.Text.Encoding

* Disable bundling tests on Mac due to bug

See https://github.com/dotnet/runtime/issues/57242

* Make ProcessInfo tests resilient to RuntimeConfig switches on commandline

* Update global.json

Updating to 6.0.100-rc.1.21411.13

* Update to latest SDK.
Remove System.Text.Encoding.Tests workaround

* ignore runtimeconfig switches _if_ they show up

* Remove test which uses `dotnet run, which is SDK-specific

Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Co-authored-by: Andy Gocke <angocke@microsoft.com>
Co-authored-by: John Salem <josalem@microsoft.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years agoModify JSON generator to emit code with correct nullability (#57178)
Layomi Akinrinade [Thu, 12 Aug 2021 21:29:43 +0000 (14:29 -0700)]
Modify JSON generator to emit code with correct nullability (#57178)

* Modify JSON generator to emit code with correct nullability

* Use T? as arg for property getters/setters

3 years ago41431 improve performance and usage of xml serializer namespaces (#56438)
Steve Molloy [Thu, 12 Aug 2021 21:24:44 +0000 (14:24 -0700)]
41431 improve performance and usage of xml serializer namespaces (#56438)

* Allow easier creation of correctly sized dictionaries in scenarios with lots of known namespaces.

* Stop passing internal dictionaries around.

* Reduce enumerations, and immutable-ish improvements.

* PR feedback.

* Use ValueCollection directly instead of IEnumerable<> to avoid virtual calls.

* Update XmlSerializerNamespaces.cs

3 years agoDisable UsePollingFileWatcher_UseActivePolling_HasChanged_SymbolicLink_TargetChanged...
David Cantú [Thu, 12 Aug 2021 20:51:21 +0000 (13:51 -0700)]
Disable UsePollingFileWatcher_UseActivePolling_HasChanged_SymbolicLink_TargetChanged (#57299)

3 years ago[iOS][libraries] Throw PNSE for Exportable and PersistKeySet flags iOS (#57153)
Mitchell Hwang [Thu, 12 Aug 2021 20:38:59 +0000 (16:38 -0400)]
[iOS][libraries] Throw PNSE for Exportable and PersistKeySet flags iOS (#57153)

* [iOS][libraries] Throw PNSE for Exportable and PersistKeySet flags on iOS

* Fix typo

* Address feedback

* Address feedback

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[libraries][iOS][tvOS] Fix case of assembly in ActivatorTests (#57237)
Mitchell Hwang [Thu, 12 Aug 2021 20:15:57 +0000 (16:15 -0400)]
[libraries][iOS][tvOS] Fix case of assembly in ActivatorTests (#57237)

* [libraries][iOS][tvOS] Fix case of assembly in ActivatorTests

* Address test case change feedback

* Remove other activeissue

* Fix spacing

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoRevert "Minor cleanups for System.Runtime.Numerics (#53984)" (#57297)
Tanner Gooding [Thu, 12 Aug 2021 20:10:33 +0000 (13:10 -0700)]
Revert "Minor cleanups for System.Runtime.Numerics (#53984)" (#57297)

This reverts commit 65439deaef6a4f7e9184a14ce7170ae1363c89a1.

3 years agoFixed sending FIN flag with the last write. (#57284)
Marie Píchová [Thu, 12 Aug 2021 18:43:20 +0000 (20:43 +0200)]
Fixed sending FIN flag with the last write. (#57284)

3 years agoFix .NET 5 FileStream compat detection in the test utility project (#57288)
Adam Sitnik [Thu, 12 Aug 2021 18:41:26 +0000 (20:41 +0200)]
Fix .NET 5 FileStream compat detection in the test utility project (#57288)

3 years agoP2P instead of binplacing aspnetcore transport pkg (#57239)
Viktor Hofer [Thu, 12 Aug 2021 18:37:23 +0000 (20:37 +0200)]
P2P instead of binplacing aspnetcore transport pkg (#57239)

Use ProjectReferences to compose the aspnetcore tranport package.
Avoid binplacing and with that unnecessary copies which overall
simplifies the infrastructure and allows to add additional transport
packages without creating a binplace configuration for each.

This also makes sure that the dependencies are compatible with the
package's tfm.

3 years agoEmit V1 of perfmap files in ShareFramework packages (#57195)
Juan Hoyos [Thu, 12 Aug 2021 18:09:59 +0000 (11:09 -0700)]
Emit V1 of perfmap files in ShareFramework packages (#57195)

* Add perfmap v1 flag on crossgen2 invocation for SPC
* Sync target and task for CrossGen2 from SDK repo
* Consume new SFX SDK version

3 years agoAdd arch info in missing framework error (#57150)
Mateo Torres-Ruiz [Thu, 12 Aug 2021 17:53:41 +0000 (10:53 -0700)]
Add arch info in missing framework error (#57150)

* Add arch to missing framework error

* PR feedback

3 years agoRemove unnecessary parameters (#57181)
Elinor Fung [Thu, 12 Aug 2021 17:47:58 +0000 (10:47 -0700)]
Remove unnecessary parameters (#57181)

3 years agoAutomatic calculate the assembly and package version in servicing (#57158)
Anirudh Agnihotry [Thu, 12 Aug 2021 17:29:20 +0000 (10:29 -0700)]
calculate the assembly and package version in servicing (#57158)

* automatically update the assembly version

* address feedback

* move IsAspNetCoreApp to packaging.targets

* make assemblyintef pack private, update header and instructions on building the package in servicing

* fixes the allconfig leg

* update the docs

* Update docs/project/library-servicing.md

Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
3 years agoAdding warnings to make generic and static ctor (#56628)
Lakshan Fernando [Thu, 12 Aug 2021 15:32:43 +0000 (08:32 -0700)]
Adding warnings to make generic and static ctor (#56628)

* Adding warnings to make generic and static ctor

* build break fixes

* build break2

* build break3

* Suppressing DispatchProxy warnings since they are safe

* FB

* FB

* typos

3 years agoFix QPACK status decode (#57236)
Natalia Kondratyeva [Thu, 12 Aug 2021 15:05:58 +0000 (17:05 +0200)]
Fix QPACK status decode (#57236)

Fix "Literal Header Field With Name Reference" parsing for Status code. Add tests for QPACK-ed and not QPACK-ed status receiving for all status codes (except informational).

Fix QPackStaticTable.HeaderLookup to comply with spec (the order was off, so lookup didn't work correctly in some cases).

Fixes #55988

3 years agoConsume MSI manifest shortname feature in workloads (#57270)
Juan Hoyos [Thu, 12 Aug 2021 14:52:51 +0000 (07:52 -0700)]
Consume MSI manifest shortname feature in workloads (#57270)

3 years agoRemove unnecessary Sun license (#57258)
Dan Moseley [Thu, 12 Aug 2021 14:46:01 +0000 (08:46 -0600)]
Remove unnecessary Sun license (#57258)

3 years agoAdd support for building just a subset of runtime tests (#57142)
Tomáš Rylek [Thu, 12 Aug 2021 13:54:17 +0000 (15:54 +0200)]
Add support for building just a subset of runtime tests (#57142)

This change adds four new options to the runtime test build command:

1) test <test project path relative to src\tests> - build just that
one test.

2) dir <directory relative to src\tests> - build all tests in the
directory.

3) tree <directory relative to src\tests> - build all tests in the
given subtree.

4) all - use clean rebuild (i.e. don't apply incrementalism)
when building the tests.

Thanks

Tomas

3 years agoupdate Windows ARM build requirements (#57275)
Adam Sitnik [Thu, 12 Aug 2021 11:19:48 +0000 (13:19 +0200)]
update Windows ARM build requirements (#57275)

* update Windows ARM build requirements

* Apply suggestions from code review

Co-authored-by: SingleAccretion <62474226+SingleAccretion@users.noreply.github.com>
3 years agoAdd build check for System.Private.CoreLib.pdb before including it (#57161)
Mansoor Saqib [Thu, 12 Aug 2021 10:32:33 +0000 (03:32 -0700)]
Add build check for System.Private.CoreLib.pdb before including it (#57161)

- Fixes build failure with /p:DebugType=embedded (#56998)
- Author of fix: @danmoseley

3 years agoFix fgRemoveUnreachableBlocks to detect all changes (#57199)
Jakob Botsch Nielsen [Thu, 12 Aug 2021 09:09:16 +0000 (11:09 +0200)]
Fix fgRemoveUnreachableBlocks to detect all changes (#57199)

When 'removing' a BBF_DONT_REMOVE block we change it to BBJ_THROW. After
this it is possible that other blocks become unreachable, so we should
keep looking for such blocks.

In #57061 that manifested in a case where the unreachable block did not
have SSA built for it, but downstream the compiler was relying on SSA
being built.

Fix #57061

3 years ago[HTTP/3] Flush sends buffered data (#57234)
Marie Píchová [Thu, 12 Aug 2021 08:35:18 +0000 (10:35 +0200)]
[HTTP/3] Flush sends buffered data (#57234)

HTTP/3 write stream will send buffered headers if flush is called.

Fixes #56969

3 years ago[mono][jit] Fix clearing of LastError (#57127)
Vlad Brezae [Thu, 12 Aug 2021 08:22:41 +0000 (11:22 +0300)]
[mono][jit] Fix clearing of LastError (#57127)

* [mono][jit] Fix clearing of LastError

The clearing was added as part of CEE_CALL and CEE_CALLVIRT opcodes instead of CEE_CALLI which is actually used for pinvoke calls.

* Disable test

We can't enable this test on wasm due to dynamic library lookup limitation

On android we seem to have some sort of issue with the runtime tests causing the pinvokes failing to be resolved

3 years agofix IPAddress equality comparison (#57250)
Geoff Kizer [Thu, 12 Aug 2021 05:58:49 +0000 (22:58 -0700)]
fix IPAddress equality comparison (#57250)

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agoDo not perform relative code reloc on ARM in AOT (#57257)
Andrii Kurdiumov [Thu, 12 Aug 2021 04:02:13 +0000 (10:02 +0600)]
Do not perform relative code reloc on ARM in AOT (#57257)

Fixes https://github.com/dotnet/runtimelab/issues/1388

3 years agoObsolete Rfc2898DeriveBytes.CryptDeriveKey (#57002)
Kevin Jones [Thu, 12 Aug 2021 03:35:05 +0000 (23:35 -0400)]
Obsolete Rfc2898DeriveBytes.CryptDeriveKey (#57002)

* Obsolete Rfc2898DeriveBytes.CryptDeriveKey

* Apply suggestions from code review

Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
3 years ago`BigInteger`: made properties simple format. (#56821)
Takym (たかやま) [Thu, 12 Aug 2021 03:33:25 +0000 (12:33 +0900)]
`BigInteger`: made properties simple format. (#56821)

3 years agoFix C++ compile error in pal_io_common.h (#57188)
Caleb Cornett [Thu, 12 Aug 2021 03:31:57 +0000 (23:31 -0400)]
Fix C++ compile error in pal_io_common.h (#57188)

* Cast pal_io_common.h calloc call

This fixes a compilation error when compiling the header as C++.

* Style fix

Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>
Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>
3 years agoFix DI regression with FactoryCallSite (#57155)
Maryam Ariyan [Thu, 12 Aug 2021 02:51:33 +0000 (22:51 -0400)]
Fix DI regression with FactoryCallSite (#57155)

* Fix DI regression with FactoryCallSite

* - Remove event listener. rely on Debug.Fail
    - Use existing mock types

* Apply PR feedback

* Undo remove unused using

* remove extra blank linke

3 years ago[wasm] Enable InteropServices on browser-wasm (#56676)
Larry Ewing [Thu, 12 Aug 2021 01:10:32 +0000 (20:10 -0500)]
[wasm] Enable InteropServices on browser-wasm (#56676)

* Enable InteropServices tests on browser-wasm

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
3 years agoEnable `EHCONT` and `CETCOMPAT` for some binaries on Windows (#56173)
Koundinya Veluri [Thu, 12 Aug 2021 01:01:23 +0000 (18:01 -0700)]
Enable `EHCONT` and `CETCOMPAT` for some binaries on Windows (#56173)

* Enable `EHCONT` and `CETCOMPAT` for some binaries on Windows

- Followup to https://github.com/dotnet/runtime/pull/55942
- Intended to be merged into a PR that updates to use new PGO profile data collected with the above change
- Enabled `/guard:ehcont` as a linker option for EXEs and DLLs
- Enabled `/cetcompat` as a linker option for DLLs

3 years agoUse IValueTaskSource in PipeStream on Windows (#52695)
Emmanuel André [Thu, 12 Aug 2021 00:59:40 +0000 (02:59 +0200)]
Use IValueTaskSource in PipeStream on Windows (#52695)

* Use IValueTaskSource in PipeStream on Windows

* Revise implementation of IValueTaskSources

Better match implementation in RandomAccess

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoAvoid NullRef if ResolveLinkTarget returns null (#57235)
David Cantú [Thu, 12 Aug 2021 00:18:30 +0000 (17:18 -0700)]
Avoid NullRef if ResolveLinkTarget returns null (#57235)

3 years agoimprove resiliency of quic test (#57020)
Tomas Weinfurt [Thu, 12 Aug 2021 00:11:59 +0000 (17:11 -0700)]
improve resiliency of quic test (#57020)

* improve resiliency of quic test

* feedback from review

* remove debug counters

3 years agoEnsure Category attribute works well when UseSystemResourceKeys feature is turned...
Jose Perez Rodriguez [Thu, 12 Aug 2021 00:06:26 +0000 (17:06 -0700)]
Ensure Category attribute works well when UseSystemResourceKeys feature is turned on (#57227)

* Ensure Category attribute works well when UseSystemResourceKeys feature is turned on

* PR feedback and fix unit test failures

3 years agoFix JSON src-gen errors when context types are not in namespaces (#57183)
Layomi Akinrinade [Wed, 11 Aug 2021 23:38:40 +0000 (16:38 -0700)]
Fix JSON src-gen errors when context types are not in namespaces (#57183)

3 years agoFixed TypeLoadException when inspecting state machine attribute updated by ENC (...
Mike McLaughlin [Wed, 11 Aug 2021 23:34:18 +0000 (16:34 -0700)]
Fixed TypeLoadException when inspecting state machine attribute updated by ENC (#57165)

* Fixed TypeLoadException when inspecting state machine attribute updated by EnC

Issue: https://github.com/dotnet/runtime/issues/54929

Use Module::ApplyMetaData() in EditAndContinueModule::ApplyEditAndContinue to update the AvailableClassHash for reflection, etc. ensure that the new TypeRefs, AssemblyRefs and MethodDefs can be stored.

3 years agoObsolete System.Security.SecurityContext for NET6.
Kevin Jones [Wed, 11 Aug 2021 23:32:08 +0000 (19:32 -0400)]
Obsolete System.Security.SecurityContext for NET6.

3 years agowhen async operation fails with ERROR_OPERATION_ABORTED, we should ignore numBytes...
Adam Sitnik [Wed, 11 Aug 2021 23:06:12 +0000 (01:06 +0200)]
when async operation fails with ERROR_OPERATION_ABORTED, we should ignore numBytes that can be != 0 (#57229)

3 years agoSpmi replay pipeline (#56871)
Kunal Pathak [Wed, 11 Aug 2021 22:02:07 +0000 (15:02 -0700)]
Spmi replay pipeline (#56871)

* Add superpmi-replay pipeline file

* Add superpmi-replay-job.yml that downloads collection

* Moved superpmi-replay-job to right location

* make sure to have spmi collection after jit build

* annotate displayName with windows/OSX

* Make osGroup=windows

* Add helixType (if that matters)

* Add some more variables

* skip restore internal tools

* Just use build-jit-job directly

* Hardcode windows.x64.checked

* Add -download_all -download_raw options to superpmi.py

* Seperate 2 jobs

* Fix Upload artifacts

* Fix uploadAsArtifacts

* Fix to uploadAsArtifacts

* comment upload to azure storage temporarily

* Set variables inside superpmi-replay-job

* Entire pipeline

* minor fix

* Add some logging

* Fix the path

* fix file names and partition ids

* add sample download on helix machine

* fix helix-correlation-payload

* Download specific build

* Try to fix correlation payload directory

* Do not run windows x86 for now

* Log directory

* walktree instead of dir

* fix the bug

* Add workitem directory as Payload

* TEMP: Skip downloading collection during setup

* fix core_root

* Make download happen on helix

* Add windows x86

* Use -target_os and pass 1 item to helix

* Add some logging, have different work item ID

* fix the superpmi.log upload

* Fix the log location

- Also include Linux_x64

* one more fix to log_directory

* try to fix download results

* Move the matrix to proj file

* fix superpmi-replay.proj

* Cleanup

* Go back to download specific

* WorkTimeout for 5 hours

* Remove timeoutInMinutes

* fix errors related to logging

* return failed run result

* fix the appending logic

* Remove download-all and download-raw and instead add -no-progres

* do not show download progress, try fixing download file

* TO REVERT: Just try benchmark on windows x64/x86

* Use uploadAsArtifacts in build-jit-job

* Create dummy.txt in workitem directory

* create workitem_directory

* Build clrjit

* fix build-jit-job

* add dependsOn

* print params

* TO REVERT: Just run jitbuild win-x64

* minor

* move under jobParameters

* Cleanup

* review feedback

3 years agoDefine dependencies for aspnetcore transport pkg (#57228)
Viktor Hofer [Wed, 11 Aug 2021 22:00:50 +0000 (00:00 +0200)]
Define dependencies for aspnetcore transport pkg (#57228)

* Define dependencies for aspnetcore transport pkg

The AspNetCoreApp internal transport packages relies on a set of
projects already being built. This was working well before when
the transport package was built after src.proj run.

Adding dependencies via ProjectReferences to the transport package
so that those are always built in before.

In a subsequent change, the output from these P2Ps should be used
instead of relying on binplacing.

3 years agodisable parallel runs for MsQuic test (#57190)
Tomas Weinfurt [Wed, 11 Aug 2021 22:00:00 +0000 (15:00 -0700)]
disable parallel runs for MsQuic test (#57190)

3 years agoAnnotate DebuggerVisualizerAttribute to be linker safe (#57082)
Eric Erhardt [Wed, 11 Aug 2021 20:36:46 +0000 (15:36 -0500)]
Annotate DebuggerVisualizerAttribute to be linker safe (#57082)

* Annotate DebuggerVisualizerAttribute to be linker safe

Fix #49055

3 years agoSGen tests should compare against expectation not previous. (#56877)
Steve Molloy [Wed, 11 Aug 2021 20:22:18 +0000 (13:22 -0700)]
SGen tests should compare against expectation not previous. (#56877)

* SGen tests should compare against expectation, not previous.

* Use RoslynCodeTask instead of old fashioned task embedded in SerializableAssembly.

3 years ago[libraries][mobile] Skip TermInfo tests on Android, iOS, MacCatalyst, and tvOS (...
Mitchell Hwang [Wed, 11 Aug 2021 19:33:26 +0000 (15:33 -0400)]
[libraries][mobile] Skip TermInfo tests on Android, iOS, MacCatalyst, and tvOS (#57220)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoAdded some more test cases (#56856)
Julie Lee [Wed, 11 Aug 2021 17:41:32 +0000 (10:41 -0700)]
Added some more test cases (#56856)

Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
3 years ago[main] Update dependencies from 8 repositories (#56974)
dotnet-maestro[bot] [Wed, 11 Aug 2021 17:11:43 +0000 (19:11 +0200)]
[main] Update dependencies from 8 repositories (#56974)

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210805.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21404.1 -> To Version 1.0.2-alpha.0.21405.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20210805.1

Microsoft.CodeAnalysis.NetAnalyzers
 From Version 6.0.0-rc1.21378.3 -> To Version 6.0.0-rc1.21405.1

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210806.5

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21379.4 -> To Version 1.0.0-prerelease.21406.5

* Update dependencies from https://github.com/dotnet/arcade build 20210806.6

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21405.3 -> To Version 6.0.0-beta.21406.6

* Try disabling the aspnetcore StaticWebAssetsEnabled setting

* Disable more StaticWebAssets

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210806.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21404.1 -> To Version 1.0.2-alpha.0.21406.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20210806.1

Microsoft.CodeAnalysis.NetAnalyzers
 From Version 6.0.0-rc1.21378.3 -> To Version 6.0.0-rc1.21406.1

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210807.6

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21379.4 -> To Version 1.0.0-prerelease.21407.6

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210807.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21406.1 -> To Version 1.0.2-alpha.0.21407.1

* Update dependencies from https://github.com/dotnet/runtime build 20210806.5

Microsoft.NETCore.DotNetHost , Microsoft.NETCore.ILAsm , Microsoft.NETCore.DotNetHostPolicy , runtime.native.System.IO.Ports , Microsoft.NET.Sdk.IL , System.Text.Json , System.Runtime.CompilerServices.Unsafe
 From Version 6.0.0-rc.1.21401.3 -> To Version 6.0.0-rc.1.21406.5

* Update dependencies from https://github.com/dotnet/emsdk build 20210809.1

Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
 From Version 6.0.0-rc.1.21378.1 -> To Version 6.0.0-rc.1.21409.1

* Update dependencies from https://github.com/dotnet/emsdk build 20210809.2

Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
 From Version 6.0.0-rc.1.21409.1 -> To Version 6.0.0-rc.1.21409.2

* Don't upgrade SDK

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210809.2

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21379.4 -> To Version 1.0.0-prerelease.21409.2

* Update dependencies from https://github.com/dotnet/icu build 20210809.1

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-rc.1.21402.1 -> To Version 6.0.0-rc.1.21409.1

* Update dependencies from https://github.com/dotnet/llvm-project build 20210809.1

runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools
 From Version 11.1.0-alpha.1.21402.1 -> To Version 11.1.0-alpha.1.21409.1

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210809.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21404.1 -> To Version 1.0.2-alpha.0.21409.1

* Update dependencies from https://github.com/dotnet/arcade build 20210806.6

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21405.3 -> To Version 6.0.0-beta.21406.6

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210810.2

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21379.4 -> To Version 1.0.0-prerelease.21410.2

* Update dependencies from https://github.com/dotnet/icu build 20210810.2

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-rc.1.21402.1 -> To Version 6.0.0-rc.1.21410.2

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210810.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21404.1 -> To Version 1.0.2-alpha.0.21410.1

* Update dependencies from https://github.com/dotnet/runtime build 20210811.3

Microsoft.NETCore.ILAsm , Microsoft.NETCore.DotNetHostPolicy , Microsoft.NETCore.DotNetHost , runtime.native.System.IO.Ports , Microsoft.NET.Sdk.IL , System.Runtime.CompilerServices.Unsafe , System.Text.Json
 From Version 6.0.0-rc.1.21401.3 -> To Version 6.0.0-rc.1.21411.3

* Update Versions.props

* Update Version.Details.xml

* Update dependencies from https://github.com/dotnet/arcade build 20210806.6

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21405.3 -> To Version 6.0.0-beta.21406.6

* Update global.json

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
3 years agodisable TestConvertFromIntegral on arm with stress. (#57194)
Sergey Andreenko [Wed, 11 Aug 2021 16:46:59 +0000 (09:46 -0700)]
disable TestConvertFromIntegral on arm with stress. (#57194)

3 years agofix issue where HTTP/1.1 connections were not being created asynchronously (#56966)
Geoff Kizer [Wed, 11 Aug 2021 16:40:56 +0000 (09:40 -0700)]
fix issue where HTTP/1.1 connections were not being created asynchronously (#56966)

* fix issue where HTTP/1.1 connections were not being created asynchronously

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agoFix RuntimeTypeHandle.IsComObject check for __ComObject type (#57171)
Elinor Fung [Wed, 11 Aug 2021 16:25:18 +0000 (09:25 -0700)]
Fix RuntimeTypeHandle.IsComObject check for __ComObject type (#57171)

3 years ago[Mono] Update instructions for running runtime tests on Android (#57166)
Fan Yang [Wed, 11 Aug 2021 16:13:29 +0000 (12:13 -0400)]
[Mono] Update instructions for running runtime tests on Android (#57166)

* Update instructions for running runtime tests on Android

* Update docs/workflow/testing/mono/testing.md

Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
3 years agoClean up rd.xml now that DCS has been annotated (#57013)
Jose Perez Rodriguez [Wed, 11 Aug 2021 16:10:30 +0000 (09:10 -0700)]
Clean up rd.xml now that DCS has been annotated (#57013)

* Clean up rd.xml now that DCS has been annotated

* Adding annotation to keep KeyValue.GetKeyValuePair method

* Use GetMemberWithSameMetadataDefinitionAs instead

* fix typo in the type being kept

* Save constructor metadata as a workaround as opposed to using DynamicDependency

3 years agoImprove set_position to reuse buffer. (#54991)
LateApexEarlySpeed [Wed, 11 Aug 2021 15:16:07 +0000 (23:16 +0800)]
Improve set_position to reuse buffer. (#54991)

Co-authored-by: Jeff Handley <jeff.handley@microsoft.com>
Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
3 years ago[MonoAOTCompiler] accept more than one AotProfilePath (#57111)
Jonathan Peppers [Wed, 11 Aug 2021 14:56:12 +0000 (09:56 -0500)]
[MonoAOTCompiler] accept more than one AotProfilePath (#57111)

* [MonoAOTCompiler] accept more than one AotProfilePath

Fixes part of: https://github.com/dotnet/runtime/issues/56989

The Android workload needs to be able to pass in multiple AOT profiles
to the `<MonoAOTCompiler/>` MSBuild task. We plan on shipping a
default profile in the Android workload, as well as the MAUI workload.
.NET MAUI would have two profiles when using profiled AOT.

Adding `profile-only`, and then multiple `profile` arguments is
currently working in legacy Xamarin.Android:

https://github.com/xamarin/xamarin-android/blob/77895e2a03ed91fdf3729cde54501f91e7d1a36f/src/Xamarin.Android.Build.Tasks/Tasks/GetAotArguments.cs#L256-L260

Either a single property or item group can be passed in for
`AotProfilePath` now. I avoided changing the name, as it looks like it
might be used by wasm.

* Update src/tasks/AotCompilerTask/MonoAOTCompiler.cs

Co-authored-by: Ankit Jain <radical@gmail.com>
Co-authored-by: Ankit Jain <radical@gmail.com>
3 years agoImprove docs for BinaryData.ToString() (#56325)
JoshLove-msft [Wed, 11 Aug 2021 14:23:01 +0000 (07:23 -0700)]
Improve docs for BinaryData.ToString() (#56325)

* Improve docs for BinaryData.ToString()

* Apply suggestions from code review

Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
3 years agoMake sure rid specific libs projs get packaged (#57193)
Viktor Hofer [Wed, 11 Aug 2021 10:50:46 +0000 (12:50 +0200)]
Make sure rid specific libs projs get packaged (#57193)

* Make sure rid specific libs projs get packaged

RID specific runtime.*.runtime.native.System.IO.Ports projects weren't
packaged because the GeneratePackageOnBuild property wasn't set to true
for them. The property was only true during an allconfigurations build.
As these projects are only built outside of an allconfigurations build,
the GeneratePackageOnBuild property needs to account for such as well.

Also updating the NoTargets Sdk to clean the rid specific package up.

Moving the GeneratePackageOnBuild logic into a props file and set it to
false during servicing (or runtimelab) so that devs can set the property
during servicing directly in the project file if a project should be
packaged.

* Remove the GeneratePackage property

That property was intended to enabled incremental servicing but with
now using the NuGet Pack task we can just make use of the publicl
available GeneratePackageOnBuild property.

* Fix IsPackable setting

3 years agoFix regression in dictionary key serialization when registering custom primitive...
Eirik Tsarpalis [Wed, 11 Aug 2021 08:42:33 +0000 (11:42 +0300)]
Fix regression in dictionary key serialization when registering custom primitive converters. (#57138)

* Fixes regression in dictionary key serialization when registering custom primitive converters.

* reinstate debug assertion

* add test case for JsonTypeInfo overloads

* update method names

* fix sourcegen test

3 years ago[interp] Add wrapper for calli to native pointer (#57119)
Vlad Brezae [Wed, 11 Aug 2021 08:40:47 +0000 (11:40 +0300)]
[interp] Add wrapper for calli to native pointer (#57119)

If the signature has suppress gc transition attribute, we don't emit the wrapper and call native code directly.

3 years agoAnnotate unsupported APIs in System.Diagnostics.Process (#57120)
Adam Sitnik [Wed, 11 Aug 2021 08:01:26 +0000 (10:01 +0200)]
Annotate unsupported APIs in System.Diagnostics.Process (#57120)

3 years ago[MacCatalyst][libraries] Update MacCatalyst as Case Preserving for tests (#57167)
Mitchell Hwang [Wed, 11 Aug 2021 07:38:58 +0000 (03:38 -0400)]
[MacCatalyst][libraries] Update MacCatalyst as Case Preserving for tests (#57167)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoCallconv matching in PassingBy{Out,Ref}Test (#57075)
t-mustafin [Wed, 11 Aug 2021 05:43:31 +0000 (08:43 +0300)]
Callconv matching in PassingBy{Out,Ref}Test (#57075)

Signed-off-by: Timur Mustafin <t.mustafin@partner.samsung.com>
3 years agoSupport NoGC for regions (#54085)
Andrew Au [Wed, 11 Aug 2021 05:15:44 +0000 (22:15 -0700)]
Support NoGC for regions (#54085)

3 years agoadd timeout handling to QuicStream (#56060)
Tomas Weinfurt [Wed, 11 Aug 2021 04:09:47 +0000 (21:09 -0700)]
add timeout handling to QuicStream (#56060)

* add timeout handling to QuicStream

* feedback from review

* fix bad resolve

* feedback from review

3 years agoFix perms on diagnostic files (#57177)
Juan Hoyos [Wed, 11 Aug 2021 02:40:09 +0000 (19:40 -0700)]
Fix perms on diagnostic files (#57177)

3 years agoOptimize string.join for IList<string> with char separator (#56857)
John Call [Wed, 11 Aug 2021 02:15:18 +0000 (19:15 -0700)]
Optimize string.join for IList<string> with char separator (#56857)

* Improve string join for char separator

* Feedback

3 years agoRefactor ManagedWebSocket to avoid forcing Task allocations for ReceiveAsync (#56282)
Stephen Toub [Wed, 11 Aug 2021 02:14:13 +0000 (22:14 -0400)]
Refactor ManagedWebSocket to avoid forcing Task allocations for ReceiveAsync (#56282)

* Refactor ManagedWebSocket to avoid forcing Task allocations for ReceiveAsync

The ManagedWebSocket implementation today supports CloseAsyncs being issued concurrently with ReceiveAsyncs, even though CloseAsync needs to issue receives (this allowance was carried over from the .NET Framework implementation).  Currently the implementation does that by storing the last ReceiveAsync task and awaiting it in CloseAsync if there is one, but that means multiple parties may try to await the same task multiple times (the original caller of ReceiveAsync and CloseAsync), which means we can't just use a ValueTask.  So today asynchronously completing ReceiveAsyncs always use AsTask to create a Task from the returned ValueTask.  This isn't actually an additional task allocation today, as the async ValueTask builder will create a Task for the asynchronously completing operation, and then AsTask will just return that (and when it completes synchronously, there's extra code to substitute a singleton).  But once we switch to using the new pooling builder, that's no longer the case.

This PR uses an async lock as part of the ReceiveAsync implementation, with the existing async method awaiting entering that lock.  CloseAsync is then rewritten to be in terms of calling ReceiveAsync in a loop.  This also lets us remove the existing Monitor used for synchronously coordinating state between these operations, as the async lock serves that purpose as well.  Rather than using a SemaphoreSlim, since we expect zero contention in the common case, we use a simple AsyncMutex that's optimized for the zero contention case, using a single interlocked to acquire and a single interlocked to release the lock.

* Fix misleading comment

3 years agoFix wrong line info when debugging CoreLib in windbg (#57176)
Mike McLaughlin [Wed, 11 Aug 2021 01:47:23 +0000 (18:47 -0700)]
Fix wrong line info when debugging CoreLib in windbg (#57176)

Issue: https://github.com/dotnet/runtime/issues/52774

Changed couple of the DAC functions used to use the code version manager to
get the properly native code start address.

3 years agoPhysicalFileProvider: Remove second try on GetFileLinkTargetLastWriteTimeUtc (#57136)
Adam Sitnik [Wed, 11 Aug 2021 01:22:15 +0000 (03:22 +0200)]
PhysicalFileProvider: Remove second try on GetFileLinkTargetLastWriteTimeUtc  (#57136)

* return the value from 2nd try

* Do not attempt a second try and just capture the FileNotFoundException

* Update src/libraries/Microsoft.Extensions.FileProviders.Physical/src/Internal/FileSystemInfoHelper.cs

Co-authored-by: David Cantu <dacantu@microsoft.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years agoDisable 2 memory heavy array tests for 2 distros (#57108)
Dan Moseley [Wed, 11 Aug 2021 00:02:11 +0000 (18:02 -0600)]
Disable 2 memory heavy array tests for 2 distros (#57108)

* Disable 2 Array tests on 2 distros

* Update string

3 years agoClean up JSON src-gen known-type resolution (#57092)
Layomi Akinrinade [Tue, 10 Aug 2021 23:44:47 +0000 (16:44 -0700)]
Clean up JSON src-gen known-type resolution (#57092)

3 years agoUnblock publishing symbols with exclusion file. (#57162)
Juan Hoyos [Tue, 10 Aug 2021 23:38:49 +0000 (16:38 -0700)]
Unblock publishing symbols with exclusion file. (#57162)

3 years agoAvoid dereferencing target pointer (#57164)
Andrew Au [Tue, 10 Aug 2021 22:41:38 +0000 (15:41 -0700)]
Avoid dereferencing target pointer (#57164)

3 years agoPass runtime flavor args when copying native test components in CI (#57073)
Elinor Fung [Tue, 10 Aug 2021 21:58:55 +0000 (14:58 -0700)]
Pass runtime flavor args when copying native test components in CI (#57073)

* Pass runtime flavor args when copying native test components in CI
* Make test build script pass RuntimeFlavor property

3 years agoAdd runtime capability to allow updating parameters (#56599)
David Wengier [Tue, 10 Aug 2021 21:20:03 +0000 (07:20 +1000)]
Add runtime capability to allow updating parameters (#56599)

3 years agoUpdate helix version (#57084)
Kunal Pathak [Tue, 10 Aug 2021 21:15:28 +0000 (14:15 -0700)]
Update helix version (#57084)

3 years agoGet better assert failure in flaky FlushAsync_ThrowsIfWriterReaderWithException test...
Stephen Halter [Tue, 10 Aug 2021 21:03:33 +0000 (14:03 -0700)]
Get better assert failure in flaky FlushAsync_ThrowsIfWriterReaderWithException test (#57081)

3 years agoUpdate dependencies from https://github.com/mono/linker build 20210809.3 (#57124)
dotnet-maestro[bot] [Tue, 10 Aug 2021 20:57:33 +0000 (15:57 -0500)]
Update dependencies from https://github.com/mono/linker build 20210809.3 (#57124)

Microsoft.NET.ILLink.Tasks
 From Version 6.0.100-preview.6.21405.1 -> To Version 6.0.100-preview.6.21409.3

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
3 years agoSwitch to using globalconfig instead of ruleset for analyzer configuration (#57144)
Stephen Toub [Tue, 10 Aug 2021 20:15:57 +0000 (16:15 -0400)]
Switch to using globalconfig instead of ruleset for analyzer configuration (#57144)

3 years agoFix COM test failures on Windows Nano Server (#57148)
Jeremy Koritzinsky [Tue, 10 Aug 2021 19:28:59 +0000 (14:28 -0500)]
Fix COM test failures on Windows Nano Server (#57148)

* Disable ComWrappers activation tests when running on Windows Nano Server since they require reg-free COM.

* Run the test on a separate STA thread so we can get far enough in Main to detect running on nano server before we use the STA.

3 years agoDelete dead System.Net.Connections code (#57129)
Stephen Toub [Tue, 10 Aug 2021 19:11:53 +0000 (15:11 -0400)]
Delete dead System.Net.Connections code (#57129)

This never shipped, and won't in .NET 6.  If we decide to bring it back for a future release, it'll involve changes, and we can get whatever base code we want to start with from git history.  We don't need all of this to end up in an LTS branch.

3 years agoPrevent invoking property 'init' accessor from Visual Basic late binder (#57025)
Charles Stoner [Tue, 10 Aug 2021 18:46:00 +0000 (11:46 -0700)]
Prevent invoking property 'init' accessor from Visual Basic late binder (#57025)

3 years agoJIT: fix gc type for PUTARG_SPLIT codegen (#57099)
Andy Ayers [Tue, 10 Aug 2021 18:41:13 +0000 (11:41 -0700)]
JIT: fix gc type for PUTARG_SPLIT codegen (#57099)

If we need to swap registers during codegen for PUTARG_SPLIT, make sure
we use the right GC type.

Fixes #13127.

3 years agoUpdate the runtime code where iOS/MacCatalyst logic is currently used to benefit...
Buyaa Namnan [Tue, 10 Aug 2021 18:21:40 +0000 (11:21 -0700)]
Update the runtime code where iOS/MacCatalyst logic is currently used to benefit from the updated analyzer behavior (#57072)

* Update the runtime code where iOS/MacCatalyst logic is currently used to benefit from the updated analyzer behavior

3 years agoDon't log an error when a BackgroundService is canceled due to the host being stopped...
Eric Erhardt [Tue, 10 Aug 2021 15:18:28 +0000 (10:18 -0500)]
Don't log an error when a BackgroundService is canceled due to the host being stopped. (#57005)

* Don't log an error when a BackgroundService is canceled due to the host being stopped.

Fix #56032

* Add volatile to stopping field.

* Convert HostTests to use a logger instead of depending on EventSource.

* Make it obvious the test is using the default worker template

3 years agoCheck `EventSource.IsSupported` in code paths specific to thread pool worker tracking...
Koundinya Veluri [Tue, 10 Aug 2021 14:55:03 +0000 (07:55 -0700)]
Check `EventSource.IsSupported` in code paths specific to thread pool worker tracking (#56862)

Check `EventSource.IsSupported` in code paths specific to thread pool worker tracking

Fixes https://github.com/dotnet/runtime/issues/47871

3 years agogeneric math: Don't include System.Runtime reference assembly when publishing (#57071)
Aleksey Kliger (λgeek) [Tue, 10 Aug 2021 14:51:14 +0000 (10:51 -0400)]
generic math: Don't include System.Runtime reference assembly when publishing (#57071)

System.Runtime.Experimental.csproj builds a reference assembly called System.Runtime.dll that should be used when compiling, but should not be included when packaging. For normal out of tree projects this happens because the System.Runtime.Experimental.nupkg makes it evident that <PackageReference Include="System.RuntimeExperimental" /> only provides reference assembly assets. But in-tree for <ProjectReference> we have to be explicit.

Fixes https://github.com/dotnet/runtime/issues/55823
Fixes https://github.com/dotnet/runtime/issues/55767
Fixes https://github.com/dotnet/runtime/issues/56836

3 years agoHandle FileNotFound for symlinks when using polling (#56915)
David Cantú [Tue, 10 Aug 2021 14:37:24 +0000 (07:37 -0700)]
Handle FileNotFound for symlinks when using polling (#56915)

* Handle FileNotFound for symlinks when using polling

* Re-enable tests

* Use CTS instead of Task.Wait(TimeSpan) to fix issues in browser.

3 years ago[libraries][iOS][tvOS] Reenable System.Resource.ResourceManager and System.Collection...
Mitchell Hwang [Tue, 10 Aug 2021 14:21:44 +0000 (10:21 -0400)]
[libraries][iOS][tvOS] Reenable System.Resource.ResourceManager and System.Collections.Immutable tests (#56994)

* [libraries][iOS][tvOS] Reenable System.Resorce.ResourceManager.Tests tests

* [libraries][iOS][tvOS] Remove ActiveIssue from test with no test data

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoFix ServiceController test (#57116)
Dan Moseley [Tue, 10 Aug 2021 13:47:40 +0000 (07:47 -0600)]
Fix ServiceController test (#57116)

3 years agoDisable GetBitLengthLarge for 32 bit due to OOM (#57110)
Dan Moseley [Tue, 10 Aug 2021 13:18:37 +0000 (07:18 -0600)]
Disable GetBitLengthLarge for 32 bit due to OOM (#57110)

3 years agoFix analyzer, docs file packaging and don't overbuild runtime.native IO.Ports package...
Viktor Hofer [Tue, 10 Aug 2021 12:38:45 +0000 (14:38 +0200)]
Fix analyzer, docs file packaging and don't overbuild runtime.native IO.Ports packages. (#57118)

* Fix analyzer and docs file packaging

This commit fixes analyzers which were dropped from the package during
the clean-up of pkgprojs and missing documentation files.

1. Analyzers were dropped from the package because the BeforePack
   hook wasn't respected. This happens when the NuGet Pack nuget package
   is referenced which then gets imported before the packaging.targets
   file. The BeforePack property needs to be set in a props file if
   NuGet's targets file isn't used from the SDK but from its package.
2. Documentation files were dropped as the
   DefaultAllowedOutputExtensionsInPackageBuildOutputFolder property
   didn't include the .xml extension.

* Don't overbuild runtime native IO packages

3 years agoRe-add S.T.J.SourceGeneration.UnitTests to STJ sln (#57080)
Layomi Akinrinade [Tue, 10 Aug 2021 11:15:55 +0000 (04:15 -0700)]
Re-add S.T.J.SourceGeneration.UnitTests to STJ sln (#57080)

* Re-add S.T.J.SourceGeneration.UnitTests to STJ sln

* Update slngen.template.proj

Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
3 years agoApply redundant branch optimizations in post-order of dominators (#57074)
Jakob Botsch Nielsen [Tue, 10 Aug 2021 09:48:28 +0000 (11:48 +0200)]
Apply redundant branch optimizations in post-order of dominators (#57074)

In #56979 we end up with outdated dominators and make a wrong decision
based on it. To avoid this situation, visit basic blocks in post-order
of the dominator tree to ensure that we have up-to-date dominators for
each basic block.

Fix #56979

3 years agoFix performance for `File.GetLastWriteTimeUtc` on Unix (#53070)
David Karlaš [Tue, 10 Aug 2021 08:12:13 +0000 (10:12 +0200)]
Fix performance for `File.GetLastWriteTimeUtc` on Unix (#53070)

All this changes are to internal methods which are later called by other public methods which correctly call `ToLocalTime` for local time "overloads".
Performance hit is most visible for application which doesn't need to load local timezone information which takes ~30ms on 2016 MacBook Pro.

Co-authored-by: Jeff Handley <jeff.handley@microsoft.com>
3 years agoFix ThreadLocal tracking behavior (#56956)
David Wrighton [Tue, 10 Aug 2021 08:04:09 +0000 (01:04 -0700)]
Fix ThreadLocal tracking behavior (#56956)

- Before this change the trackAllValues behavior for ThreadLocal<SomeParticularType> was defined by the first instance of thread local to have its value set on the thread
  - This could lead to unpredictable memory leaks (where the value was improperly tracked even though it wasn't supposed to be) This reproduces as a memory leak with no other observable behavior
  - Or data loss, where the Values collection was missing entries.
- Change the model so that ThreadLocal<T> trackAllValues behavior is properly defined by the exact ThreadLocal<T> instance in use
- Implement by keeping track of the track all changes behavior within the IdManager

Fixes #55796

3 years agoAutomatically generate .NETStandard compat errors (#57057)
Viktor Hofer [Tue, 10 Aug 2021 05:19:06 +0000 (07:19 +0200)]
Automatically generate .NETStandard compat errors (#57057)

* Automatically generate .NETStandard compat errors

Before this change, a project had to explicitly add a
NETStandardCompatError item to declare that a given tfm range
shouldn't be supported when packaging.

Automate this logic so that projects don't need to specify the item
themselves anymore. Instead condition the NETStandardCompatError target
calcuation logic on the existence of both a .NETStandard and a
.NETCoreApp tfm.

* Update Directory.Build.targets

* Update packaging.targets

* Update eng/packaging.targets

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>